Zearch MCP
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Zearch MCP what are the health effects of intermittent fasting, with cited sources?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@zearchcomputer/mcp connects Claude, Cursor, VS Code and other Model Context Protocol clients to Zearch. Ask a question and you get an answer whose every paragraph was checked against the source it cites, with the exact passage Zearch read. Or check text your own model wrote against sources you already have.
Status: early. The Zearch API is not open to everyone yet.
How an answer is made
flowchart LR
Q([Question]) --> S[Search]
S --> J1[Jev selects<br/>passages]
J1 --> W[Writer drafts from<br/>those passages only]
W --> J2[Jev checks<br/>each paragraph]
J2 -->|supported| A([Cited answer])
J2 -->|not supported| E([The source<br/>passage itself])Jev is TypeSafe AI's evidence model. When a paragraph can't be supported it is cut, and when nothing survives you get the best source passage instead of a guess (answer_type: "excerpt").
Related MCP server: rbac-rag-assistant
Tools
Tool | What it does | Credits |
| Checked answer with numbered sources and the passages Jev read. Modes: | 1 · 5 · 2 · 1 · 3 · 10; follow-up 0.3 |
| Checks your text against your sources, paragraph by paragraph: pass/fail, support and attribution scores. Cite sources as | 1 |
| Reopens a run, or checks on a queued | free |
| Your recent runs (shared with the Zearch app). | free |
| Credit balance, lots and expiry, recent ledger entries. | free |
| Public price list. No key needed. | free |
Errors are never charged. A run that can only return a source passage costs half.
Progress. research streams its stages (Searching the web → Choosing the most relevant evidence → Checking each claim against its source) as MCP progress notifications, so clients that show progress show what Zearch is doing.
Answer view. In clients that support MCP Apps, research, get_run and verify render an inline card: the answer with citation chips, source cards with the excerpt Jev read, an Open button for each source, and follow-up suggestions. It follows the client's light or dark theme. Other clients get the same content as text. Set ZEARCH_UI=0 to turn it off.
Resources. zearch://runs/{id} (a run as Markdown; your recent runs are listed), zearch://pricing.
Prompts. research_brief (a cited brief from deep research), fact_check (find sources for a draft, then verify it), compare (a table with a citation in every cell).
Install
You need a Zearch API key (zk_live_…). Create one in the Zearch app under Account → API keys.
Claude Code
claude mcp add zearch --env ZEARCH_API_KEY=zk_live_your_key -- npx -y @zearchcomputer/mcpClaude Desktop
In Settings → Developer → Edit config, add:
{
"mcpServers": {
"zearch": {
"command": "npx",
"args": ["-y", "@zearchcomputer/mcp"],
"env": { "ZEARCH_API_KEY": "zk_live_your_key" }
}
}
}Cursor
.cursor/mcp.json (project) or ~/.cursor/mcp.json (global): the same mcpServers block as Claude Desktop.
VS Code
.vscode/mcp.json, which prompts for the key instead of storing it:
{
"inputs": [{ "type": "promptString", "id": "zearch-key", "description": "Zearch API key", "password": true }],
"servers": {
"zearch": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@zearchcomputer/mcp"],
"env": { "ZEARCH_API_KEY": "${input:zearch-key}" }
}
}
}Run from source
git clone https://github.com/zearchcomputer/zearch-mcp
cd zearch-mcp
npm ci && npm run buildThen use node /absolute/path/to/zearch-mcp/dist/index.js as the command in any config above, instead of npx -y @zearchcomputer/mcp.
Remote (HTTP) mode
npx -y @zearchcomputer/mcp --http --port 8787 # http://127.0.0.1:8787/mcpEvery request uses the caller's own key, sent as Authorization: Bearer zk_live_…; the server stores no keys. ZEARCH_API_KEY is used as a fallback only when the server listens on loopback, so a public deployment can't spend the operator's credits for someone else. GET /healthz reports liveness.
To serve on a public interface, bind it and list the hostnames you serve, so requests with other Host headers are refused:
npx -y @zearchcomputer/mcp --http --host 0.0.0.0 --port 8080 --allowed-hosts mcp.zearch.computerA Dockerfile is included for this.
Configuration
Variable | Default | Purpose |
| Your API key. In HTTP mode, callers send their own. | |
|
| API base URL. |
|
| Per-request timeout. Research streams get at least 180 s. |
|
| How long |
| on |
|
| Same as | |
|
| HTTP port when |
Reliability
Each
researchcall carries an idempotency key, reused across retries, so a retried request never runs or charges twice.Network failures, 5xx responses and per-minute rate limits are retried with backoff that honours
Retry-After. Out-of-credit, auth and validation errors are not retried; they come back as a tool error that says what to do next.If a research stream drops, the server reads the finished run instead of failing.
Cancelling a tool call in the client cancels the request to Zearch.
Logs go to stderr. Keys are never logged.
Development
npm ci
npm test # builds, then runs the tests against a local mock of the Zearch APITests make no network calls beyond localhost and spend no credits. The view is a single dependency-free HTML file in src/ui/answer.html.
The server is built on the MCP TypeScript SDK v2 (protocol revision 2026-07-28, with 2025-era clients still served) and talks to the Zearch API.
Security
Report vulnerabilities privately through GitHub security advisories. See the security policy.
License
Available Tools
6 toolsget_pricingZearch pricingARead-onlyIdempotent
The public Zearch price list: credits per request type, plans and top-ups. Free; no API key needed.
Inputs: no named parameters.
get_runGet a research runARead-onlyIdempotent
Fetch one of your Zearch runs by id: its answer, sources, verification and status. Use it to check on a queued Reverse engineer run, or to reopen an earlier answer. Free.
Inputs: id (required). Returns: id, mode, error, query, +11 more
get_walletCredit balanceARead-onlyIdempotent
Show the Zearch credit balance this key spends from: available and held credits, plan, credit lots and when they expire. Optionally include recent ledger entries. Free.
Inputs: before, include_entries. Returns: wallet, entries
list_runsList research runsARead-onlyIdempotent
List your recent Zearch runs, newest first. The app and the API share one history. Free. Page with starting_after.
Inputs: limit, starting_after. Returns: data, object, has_more
researchResearch with checked answersA
Ask Zearch a question. Zearch searches the web (or reads the page or site you give it), Jev selects the passages that answer it, a writer drafts from those passages only, and Jev checks every paragraph against its cited source before the answer is returned. Unsupported paragraphs are cut; if nothing survives you get the selected source passage (answer_type "excerpt").
Modes and credits: standard (1, a direct answer in seconds), deep (5, a cited report from up to 8 sources), compare (2, a side-by-side comparison), scrape (1, what one public HTTPS page says; needs url), crawl (3, up to five pages of one site; needs url), reverse (10, static analysis of how an app, repo or site works; needs url, runs on a queue and can take minutes). A follow-up with parent_id that needs no new search costs 0.3. Errors are free.
Returns the answer as Markdown with [n] citations, the sources with the exact excerpt Jev read, per-paragraph support scores, and suggested follow-ups.
Inputs: query (required), url, mode, parent_id, +1 more. Returns: id, mode, error, query, +11 more
verifyVerify text against sourcesARead-onlyIdempotent
Check text against the sources it cites, paragraph by paragraph, with Jev (the same check Zearch runs on its own answers). Cite sources inline as [1], [2]… in the order you list them. Use it to gate output from your own model before a person sees it.
Limits: text up to 8,000 characters; 1 to 8 sources of up to 20,000 characters each. Costs 1 credit, charged only when the check completes. Returns pass/fail per paragraph with support and attribution probabilities.
Inputs: text (required), sources (required), question. Returns: model, object, passed, threshold, +1 more
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
The six tools mostly target distinct operations: research answers questions, verify checks third-party text, get_run/list_runs retrieve history, and get_wallet/get_pricing split private balance vs. public price list. The main wrinkle is that research folds six very different modes (scrape, crawl, compare, deep, reverse) into one tool with a mode argument, so an agent must read parameters rather than pick a tool. Wallet vs. pricing is a mild adjacency but the descriptions clearly separate them.
Four tools follow a clean verb_noun pattern (get_run, list_runs, get_wallet, get_pricing) with plural nouns on list/read endpoints. The two core tools, research and verify, are bare verbs with no object noun, which is a minor stylistic break but still readable and consistent with each other.
Six tools is well-scoped for a search-and-verification service: one entry point, one checker, two history readers, two billing readers. Nothing appears redundant or missing at the count level, and the heavy mode multiplexing is handled inside research rather than by exploding the tool list.
The lifecycle is largely covered: submit a job, verify text, fetch a single run, list history, and inspect balance/pricing. Minor gaps remain — no cancel or delete for queued or stale runs (notable given reverse runs can take minutes and hold 10 credits), and follow-ups are only expressible via the parent_id parameter on research rather than a dedicated operation.
Maintenance
Related MCP Connectors
Research briefs and file-based research tasks via MCP. Compare sources, check citations, or analyze authorized data and retrieve reports or files. RigorMed OAuth and available credits are required for task execution.
Read-only hosted MCP over CanonicAI's cited Answers corpus on canonicai.com.
Live AI-native web search with citations. One tool for every MCP client. Flat per-request pricing.
Start cited deep-research runs, read reports, search your source vault, and verify citations.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables MCP clients to interact with a local-first research knowledge workbench, supporting literature search, evidence-grounded Q&A, and reference export.2AGPL 3.0
- FlicenseNot gradedqualityBmaintenanceEnables MCP clients to ask plain-language questions and receive answers grounded only in documents the configured role is cleared to read, with the same access-controlled tools available across any client.-
- FlicenseNot gradedqualityBmaintenanceEnables retrieval-augmented question answering with source-grounded citations, document retrieval, and idempotent ingestion through MCP tools.-
- FlicenseNot gradedqualityCmaintenanceEnables MCP-compatible clients to retrieve relevant document chunks and fact-check generated answers against context, classifying them as fully supported, partially supported, or unsupported.-