Skip to main content
Glama

Preview executing a recommendation

execute_recommendation

Preview executing one of YOUR pending recommendations from YOUR agent wallet (requires the api:trade scope). This does NOT place anything. It stages the same plan the Gambit app's Execute button runs — side, size and notional from the recommendation, its take-profit / stop-loss orders, leverage (default 1x, capped at the API ceiling) — as a proposal in the user's AGENT deposit wallet (never the main wallet), and returns proposal_id, an expiry, the plan, notes, and confirm_echo. Present the full preview to the human user. Only after their explicit approval, call confirm_trade with this proposal_id and the confirm_echo asset/side/size_usd; NEVER call confirm_trade autonomously or chain it automatically after this tool. recommendation_id is a list_recommendations(status=pending) id. Advisory rows (every generate_recommendation result, and the recommendation an evaluate_opportunity answer from Gambit's view records) answer 409 advisory_not_executable: record a response with respond_to_recommendation, or size a separate propose_trade. A recommendation that is not yours answers 404. A stale or invalidated recommendation answers 409 recommendation_not_executable.

Input Schema

NameRequiredDescriptionDefault
leverageNo
slippage_bpsNo
recommendation_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare the generic safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false); the description adds what those annotations cannot: it stages rather than places an order, targets the agent deposit wallet and never the main wallet, requires the api:trade scope, caps leverage at the API ceiling, and enumerates the returned fields including confirm_echo. The staged-proposal behavior is fully consistent with a non-readOnly, non-destructive, non-idempotent annotation set.

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?

The critical facts are front-loaded (preview, no order placed, human approval required) before the error taxonomy, and each sentence carries distinct operational content. It is dense and long, but almost none of it is filler, so it stays readable despite the volume.

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?

With no output schema, the description still enumerates the return payload (proposal_id, expiry, plan, notes, confirm_echo), and it covers scope requirements, wallet targeting, leverage capping, and the full 404/409 error taxonomy. An agent has everything needed to invoke it correctly and to route the result into confirm_trade.

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. It documents recommendation_id's provenance and leverage's default (1x) and ceiling, but slippage_bps is never mentioned anywhere, and leverage's interaction with the recommendation's own leverage is only implied. Partial compensation for a total schema-coverage gap.

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 and resource (preview-execute a pending recommendation from the agent wallet) and immediately disambiguates against the sibling that actually executes (confirm_trade). The name's 'execute' is reconciled with the title's 'preview' by the explicit 'This does NOT place anything', so an agent can tell it apart from confirm_trade/propose_trade/respond_to_recommendation without opening any 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 an explicit when-to-use condition (recommendation_id is a list_recommendations(status=pending) id from YOUR agent wallet), an explicit when-not plus alternatives (advisory rows -> respond_to_recommendation or propose_trade), and a hard sequencing rule (only call confirm_trade after explicit human approval, never autonomously). It also maps 404 (not yours) and 409 (stale/invalidated) failure paths to distinct meanings.

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