Repository navigation
Keep MCP server instructions neutral, move tool hints into results - #633
Merged
Merged
Conversation
OpenAI's ChatGPT app review flags server instructions that spell out a chain of tool calls, while Claude's directory forbids that guidance in tool descriptions. The instructions now only orient (prefer a Builtin shortcut, follow next_steps when running: true), and the Robot listing, Robot help and lint results carry next_steps for the usual follow-up. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
A wait that returns running: true now lists the tools that keep following the Assembly, matching the server instructions. An empty Robot listing no longer suggests Robot help, since it has no Robot name to ask about. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The two app directories pull in opposite directions on cross-tool guidance:
instructions(initialize result).Tool results are neither descriptions nor instructions, so both directories accept cross-tool hints there. This PR keeps the instructions short and neutral and moves the custom-path hints into result
next_steps.What
serverInstructionsnames no tools and no sequence. It says what the server is for, that each tool's description says what it does, to prefer a dedicated Builtin shortcut tool when one fits, and thatrunning: truemeans following the result'snext_stepsinstead of creating again. Kept because the shortcut preference and the no-recreate rule add real value.transloadit_list_robotsresults now returnnext_steps: ['transloadit_get_robot_help'],transloadit_get_robot_helpreturns['transloadit_lint_assembly_instructions'](when it found a Robot), and a clean lint returns['transloadit_create_assembly']. Create already carriednext_steps; a wait that returnsrunning: truenow does too. Output schemas gained the optional field.transloadit_*tool, contains no arrow, "then" or numbered recipe, and still covers shortcuts andrunning: true. New tests check the newnext_steps, including none for an empty Robot listing. The "no description names another tool" test is unchanged.@transloadit/mcp-server.Instructions before
Instructions after
The dropped file-placement and upload guidance already lives in the
transloadit_create_assemblydescription (about its own parameters) and in itsupload_instructions/next_stepsresult.Checks
yarn workspace @transloadit/mcp-server lint:ts, rootyarn test:unit,yarn lint:changesets, biome on changed files: pass.env: 19 files, 36 tests passmcp-publisher validate packages/mcp-server/server.json: validReview
Council runs (
council.ts review) on this PR:running: truenow carriesnext_steps, an empty Robot listing no longer suggests Robot help, and a stale comment inbuiltin-shortcuts.tswas updated. Restart count: 1.next_stepscomment says "Clean instructions" while non-strict warnings also pass; left as is, the behavior is intended since warnings do not block an Assembly).Two consecutive clean runs on the final head 6f36817.
🤖 Claimed by kvz on
framework1/node-sdksince 2026-10-27 · resume:claude --resume 26eaa88e-b3fa-4cc1-bcce-0c7ff5b6bab7