registry / record
exa-mcp-server
Does exa-mcp-server MCP work in Claude Code and Cursor? Throne executed exa-mcp-server mcp in a single-use Firecracker microVM and replayed both recorded client behaviours. Compatibility verdict: fit. Is exa-mcp-server mcp safe? Static security scan: 4 finding(s) to review under security ruleset v1. The full per-step results, security findings, scan date, and evidence hash are below.
> throne registry exa-mcp-server
sealed
- scan id
- 8ae8ce16bfc54ac38500e5b2e893a586
- target
- exa-mcp-server
- sealed at
- 2026-06-16 18:35:47Z
- evidence hash
- sha256:336facb2e6f8b39af150f557dee97c00684b5e27cf3b944849d84415ac4c1632
initialize ok: server exa-search-server 3.2.1, negotiated protocolVersion 2025-11-25, capabilities ['completions', 'prompts', 'resources', 'tools']
supported: tools/list (2 tools), resources/list (1), prompts/list (1)
all 2 tool inputSchemas are valid JSON Schema
called 2 of 2 tools (cap 10, strategy=serial): 0 ok, 2 returned tool-level errors (expected for synthesized args)
structured error responses, connection survived, wrong_type_args: web_search_exa:accepted (returned result); web_fetch_exa:accepted (returned result); unknown_method: error(-32601); invalid_id: no response (silent), connection alive; oversized_input: accepted (returned result); recovery: accepted (returned result); cancellation: accepted (returned result); old_version: accepted old version 2024-10-07, negotiated 2024-10-07, server may have stale protocol handling
no streaming-capable tool declared by this server
read exa://tools/list (1 content blocks); subscribe capability not declared
ladder 1 overlapping web_search_exa calls: max_observed_stable_concurrency=1; all ids answered exactly once, but every call returned an error (tool-level isError result), the tool may need runtime dependencies this sandbox does not provide
transport closed and relaunched; re-handshake ok (protocolVersion 2025-11-25, first session was 2025-11-25)
initialize ok: server exa-search-server 3.2.1, negotiated protocolVersion 2025-11-25, capabilities ['completions', 'prompts', 'resources', 'tools'] [request_strategy=pipelined, connection_count=2, second connection established]
supported: tools/list (2 tools), resources/list (1), prompts/list (1); notes: connection 2 confirms 2 tools
all 2 tool inputSchemas are valid JSON Schema
called 2 of 2 tools (cap 10, strategy=pipelined): 0 ok, 2 returned tool-level errors (expected for synthesized args)
structured error responses, connection survived, wrong_type_args: web_search_exa:accepted (returned result); web_fetch_exa:accepted (returned result); unknown_method: error(-32601); invalid_id: no response (silent), connection alive; oversized_input: accepted (returned result); recovery: accepted (returned result); cancellation: accepted (returned result); old_version: accepted old version 2024-10-07, negotiated 2024-10-07, server may have stale protocol handling
no streaming-capable tool declared by this server
read exa://tools/list (1 content blocks); subscribe capability not declared
ladder 1/2/4/6 overlapping web_search_exa calls: max_observed_stable_concurrency=6; all ids answered exactly once, but every call returned an error (tool-level isError result), the tool may need runtime dependencies this sandbox does not provide
transport closed and relaunched; re-handshake ok (protocolVersion 2025-11-25, first session was 2025-11-25)
"prepare" runs on git-dependency installs and local dev (not registry installs): 'npm run build:stdio'
package/package.json8 non-local endpoint host(s) referenced in code, verify each is expected for this server's purpose: api.agnost.ai (package/smithery/stdio/index.cjs:75), api.exa.ai (package/smithery/stdio/index.cjs:80), dashboard.exa.ai (package/smithery/stdio/index.cjs:88), lodash.com (package/smithery/stdio/index.cjs:214), mcp.exa.ai (package/smithery/stdio/index.cjs:88), npms.io (package/smithery/stdio/index.cjs:19), openjsf.org (package/smithery/stdio/index.cjs:215), underscorejs.org (package/smithery/stdio/index.cjs:217)
package/smithery/stdio/index.cjs:19obsolete protocol version string '2024-10-07' in source
package/smithery/stdio/index.cjs:65obsolete protocol version string '2024-11-05' in source
package/smithery/stdio/index.cjs:65- target
- exa-mcp-server npm
- engine
- sandboxed
- claude code
- calibration: partial recorded=9,spec=0,assumed=9
- cursor
- calibration: partial recorded=11,spec=0,assumed=7
- chatgpt desktop
- calibration: unavailable recorded=0,spec=2,assumed=16
- steps exercised
- 14 of 18
- test suite
- v1.0.0
- security ruleset
- v1.0.0
- sealed at
- 2026-06-16 18:35:47Z
- evidence hash
- sha256:336facb2e6f8b39af150f557dee97c00684b5e27cf3b944849d84415ac4c1632
- valid until
- 2026-09-14
paste this in your README. it renders the live verdict and links back to this record. if a release ever breaks the verdict, the badge says so on its own.
[](https://usethrone.dev/server/exa-mcp-server)maintainer of this server? challenge this record: hello@usethrone.dev. tell us what we got wrong and we re-run it in the open.
this page renders the stored record of a real run. nothing on it is asserted without the execution that proved it.