Skip to main content
Glama

Consult

consult

Ask the Director for editing advice on the project's CURRENT composition — it NEVER writes your composition (you stay the decider). Async: returns a consultJobId; then wait_job(kind="consult", id=consultJobId, projectId=...) surfaces the advisory envelope (assessment / proposals / principles / plan). body.mode: 'advise' = the planner agent (fast, ~30s-2min) returns a plan (framing/cuts/captions/graphics intents) as GUIDANCE you re-author from — no grounded scores, nothing to adopt; 'amend' (default) = the full author→judge→refine loop (minutes) returns a graded assessment + a fix candidate you ADOPT via select_candidate with its candidateIndex. ('explore' is coming soon → use amend.) body.intent = your goal in plain English; optional body.focus (editorial|spatial|brand|caption); body.ifMatch binds to your current etag. Use advise for a fast directional nudge, amend for a grounded, adoptable fix.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyYesPOST /projects/:id/consult body.
projectIdYesprojectId (path).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
statusNoqueued = normal; failed = startup failed and the job is already terminal.
projectIdNo
streamUrlNoRelative SSE endpoint to stream this job's events.
consultJobIdNoOpaque consult job id; poll it for the advisory result.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Discloses async job behavior (returns consultJobId, poll via wait_job), mode-dependent latency (~30s-2min vs minutes), that amend yields an adoptable candidateIndex while advise yields only guidance, and the ifMatch/409 binding rule. This is well beyond the annotations, which only flag non-read-only/non-idempotent. Minor gap: no explicit statement of whether the consult job itself mutates server state, which matters given readOnlyHint=false.

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?

Front-loaded with the core constraint, and every clause carries actionable information about modes, polling, and adoption. It is dense and long, with some redundancy against the schema's own mode description, and the 'explore' handling slightly duplicates the schema entry, but it stays on-task.

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

Completeness5/5

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

For a complex async tool with nested body, enums, and an output schema present, the description covers the full lifecycle an agent needs: invoke, poll with the right job kind, and consume/adopt the result. Nothing essential is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds real operational meaning: amend is the default, what each mode returns and how to consume it, and that ifMatch binds proposals and must be applied before other edits or a 409 results. The focus/intent semantics largely mirror the schema, keeping it short of a 5.

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

Purpose5/5

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

States a specific verb+resource+scope ('Ask the Director for editing advice on the project's CURRENT composition') and immediately bounds it ('it NEVER writes your composition'), which separates it cleanly from write siblings like apply_composition and select_candidate. An agent can tell what this does without opening the schema.

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

Usage Guidelines5/5

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

Gives explicit mode selection rules ('Use advise for a fast directional nudge, amend for a grounded, adoptable fix') and even handles a not-yet-shipped mode ('explore is coming soon → use amend'). It further routes the downstream step to wait_job and select_candidate, so the when/when-not is fully specified.

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.