fix(mcp): add per-tool descriptions to DXT manifest - #480
Open
SomSamantray wants to merge 2 commits into
Open
Conversation
The DXT manifest's 23 tools were declared as bare {"name": ...} entries
with no description, so a client reading only the manifest (before a
live tools/list round-trip) got zero activation guidance. Adds a concise
description to each tool, with an explicit safety note on the tools that
move money or change customer-visible billing state.
Fixes stripe#455
Code review turned up three wording gaps: create_invoice_item lacked the same non-billing reassurance as its sibling create_invoice; finalize_invoice undersold that it can trigger an immediate charge attempt; create_refund's confirm-first clause didn't require the agent to actually restate the amount/reason rather than accept a generic yes; cancel_subscription didn't mention that cancellation can itself issue a refund/credit depending on proration.
|
|
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.
MCP clients that read the local
@stripe/mcpDXT manifest directly — for example before the extension's firsttools/listround-trip — saw 23 tool names with no indication of what each one does or how risky it is to call. An agent had no signal thatcreate_refundmoves real money, thatcancel_subscriptioncan trigger an immediate refund or credit, or thatcreate_invoiceis just a draft with no charge yet.This adds an accurate, one-to-two-sentence
descriptionto every tool intools/modelcontextprotocol/manifest.json, with an explicit safety note on the six tools that move money or change customer-visible billing state (create_payment_link,finalize_invoice,create_refund,cancel_subscription,update_subscription,update_dispute).Fixes #455.
Ran
npm run build-dxt-extension(the script that actually parses and packsmanifest.jsonvia@anthropic-ai/dxt'spackExtension— plainnpm run buildonly bundlessrc/index.tsand never touches the manifest): it reportsManifest is valid!and builds successfully. Confirmed all 23 entries still have bothnameanddescription, in the original array order.Session-settled decisions carried from planning: scope limited to
tools/modelcontextprotocol/manifest.jsononly, not issues #479/#440 (user-directed, over bundling all three into one PR); authoring the fix in the static DXT manifest rather than the hosted server's tool definitions (user-approved, over editingmcp.stripe.com's closed-source backend, which this repo can't reach).