io.github.cyanheads/chembl-mcp-server
Link compounds to protein targets, rank bioactivity, and look up drug mechanisms and indications.
The current version, v0.5.0, was published to the official MCP registry on 2026-10-29. It is distributed as @cyanheads/chembl-mcp-server on npm and as a hosted remote over streamable-http, filed under Other by this index, and declares 15 environment variables. Removals and unreachable sources are measured across every server this index tracks, contract drift across the servers that answer in consecutive snapshots; the index's current counts put this record in context.
Using io.github.cyanheads/chembl-mcp-server in Claude, Cursor, Gemini CLI, Cline, or Zed?
MCP tool contracts can change remotely with no version bump. The mcpindex gate pins each contract and HOLDs the call when it drifts-before your agent acts. Zero credentials. This is not the package install for this server itself (use Install this server for that).
Rewrites your MCP host config so each server launches behind the gate. Inspect first: curl -fsSL https://mcpindex.ai/install.sh | less
uv tool install mcpindex-gate && mcpindex-config-wireSemantic screen found no manipulation pattern in the description. Conformance probe not yet run.
mcpindex.integrity.descriptionpassINFOevidence“Tool links compounds to protein targets and ranks bioactivity.”via static_description
- - Semantic screen only - the deterministic conformance probe has not run on this server
- - Confidence is reported but not yet calibrated (v1)
- - Screen reads the tool description, not the live behavior
- - advisory
- - registry description only no input schema
- - screen model 8b
- - Still current: the description we screened is unchanged, re-checked against the registry
- - The registry listing (version, packages, links) changed after this screen ran - the description we assessed did not
Semantic screen: an LLM judge reads the tool description for hidden instructions (status PARTIAL). A pass means the description is not lying, not that the tool is safe: a high-capability tool with an honest description still warrants caution. The deterministic conformance probe has not been run on this server yet, so the screen here is semantic-only. Posture: advisory. Confidences are reported but not yet calibrated (calibrated=false at v1). Full verdict history is not shown on this page.
Own this server? Test a description on the public screen → It is a separate check from the verdict above, so the two can differ.
That verdict was true at screening time (snapshot 2026-11-11).
Contracts can change after screening, with no version bump. The gate pins io.github.cyanheads/chembl-mcp-server’s tool contracts on first sight and holds any silent change before your agent acts - the check that keeps being true on Tuesday.
See your first HOLD in 2 minutes →
Related: how to trust an MCP server · screen before install · silent contract drift
7 changes with a version change.
Server-scoped, not a tool: this is text the server supplies for clients to inject into an agent’s context on connect (instructions or prompt metadata). It sits outside every tool contract hash, so this observation is its only drift signal.
Part of a publisher-wide change of the same kind on 2026-10-29, seen on 20 servers from this publisher.
Part of a publisher-wide change to server context of the same kind on 2026-10-25, seen on 10 servers from this publisher.
Part of a publisher-wide change of the same kind on 2026-10-25, seen on 19 servers from this publisher.
Part of a publisher-wide change to server context of the same kind on 2026-10-19, seen on 10 servers from this publisher.
Part of a publisher-wide change of the same kind on 2026-10-19, seen on 13 servers from this publisher.
Part of a publisher-wide change of the same kind on 2026-09-20, seen on 13 servers from this publisher.
Part of a publisher-wide change of the same kind on 2026-08-26, seen on 32 servers from this publisher.
Observed by mcpindex’s crawler between daily registry snapshots - a contract diff, not a safety verdict, and not an in-path prevention (that is the gate). A “safety-relevant diff” touches a safety-relevant field; it is not a confirmed vulnerability. Shown at the server level; individual tools are not named. Absence is not a clean bill of health: only public-registry servers are crawled.
People vet a server before wiring it in. One line on your project site or docs answers that with an independent record: screening verdict, registry provenance, contract drift history. It stays current as new screens and drift events land.
[Independent trust record for io.github.cyanheads/chembl-mcp-server](https://mcpindex.ai/server/io-github-cyanheads-chembl-mcp-server) - screening verdict, registry provenance, and contract drift monitoring.<a href="https://mcpindex.ai/server/io-github-cyanheads-chembl-mcp-server">Independent trust record for io.github.cyanheads/chembl-mcp-server</a> - screening verdict, registry provenance, and contract drift monitoring.A live verdict badge for your README or listing. It reflects the current screen, links back here, and updates when the verdict does.
[](https://mcpindex.ai/server/io-github-cyanheads-chembl-mcp-server)<a href="https://mcpindex.ai/server/io-github-cyanheads-chembl-mcp-server"><img src="https://mcpindex.ai/api/v1/badge/io-github-cyanheads-chembl-mcp-server" alt="mcpindex verdict" height="20" /></a>CANVAS_PROVIDER_TYPEDataCanvas provider for the bioactivity spill and the chembl_dataframe_* SQL tools; DuckDB is the default. Set to 'none' to disable it: large bioactivity sets then inline a preview but never spill.
CHEMBL_API_BASE_URLBase URL for the ChEMBL REST data API. Override for a private mirror or pinned host.
CHEMBL_REQUEST_TIMEOUT_MSPer-attempt timeout in milliseconds for an upstream ChEMBL request, capped by what is left of the call's time budget (45 s for most calls, CHEMBL_SPILL_DEADLINE_MS for a bioactivity spill).
CHEMBL_MAX_PAGE_SIZERows per upstream ChEMBL page (max 1000). The bioactivity spill walks pages of this size; an inline bioactivity page requests its limit, capped at this size.
CHEMBL_DEFAULT_LIMITDefault result limit applied when callers omit it.
CHEMBL_MAX_SPILL_ROWSCeiling on rows chembl_get_bioactivities stages to a DataCanvas table, and so on the upstream page walk behind it. Over the cap the response reports truncated: true and truncated_by: "row_cap".
CHEMBL_MAX_CONCURRENT_PAGESMost chembl_get_bioactivities spill-page requests in flight at once (1–6), shared by every call on the server.
CHEMBL_SPILL_DEADLINE_MSTime budget in milliseconds for one chembl_get_bioactivities spill, its count and page walk (10000–600000). At expiry the rows fetched so far stage with truncated: true and truncated_by: "time_budget".
CHEMBL_DATAFRAME_DROP_ENABLEDSet to 'true' to register the opt-in chembl_dataframe_drop tool (absent from tools/list when off).
MCP_LOG_LEVELSets the minimum log level for output (e.g., 'debug', 'info', 'warn').
MCP_TRANSPORT_TYPESelects the HTTP transport.
MCP_HTTP_HOSTThe hostname for the HTTP server.
MCP_HTTP_PORTThe port to run the HTTP server on.
MCP_HTTP_ENDPOINT_PATHThe endpoint path for the MCP server.
MCP_AUTH_MODEAuthentication mode to use: 'none', 'jwt', or 'oauth'.
MCP_LOG_LEVELSets the minimum log level for output (e.g., 'debug', 'info', 'warn').
CANVAS_PROVIDER_TYPEDataCanvas provider for the bioactivity spill and the chembl_dataframe_* SQL tools; DuckDB is the default. Set to 'none' to disable it: large bioactivity sets then inline a preview but never spill.
CHEMBL_API_BASE_URLBase URL for the ChEMBL REST data API. Override for a private mirror or pinned host.
CHEMBL_REQUEST_TIMEOUT_MSPer-attempt timeout in milliseconds for an upstream ChEMBL request, capped by what is left of the call's time budget (45 s for most calls, CHEMBL_SPILL_DEADLINE_MS for a bioactivity spill).
CHEMBL_MAX_PAGE_SIZERows per upstream ChEMBL page (max 1000). The bioactivity spill walks pages of this size; an inline bioactivity page requests its limit, capped at this size.
CHEMBL_DEFAULT_LIMITDefault result limit applied when callers omit it.
CHEMBL_MAX_SPILL_ROWSCeiling on rows chembl_get_bioactivities stages to a DataCanvas table, and so on the upstream page walk behind it. Over the cap the response reports truncated: true and truncated_by: "row_cap".
CHEMBL_MAX_CONCURRENT_PAGESMost chembl_get_bioactivities spill-page requests in flight at once (1–6), shared by every call on the server.
CHEMBL_SPILL_DEADLINE_MSTime budget in milliseconds for one chembl_get_bioactivities spill, its count and page walk (10000–600000). At expiry the rows fetched so far stage with truncated: true and truncated_by: "time_budget".
CHEMBL_DATAFRAME_DROP_ENABLEDSet to 'true' to register the opt-in chembl_dataframe_drop tool (absent from tools/list when off).
Bulk-launch and manage ads across many Meta, TikTok and Snapchat ad accounts for agencies.
Confidential computers for AI swarms: sealed VMs (Intel TDX) by the hour, USDC over x402.
Read, write, and inspect the system clipboard on macOS, Linux (X11/Wayland), and Windows via MCP.