agent_chat
Send a message to your agent (free-form conversation; it answers with its strategy, live data and tools).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| agent | Yes | Agent id or name substring | |
| message | Yes | Your message to the agent |
Send a message to your agent (free-form conversation; it answers with its strategy, live data and tools).
| Name | Required | Description | Default |
|---|---|---|---|
| agent | Yes | Agent id or name substring | |
| message | Yes | Your message to the agent |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose that the agent responds with strategy, live data, and tools, which is useful. However, it does not mention whether the chat has side effects, whether the agent can take actions, or any response limitations such as streaming or token limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence with the main action front-loaded and the explanatory context in a parenthetical. Every word earns its place, and there is no repetition of schema field names.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema, the description covers the essential context: the interaction model (free-form conversation) and the nature of the response (strategy, live data, tools). It lacks details like error behavior or conversation history, but these are minor for such a straightforward tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents both parameters well. The description adds little beyond the schema: 'your agent' maps to the `agent` parameter and 'message' to the `message` parameter, but there is no additional semantic depth such as format, constraints, or typical usage for either parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Send a message') and resource ('your agent'), and it explains the conversational nature with the parenthetical. It is clear about what the tool does, but it does not explicitly distinguish itself from sibling tools like agent_trigger or agent_status, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'free-form conversation; it answers with its strategy, live data and tools' implies a conversational use case, which helps an agent know when to use it. However, it does not explicitly state when not to use it or name alternatives such as agent_status or agent_trigger, leaving the decision partially to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Many tools serve distinct purposes (hedging, funding, agents, market data), but several overlap heavily: get_basis_regime, get_basis_signal, get_basis_history, analyze_pair_liquidity, and get_perp_arbitrage all analyze exchange spreads/basis with blurred boundaries. Similarly, close_hedged_position vs close_position and hedge_status vs list_hedge_positions vs get_positions could cause misselection without careful reading.
The set predominantly follows a verb_noun pattern (get_*, open_*, close_*, set_*, list_*, place_*) which is predictable and readable. Minor deviations exist: agent_chat, agent_trigger, and square_post break the convention, and the hedge-specific tools mix status/list/adjust naming inconsistently.
35 tools is on the heavy side and pushes past the ideal scope for a single server. Many tools are data-retrieval variants (basis history/regime/signal/liquidity) that could be consolidated, and the breadth from news to square posts to agent management makes the surface feel sprawling rather than focused.
Core workflows (hedging, basis analysis, funding arbitrage, agent interaction, position management) are well covered, but there are noticeable gaps: there is no cancel_order tool despite get_open_orders and place_order existing, no order history or trade history, and no exchange-side position listing for real user positions. The server covers its niche but leaves some common trading dead ends.