Skip to main content
Glama

Get Trading Policy

get_policy
Read-onlyIdempotent

Fetch this agent's global policy constraints plus per-live-instance HITL/AITL overrides (instance_overrides). mcp_require_confirm on policy is the default; LinkedAlgo overrides apply only to that live binding. Returns agent_id/agent_name/bound_key (the agent this key is bound to — compare with the agent the user has open in Gogi) and enabled_accounts (brokers execute_trade will actually allow).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "get_policy"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
errorNo
policyNo
messageNo
successNo
agent_idNo
bound_keyNo
agent_nameNo
enabled_accountsNo
instance_overridesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedOutput schema / properties / agent_id
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / agent_name
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / bound_key
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / enabled_accounts
      Added value: +{
      +  "type": "object"
      +}
  2. Changed2 schema fields changed
    • changedOutput schema / description
      Previous value: -"Structured Gogi result. Error responses include error and message fields."New value: +"Structured result. Error responses include error and message."
    • addedOutput schema / properties
      Added value: +{
      +  "error": {
      +    "type": "string"
      +  },
      +  "instance_overrides": {
      +    "type": "array"
      +  },
      +  "message": {
      +    "type": "string"
      +  },
      +  "policy": {
      +    "type": "object"
      +  },
      +  "success": {
      +    "type": "boolean"
      +  }
      +}
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "description": "Structured Gogi result. Error responses include error and message fields.",
      +  "type": "object"
      +}
  4. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds useful behavioral context beyond annotations: it explains that mcp_require_confirm is the default on policy, that LinkedAlgo overrides apply only to that live binding, and that bound_key should be compared against the agent open in Gogi.

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 definition is a single dense sentence with no wasted words and leads with the primary action and scope. It could be slightly easier to scan if the return-field details were separated, but it remains front-loaded and purposeful.

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

Completeness4/5

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

An output schema exists, so the description need not enumerate return fields, yet it still explains key return semantics such as bound_key comparison and enabled_accounts meaning. Combined with the annotations and output schema, the definition gives an agent enough to call and interpret the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The empty input schema is consistent with the description, which correctly focuses on return semantics rather than input arguments.

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?

States a specific verb (fetch) and resource (policy constraints), and clarifies the scope includes global policy plus per-instance overrides. It does not explicitly name a sibling alternative, but no other policy-getter exists in the sibling list, so the purpose is clear.

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

Usage Guidelines3/5

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

The description explains the meaning of the returned data and override precedence, which implies when to consult it, but it never states when to call this tool versus alternatives or any preconditions. Usage is inferable rather than explicit.

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