RAKLEdocs
MCP

Tools

The three Orakle MCP tools — get_pricing, submit_pricing_job, get_job_result.

View as Markdown

Three tools wrap the REST API job system; read access is per-user. geography accepts US, GB, CA, AU, AE; default US.

Sync vs async

get_pricing blocks. submit_pricing_job + get_job_result are the async pair. Failures return as isError: true tool results, not JSON-RPC errors.

get_pricing

Submits a job and waits. Not read-only; open-world.

Input

Prop

Type

Output — pricing envelope:

{
  status: string;
  job_id?: string;
  result?: Record<string, unknown>;
  error?: string;
}

Example

// call
{ "name": "get_pricing", "arguments": {
  "query": "iPhone 15 Pro 128GB Grade B unlocked", "geography": "US" } }

// result (structuredContent)
{
  "status": "completed",
  "job_id": "job_01Hh...",
  "result": { "fused_distribution": { "quantiles": { "p50": 612.0 } } }
}

submit_pricing_job

Async submit. Returns a job_id to poll via get_job_result. Not read-only; open-world.

Input

Prop

Type

Output

{ job_id: string }

Example

// call
{ "name": "submit_pricing_job", "arguments": {
  "query": "Galaxy S24 256GB Grade A unlocked", "geography": "GB" } }

// result (structuredContent)
{ "job_id": "job_01HJ..." }

get_job_result

Status and result of a submitted job. Read-only.

Input

Prop

Type

Output — same envelope as get_pricing:

{
  status: string;
  job_id?: string;
  result?: Record<string, unknown>;
  error?: string;
}

Example

// call
{ "name": "get_job_result", "arguments": { "job_id": "job_01HJ..." } }

// result while running (structuredContent)
{ "status": "processing", "job_id": "job_01HJ..." }

// result once terminal
{
  "status": "completed",
  "job_id": "job_01HJ...",
  "result": { "fused_distribution": { "quantiles": { "p50": 498.0 } } }
}

Errors are tool results

Failures return isError: true, not JSON-RPC errors. Check isError (or a non-completed status with an error field) before trusting result.