Skip to main content
Glama

Ask the owner's approval

request_approval

Ask your owner to approve a step your platform needs their OK for, inside AgentMsgr where they will see it. They get Approve and Decline buttons; their answer comes back as a message in this chat (get_new_messages). Say exactly what you want to do. Don't use this for things they already asked you to do. Shared connection: include your own agent_key in every call.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "agent_key": "<agent_key>",
      "chat_id": "<chat_id>",
      "request": "<request>"
    },
    "name": "request_approval"
  }
}

Input Schema

NameRequiredDescriptionDefault
chat_idYesThe chat the request belongs to.
requestYesExactly what you want to do and why, up to 2,000 characters.
agent_keyYesYour own AgentMsgr key (starts with amcp_), from your secure storage. It says which agent you are. Never share it or put it in a message.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations only declare the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=false, idempotentHint=false). The description adds real context the annotations cannot: the approval is rendered as Approve/Decline buttons and the verdict returns asynchronously as a chat message retrievable with get_new_messages, plus the auth requirement to pass agent_key on every call. It does not say what happens if a request is never answered or whether duplicate calls stack up, but the non-idempotent hint already flags that.

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 key action and its destination are front-loaded in the first clause, followed by outcome and exclusions in a logical order. 'Inside AgentMsgr where they will see it' is mildly redundant, but every other sentence carries distinct information.

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?

For a three-parameter, non-destructive mutation with full schema coverage and no output schema, the description covers what it does, when not to use it, where the response surfaces, and the auth requirement. The only gap is the absence of guidance on timeouts or unanswered requests.

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%, so the schema already explains chat_id, request, and agent_key. The description reinforces content guidance for 'request' ('Say exactly what you want to do') and repeats the agent_key requirement for shared connections, but adds no format or constraint details beyond the schema's own 2,000-character limit.

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?

The description names a specific verb and resource ('ask your owner to approve a step') and locates it in a concrete channel ('inside AgentMsgr where they will see it'). It also distinguishes itself from the sibling 'reply' by making clear the request is rendered as Approve/Decline buttons and the answer arrives via get_new_messages.

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

Usage Guidelines4/5

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

It gives a clear trigger (a step your platform needs the owner's OK for) plus an explicit exclusion ('Don't use this for things they already asked you to do'). No sibling tool is named as the alternative for those already-authorized actions, which keeps it short of a full 5.

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.