THRONE
See report Verify server

registry / record

chroma-mcp

uvx / sealed 2026-06-16 / No. b1f27b1b

Does chroma-mcp MCP work in Claude Code and Cursor? Throne executed chroma-mcp mcp in a single-use Firecracker microVM and replayed both recorded client behaviours. Compatibility verdict: not fit. Is chroma-mcp mcp safe? Static security scan: no findings under security ruleset v1. The full per-step results, security findings, scan date, and evidence hash are below.

> throne registry chroma-mcp sealed
receiptsealed evidence
scan id
b1f27b1bb3254da1adaf267a39618bbc
target
uvx chroma-mcp
sealed at
2026-06-16 19:03:54Z
evidence hash
sha256:806b2103b8fded75cb1c445941108484af7a414afa9970d1e63a8cc3f7c86353
01connectPASS1.1s

initialize ok: server chroma 1.6.0, negotiated protocolVersion 2024-11-05, capabilities ['experimental', 'prompts', 'resources', 'tools']

02discoverPASS11ms

supported: tools/list (13 tools), resources/list (0), prompts/list (0)

03validate_schemasPASS31ms

all 13 tool inputSchemas are valid JSON Schema

04smoke_test_toolsPASS53ms

called 10 of 10 tools (cap 10, strategy=serial): 7 ok, 3 returned tool-level errors (expected for synthesized args)

05error_handlingFAIL12.2s

server process died during error probes, wrong_type_args: chroma_list_collections:accepted (returned result); chroma_create_collection:accepted (returned result); chroma_peek_collection:accepted (returned result); chroma_get_collection_info:accepted (returned result); chroma_get_collection_count:accepted (returned result); unknown_method: no response (silent), connection alive; invalid_id: unexpected: {'_unparseable': 'Successfully initialized Chroma client'}; oversized_input: died (stdin pipe closed); recovery: died (stdin pipe closed); cancellation: died (stdin pipe closed during cancel); old_version: accepted old version 2024-10-07, negotiated 2024-11-05, server may have stale protocol handling

06streamingNOT_APPLICABLE0ms

no streaming-capable tool declared by this server

07resource_lifecycleNOT_APPLICABLE3ms

server declares resources but lists none

08concurrent_callsPASS3ms

ladder 1 overlapping chroma_list_collections calls: max_observed_stable_concurrency=1; all ids answered exactly once at every level

09reconnectPASS3.1s

transport closed and relaunched; re-handshake ok (protocolVersion 2024-11-05, first session was 2024-11-05)

01connectPASS2.1s

initialize ok: server chroma 1.6.0, negotiated protocolVersion 2024-11-05, capabilities ['experimental', 'prompts', 'resources', 'tools'] [request_strategy=pipelined, connection_count=2, second connection established]

02discoverPASS17ms

supported: tools/list (13 tools), resources/list (0), prompts/list (0); notes: connection 2 confirms 13 tools

03validate_schemasPASS30ms

all 13 tool inputSchemas are valid JSON Schema

04smoke_test_toolsPASS43ms

called 10 of 10 tools (cap 10, strategy=pipelined): 7 ok, 3 returned tool-level errors (expected for synthesized args)

05error_handlingFAIL12.2s

server process died during error probes, wrong_type_args: chroma_list_collections:accepted (returned result); chroma_create_collection:accepted (returned result); chroma_peek_collection:accepted (returned result); chroma_get_collection_info:accepted (returned result); chroma_get_collection_count:accepted (returned result); unknown_method: no response (silent), connection alive; invalid_id: unexpected: {'_unparseable': 'Successfully initialized Chroma client'}; oversized_input: died (stdin pipe closed); recovery: died (stdin pipe closed); cancellation: died (stdin pipe closed during cancel); old_version: accepted old version 2024-10-07, negotiated 2024-11-05, server may have stale protocol handling

06streamingNOT_APPLICABLE0ms

no streaming-capable tool declared by this server

07resource_lifecycleNOT_APPLICABLE5ms

server declares resources but lists none

08concurrent_callsPASS27ms

ladder 1/2/4/6 overlapping chroma_list_collections calls: max_observed_stable_concurrency=6; all ids answered exactly once at every level

09reconnectPASS6.2s

transport closed and relaunched; re-handshake ok (protocolVersion 2024-11-05, first session was 2024-11-05)

chatgpt desktop calibratingemulation profile pending real-traffic captureCOMING SOON
No findings under security ruleset v1
VERDICT: NOT FIT14 of 18 steps exercised across 2 clientsSANDBOXED RUN, submitted server executed in a disposable microVM, compatibility: 2 fail / 0 warn (14 of 18 steps exercised across 2 clients) / security: clean, 0 findingssealed by THRONE / No. b1f27b1b / 2026-06-16
scopeattestation tuple
target
uvx chroma-mcp pypi
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 19:03:54Z
evidence hash
sha256:806b2103b8fded75cb1c445941108484af7a414afa9970d1e63a8cc3f7c86353
valid until
2026-09-14
executed in a disposable microVM, created for this scan and destroyed after it. nothing outlives a run.

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.