Skip to main content
Glama

Telegram intake: Recognize capture

intake_recognize

Recognise captures into text ON THE CALLER'S OWN OpenAI KEY (it costs them money — say how many files and minutes before running a big batch): speech → transcript with timestamps, PDF/DOCX → text, photo → OCR; then a clean-up pass with their client names, a summary and the agreements. Pass 'capture_ids', a 'session', or the same filters as intake_list_captures. 'force' re-runs ready ones. Returns what was queued and why the rest was skipped (no key, not stored, nothing to recognise). Results arrive within minutes — read them with intake_get_capture. CONFIRMATION: this tool is PROPOSED, never performed directly. You get status='confirmation_required' with an action_id and a plan_token, and the write happens only after confirm_action.

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": "intake_recognize"
  }
}

Input Schema

NameRequiredDescriptionDefault
forceNo
labelNoA client label id, or its name/alias.
mediaNo
sinceNo
untilNo
sessionNo
capture_idsNo
label_statusNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare the mutation profile; the description adds materially more: the operation bills the caller's own OpenAI key, results land 'within minutes', skipped items are reported with reasons (no key, not stored, nothing to recognise), and the call never writes directly but returns status='confirmation_required' with an action_id and plan_token until confirm_action. That is a genuine behavioral disclosure beyond structured fields.

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?

Purpose, cost warning, and conversion modes are front-loaded, and the confirmation block is cleanly separated at the end. The middle is densely packed into long semicolon-chained clauses, and the capitalized emphasis is heavy, but nearly every sentence carries operational information.

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 eight parameters, no output schema, and a two-step confirmation flow, this is a fairly complex tool, yet the description covers targeting, cost, skipping behavior, return shape at a high level, result retrieval, and the confirmation handshake. Nothing an agent needs in order to call it correctly is missing.

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?

Schema coverage is only 13%, so the description must compensate, and it largely does: it explains capture_ids, session, force, and that the remaining selectors mirror intake_list_captures filters, which maps onto label, media, since, until, and label_status. It stops short of giving formats for media/since/until or clarifying what 'ready ones' means for force, leaving some semantics to the sibling reference.

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 opens with a specific verb and resource ('Recognise captures into text') and immediately enumerates the conversion modes: speech to timestamped transcript, PDF/DOCX to text, photo OCR, plus a clean-up pass. It also distinguishes itself from intake_get_capture (which reads results) and positions the confirmation gateway (confirm_action), so an agent can identify it without opening siblings.

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?

It states the three targeting modes (explicit 'capture_ids', a 'session', or 'the same filters as intake_list_captures'), explains what 'force' does, routes result-reading to intake_get_capture, and warns to announce cost before a big batch. The confirmation-only path is also spelled out, so there is little left to infer.

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