chematic for AI agents

chematic-mcp exposes 20 chemistry tools to AI agents over the Model Context Protocol — parsing and canonicalizing structures, computing physicochemical properties, checking drug-likeness rules, generating fingerprints and similarity scores, matching SMARTS patterns, generating 3D coordinates, and sketching retrosynthetic disconnections. Each tool takes structured JSON in and returns structured JSON out, so an agent doesn't have to parse chemistry out of prose.

Install

Published to crates.io; install with cargo install chematic-mcp --version 1.1.2.

cargo install chematic-mcp --version 1.1.2

Add it to an MCP client

For Claude Desktop or Claude Code, use the local stdio command:

{
  "mcpServers": {
    "chematic": {
      "command": "chematic-mcp",
      "args": []
    }
  }
}

Choose a connection

Start local. Add HTTP only when the client needs it.

Both options run on infrastructure you control. They use the same tools and return the same structured results.

Local stdio

Use this with desktop clients and coding tools that can start a local process. It is the shortest setup and remains the default.

chematic-mcp

Self-hosted Streamable HTTP

Use this when the client cannot launch a child process. The adapter listens on your machine and serves the modern stateless MCP dialect at the endpoint below.

chematic-mcp --transport streamable-http

http://127.0.0.1:3000/mcp
2026-07-28 stateless MCP only

What stays local

name_to_smiles is the only tool of the 20 that makes a network call (PubChem, name → SMILES lookup). The other 19 are pure local computation.

This is self-hosted software, not a managed chemistry API. There is no hosted endpoint or public SLA.

Not supported today

  • Hosted Remote MCP endpoint
  • Authentication / OAuth
  • Legacy MCP dialect or sessions over HTTP
  • Tasks extension
  • MCP Apps
  • Resources, Prompts, Sampling, Roots, Logging, Subscriptions

Available tools (20)

name_to_smilesparse_smiles
canonical_smilescalc_properties
lipinski_checksa_score
pains_checkbrenk_check
admet_profileboiled_egg
ecfp4tanimoto
smarts_matchfind_mcs
generate_3dretrosynthesis
smiles_to_moljsonmoljson_to_smiles
representation_routermolecule_context_pack

Caching

The tool registry is static for the lifetime of one running process — tools/listresults carry a 24-hour cache hint. If the registry ever changes, it changes as part of a newchematic-mcp release; restarting the server always returns the current registry regardless of a client's cached TTL.

See the full protocol details, including the dual legacy/modern dialect support, in thecrate README.