Exa · Multi-step research, list building, enrichment
Research run
Exa agent run (multi-step research, list building, enrichment), by Exa. Create an asynchronous Agent run. Asynchronous: returns a run id; poll exa/agent-run-get for the output, then GET /v1/runs/{run_id} shows the final price. Runs end within one hour. Price: Fixed effort: minimal $0.012, low $0.025, medium $0.10, high $0.50, xhigh $1.00 per run; auto and max metered ($0.10 per compute unit, $0.005 per search, $0.02 per email, $0.07 per phone number) up to budget.maxCostDollars (default $5, $20 for max). Billed at the cost Exa reports for the call (costDollars.total); the quote is the upper bound.
Usage based ExaResearchexa/agent-runListed
Activation pending; your agent will see it as unavailable until then.
Use this tool with your agent
Use my connected Agentik MCP server. I want to use the tool exa/agent-run (Exa agent run (multi-step research, list building, enrichment)). Call inspect_tool with {"tool_id": "exa/agent-run"} first and tell me the price before anything runs. Ask me for the inputs it needs; never invent values, IDs or file URLs. When I confirm, call run_tool with tool_id "exa/agent-run" and my inputs, follow it with get_run if it is still running, and give me the result and the price Agentik reports. If the tool is unavailable, say so and use discover_tools to propose an alternative.Show the prompt
Paste it into Claude, ChatGPT or Codex: your agent takes it from there, and shows the price before it runs.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
Accept | string | No | Set to `text/event-stream` to receive server-sent events. Options: application/json, text/event-stream. |
Exa-Beta | string | No | Comma-separated beta feature tokens for opting into experimental features. |
query | string | Yes | Natural-language question or instructions for the request. |
systemPrompt | string | No | Additional instructions that guide generated output or agent behavior. Use this for source preferences, novelty constraints, duplication constraints, or other behavior guidance. |
input | object | No | Records to process and records or entities to exclude from the answer. |
outputSchema | object | null | No | |
effort | string | No | Cost and reasoning effort preference for the run. `auto` lets Exa choose the appropriate effort. `max` is the highest-effort public beta tier for work where completeness and thoroughness matter more than latency or cost, including large list building, deep multi-source research, and criteria that are hard to verify. Options: minimal, low, medium, high, xhigh, auto, max. |
previousRunId | string | No | Agent run ID. New run IDs are returned with the `agent_run_` prefix. |
metadata | object | No | Caller-provided metadata stored with the run. |
dataSources | object[] | No | Exa Connect data providers to enable for the run. Each entry enables all of that provider's tools. |
budget | object | No | Optional per-run spending limit for the metered `auto` and `max` efforts. Runs that finish early may cost less than the limit. |
How your agent calls it
First inspect_tool for the current schema and price, then run_tool with the published example after confirming your inputs:
{
"tool_id": "exa/agent-run",
"input": {
"query": "In one sentence, what is the Model Context Protocol?",
"effort": "minimal"
}
}Price and billing
- Price
- Usage based
- Model
- Usage based
- Detail
- Billed at the cost the provider reports for the call, never above $100. Your agent sees the maximum before running.
- The provider’s price, 0% markup.
- One prepaid balance for every provider; your agent sees the price before it runs.
- Pay for measured usage; unused reservations are released.