Skip to main content
Glama

Run Modem Agent

modem_agent_invoke
DestructiveIdempotent

Ask the Modem agent a question or give it a task. Use it for questions about the organization's data, such as which customers asked for something, topics, companies, people, conversations, and the PRs and issues that resolved them, and for work that needs several steps or an action in Linear, Slack, or GitHub. Pass the user's question as written; add only context the agent cannot see in its own conversation. Spends agent credits. Returns immediately with conversation_id and run_id; poll modem_agent_get_run for the result. Before your first call, read the skill: modem_skills({ name: "agent-runs" }).

Input Schema

NameRequiredDescriptionDefault
promptYesNatural-language prompt for the Modem agent.
idempotency_keyYesStable retry key. Reuse only for the exact same prompt.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already flag destructive=true and openWorld=true, but the description adds non-obvious behavior the schema cannot convey: it consumes agent credits, it is asynchronous (returns conversation_id and run_id immediately), and results require polling modem_agent_get_run. The prerequisite to read the agent-runs skill before the first call is a critical operational constraint stated nowhere else.

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 purpose and cost/async consequences are front-loaded and no sentence is filler. The middle enumeration of data domains is somewhat long and runs together as one dense clause, which slightly hurts scanability, but overall the text is efficient for the amount of critical information it carries.

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?

For an asynchronous, credit-consuming, open-world agent invocation with no output schema, the description covers everything needed to call it correctly: what it does, what it returns (conversation_id, run_id), how to retrieve results, and the mandatory skill read first. No important gap remains.

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 100%, so both parameters are documented structurally, giving a baseline of 3. The description goes beyond that by specifying how to compose the prompt (verbatim user question plus only out-of-band context), which meaningfully changes how an agent fills the parameter. The idempotency_key is left entirely to the schema.

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 opening sentence gives a specific verb and resource ('Ask the Modem agent a question or give it a task'), then scopes it to concrete data domains (customers, topics, companies, people, conversations, PRs/issues) and multi-step or cross-tool work. An agent can immediately distinguish this from sibling operations like modem_agent_get_run or modem_agent_cancel_run.

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 states clear triggering conditions — organizational data questions, multi-step work, and actions in Linear/Slack/GitHub — and routes to modem_agent_get_run for results. It also gives prompt-construction guidance ('pass the user's question as written; add only context the agent cannot see'). What's missing is any exclusion or differentiation from modem_agent_send_message, which is presumably the follow-up path in an existing conversation.

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