Skip to main content
Glama

Extract a public catalog

submit_catalog_job
Idempotent

Experimental structured extraction from one to six nonconfidential product records supplied as text. No URL fetching or OCR. Check catalog_extraction.available first. One task unit, bounded retries; retain idempotency_key. Output includes JSON/CSV with source quotes and null for missing data. Schema and source matching are checked, semantic correctness is not guaranteed. Poll get_studio_job.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "consent": "<consent>",
      "idempotency_key": "<idempotency_key>",
      "extraction": "<extraction>"
    },
    "name": "submit_catalog_job"
  }
}

Input Schema

NameRequiredDescriptionDefault
consentYes
extractionYes
access_tokenNo
idempotency_keyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=false), yet the description still adds real value: experimental status, bounded retries, 'retain idempotency_key', output shape (JSON/CSV with source quotes, null for missing data), and a candid limitation that schema/source matching is checked but semantic correctness is not guaranteed. Only the failure/timeout behavior and what happens after retries are exhausted remain unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Six short sentences, each carrying distinct information, with the prerequisite check and the scope limits front-loaded. The telegraphic fragments ('No URL fetching or OCR.' 'Poll get_studio_job.') read tersely but are efficient rather than wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an asynchronous one-shot submission with nested parameters, no output schema and no schema descriptions, the definition supplies the essential lifecycle (availability check, submit, poll get_studio_job), idempotency handling, and output expectations. The gaps are the unexplained 'consent' requirement and access_token/auth handling, which matter for a tool with a mandatory consent gate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry parameter meaning, and it only partly does: it conveys the 1-6 record bound, that records are text rather than URLs, nonconfidentiality, and that idempotency_key should be retained. It says nothing about the mandatory 'consent' flag (const true), the optional access_token, or the 2000-character text limit, leaving several required inputs semantically unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: 'structured extraction from one to six nonconfidential product records supplied as text', plus explicit exclusions ('No URL fetching or OCR') and a scope bound (1-6 records). It distinguishes itself from the generic job-submission siblings (submit_compute_job, submit_chat_job, submit_image_job) by naming the task type, though it never explicitly contrasts itself with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a concrete prerequisite ('Check catalog_extraction.available first') and a concrete follow-up ('Poll get_studio_job'), and the 'No URL fetching or OCR' line implicitly states when this tool is not appropriate. It stops short of naming an alternative tool for URL/OCR cases or stating what to do if availability is false.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources