A declared read
true describes an operation as non-mutating. It does not install a sandbox. With an unknown or untrusted implementation, inspect how the tool is enforced rather than relying on the label.
RESOLVE / MCP / TOOL CONTRACTS
Not just available.
Understood. Checked.
Find out what the assistant can actually call, which arguments matter and what counts as evidence. Read a catalogue before trusting an action.
Read the current catalogue, not a remembered list of functions.
The diagram illustrates a review process. It does not query a server or run scripts.
“MCP connected” and “this operation works” are different statements.
A tool is a named operation exposed by an MCP server. The client discovers these operations through tools/list and invokes a chosen one through tools/call. A server’s catalogue and the functions actually exposed to a model need not be identical, so keep the source of your list visible.[5]
In the client, identify the exact server connection. Native Resolve MCP and a separately installed bridge may use different tool names. Do not mix their catalogues.
Open the server/tool view or relevant logs where your client provides them. A model’s prose summary is a useful navigation aid, not proof of an exact raw server response.
If a response carries nextCursor, retrieve the next page in the client. Even an empty string is a cursor. Never replace it with a guessed page number or infer the total from one fragment.
Note the server and client builds, Resolve build and edition, operating system, time and reported protocol revision. Refresh the catalogue after changing that environment; do not assume an old screenshot is still accurate.
Catalogue pagination is defined by MCP; the review sequence above is our working checklist.[9]
A familiar display name is not enough. Read the fields that control the actual request.
| Field | What it tells you | What to check |
|---|---|---|
name / title | Machine name versus optional display title. | Call the exact name belonging to the right server; do not translate it or substitute the title. |
description | The server’s explanation of the operation. | Which object is affected? Is the operation a read, an import, a mutation or a generic executor? An attractive description is not a security guarantee. |
inputSchema | The shape of the arguments. | Types, required fields, permitted values and extra-property rules. Clarify frames versus seconds, clip-relative versus timeline-relative positions and target selection. |
outputSchema | An optional schema for structured results. | What should be returned, and can it identify the target? Schema-shaped output alone does not prove factual correctness. |
annotations | Optional behavioural hints. | Treat them as claims from the server. Absence is not a declaration of read-only access. |
Tool fields and behavioural annotations:[8][5]
A property listed in properties may still be optional. required declares mandatory keys at that schema level; additionalProperties controls unlisted keys. References, composition and conditional schemas may add constraints. A small summary cannot replace reading the complete schema.[12]
“Move by 24” is incomplete. Twenty-four frames, seconds, or an absolute timeline position? Resolve that before approval.
A reading tool, not an execution console. The built-in examples are deliberately named example.*.
TOOLS/LIST · LOCAL READER
Paste one redacted tools/list result or use an example. The component parses text in your browser: it does not execute tools, fetch schema references or save input automatically. Do not paste keys, environment variables, personal data or private paths.
Accepts { tools: [...] } or a JSON-RPC response with result.tools. Limits: 131,072 characters, 200 records, 40 nesting levels. A fragment is not necessarily the complete catalogue.0 / 131,072
true describes an operation as non-mutating. It does not install a sandbox. With an unknown or untrusted implementation, inspect how the tool is enforced rather than relying on the label.
false is not a promise of no side effects. An additive change can create a duplicate, consume storage or add an unwanted object. Review whether any mutation is acceptable for the current exercise.
The hint concerns repeated identical calls, not an automatic undo. After a timeout or lost reply, inspect the actual state before repeating a write; do not guess that the first attempt did nothing.
openWorldHint describes whether a tool can interact beyond a closed domain. It is not a complete privacy policy for the model, client or whole workflow. In this reader, missing hints remain “not supplied”; the interface does not turn protocol defaults into observed facts about your server.[8]
This is a verification matrix, not a promise that every listed operation exists in native Resolve MCP.
| Task | What must be established | Independent evidence |
|---|---|---|
| Read project / timeline | An operation or reviewed script that reads the intended current object without choosing a different one. | Names and selection match the Resolve interface; absence is reported rather than replaced with a guess. |
| Inspect Media Pool | The scope of the report and a way to distinguish an empty result, unavailable data and a failed query. | Compare the same bin and items. File names alone do not prove that media is online or visually correct. |
| Change clips or markers | A supported operation, exact target, coordinate system, allowed range and a disposable test copy. | Check the right clip or marker, position and affected tracks. Review neighbouring edits as well. |
| Prepare or launch a render | Separate reading settings, adding a queue job and starting it. Define output location and overwrite rules. | A queued job is not a rendered file. Inspect the actual output and play it back before accepting delivery. |
| Work with Color, Fusion or Fairlight | Evidence for the specific parameter or operation in this build and server. A broad “AI editing” label is insufficient. | Check the exact control or node, then inspect the image or listen to the sound. Record unavailable controls as limitations. |
We do not claim a fixed native tool count or universal support for every editing action. A generic execution tool may cover multiple API operations; a missing dedicated tool does not alone prove that the task is impossible. Investigate the exact implementation.
The request reached a handler.
Read the content and error status.
Inspect the intended object in Resolve.
Watch, listen and check the actual file.
Separate a JSON-RPC error from a tool result marked isError: true. Read the returned content even when the transport succeeded. structuredContent is server-produced data, not the assistant’s conclusion; outputSchema, when present, helps describe its format. None of these fields independently establishes that the intended edit was correct.[5]
For a missing reply, keep the outcome “unknown” until you inspect the state. Do not treat a timeout as a confirmed failure or an error-free response as a finished render. If a tool returns a task or an intermediate status, follow that implementation’s documented completion mechanism before accepting the result.
Use the connection guide first. This sequence is a local acceptance procedure, not a claim that we ran your installation.
Open a disposable project with a timeline selected. Note both names yourself. Avoid confidential clip names and client material. Do not change the active project during the check.
Ask only for the open project name and selected timeline name, without switching or creating either. Require the planned tool names and any script before execution; approve only the bounded read.
The assistant uses the real catalogue, identifies a suitable operation or reviewed script and reports absent objects. It does not invent an operation because a tutorial mentioned it.
Compare the returned names with Resolve yourself. Inspect the tool result and errors, not only the assistant’s prose. Record which operation produced each piece of information.
Stop if the operation is unavailable, selection is ambiguous or the proposed code performs other work. A successful name check confirms that observation only; it does not certify editing, colour correction or rendering.
A blank review sheet is more useful than a universal “supported” badge. Complete it after the observation, without secrets.
The downloaded catalogue review and this worksheet are documentation, not runnable server configurations. Keep confidential reports outside public repositories.
In the actual catalogue for the installed server, subject to what the client exposes. This article does not publish a fixed count or substitute fictional examples for Blackmagic’s tool names. Record the source, versions and all catalogue pages.[5][9]
No. It is a behavioural hint, not an enforced permission. Review the server, implementation, target and arguments. Do not approve a sensitive call solely because of an annotation.[8]
Not necessarily. A generic executor may expose the operation through a script. Verify the actual API operation and inspect the code. Conversely, a generic tool name alone does not prove support for any particular marker operation.
No. It checked a limited structural shape. It did not connect to the server, validate all schema rules, test arguments, verify permissions or execute a Resolve operation. Exported reviews explicitly retain those unverified statuses.
It signals more pages, even when its value is an empty string. The local reader does not request those pages. Absence of a cursor in one pasted result does not establish that all earlier pages were included.[9]
No. That revision identifies the protocol references used for this article. Installed clients and servers can use another supported revision. Check the version actually reported by your client; do not assemble mixed-version request packets from examples.[11]
REFERENCE DESK
Sources checked on 5 October 2026. Protocol references use revision 2026-07-28; that is not a claim about the protocol used by your Resolve server. The catalogue examples are fictional. No live Resolve or AI-client session was used.
The tools/list catalogue, input schemas, calls, errors and user control.
Behaviour hints, their meaning and trust limits; tool definition fields.
nextCursor and partial catalogues. An empty cursor string is not the end of the list.
A separate developer tool for inspecting a server and its interfaces.
Protocol revision differences. An article date does not determine an installed server’s protocol version.
Object properties and required fields; a declared property is not automatically required.
Trust boundaries, local servers and broad permission risks.