Skip to main content
Glama
Pit Officer

Pit Officer

Official

create_trading_connection

Link a broker or exchange account using write-only credentials so an AI agent can trade while Pit Officer's limits check every order first.

Instructions

Create a trading connection with write-only credentials. The create is refused with loosening_refused, as a new connection widens what can be sent. Mutates Officer control-plane config; protected and disabled by default.

Input Schema

NameRequiredDescriptionDefault
idNoOptional connection id; omitted lets the store assign one
modeYespaper or live
labelYesDisplay label for the trading connection
enabledYesRequired: whether the trading connection is enabled
providerYesTrading provider type; e.g. alpaca, binance, ib or etoro
credentialsYesWrite-only provider credential object; Alpaca and Binance both use {apiKey, apiSecret} (Binance: an HMAC key pair); IB uses {host, port, clientId?}; eToro uses {apiKey, userKey}

Output Schema

NameRequiredDescriptionDefault
connectionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does meaningful work: it discloses that credentials are write-only, that the operation mutates control-plane config, and that a create may be refused with the specific error code loosening_refused because it widens outbound capability. Ambiguity remains around 'protected and disabled by default' – unclear whether the tool, the connection, or both are disabled – which conflicts with the required 'enabled' parameter.

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?

Three dense sentences with the core action front-loaded and no filler. The middle sentence ('The create is refused with loosening_refused, as a new connection widens what can be sent') is grammatically awkward and slightly harder to parse than necessary.

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

Completeness3/5

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

Output schema exists and the params are fully documented, so the main missing piece is prerequisite/permission context and disambiguation of 'disabled by default' versus the required 'enabled' flag. For a mutation tool with no annotations, that gap matters more than it would elsewhere.

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 100% and already documents provider values, credential shapes per provider, and mode. The description only restates 'write-only credentials', adding essentially no parameter semantics beyond the schema, so baseline 3 applies.

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

Purpose4/5

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

Specific verb+resource: 'Create a trading connection'. It distinguishes itself from update_trading_connection by being the creation path and adds that credentials are write-only, but it doesn't explicitly contrast with the sibling update/set_trading_connection_enabled tools.

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

Usage Guidelines2/5

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

No explicit when-to-use or when-not guidance, and no mention of the obvious alternative (update_trading_connection) for an existing connection. The 'protected and disabled by default' note hints at prerequisites but leaves the agent to infer them.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.