ChemDraw MCP (unofficial)

io.github.jurimaxam-dotcomPublished by GitHub account jurimaxam-dotcomv0.9.0Updated Nov 7, 2026

Molecule names or SMILES to 2D structures, reactions, mechanisms, spectra - offline via RDKit.

The publisher's own server: draw.io

VerifiedSTDIODesktop onlyMedia & DesignAI & ML

Overview

AI-generated overview

Unofficial local MCP server that turns molecule names or SMILES into 2D structures, reactions, mechanisms, spectra and lab graphics using RDKit.

What you can do
  • Draw molecules, batch sets, comparisons, reactions, step-by-step mechanisms and rotatable 3D models
  • Create lab graphics: IR spectra, TLC plates, titration curves and species-distribution plots
  • Look up names, CAS numbers and PubChem data sheets, and predict IR bands
  • Calculate buffer pH and export structure cards to an Anki deck
  • Save drawings as PNG, SVG or ChemDraw CDXML files in a local output folder
When to use it
Useful for chemistry students, teachers and lab work where you want structures and figures drawn directly in the chat, offline and without a ChemDraw licence, including exam flashcards and reaction schemes.
Requirements
Runs locally as a stdio process, installed as a Claude Desktop extension or from PyPI with uv (uvx chemdraw-mcp). No API key or sign-up. Internet is needed only for PubChem data sheets; optional extras include Java for offline IUPAC names and AnkiConnect for Anki export.
Before you install
Writes PNG, SVG, CDXML and SDF files to a local output folder and can add cards to an Anki deck. PubChem lookups send the compound to an external service. Chemistry output is generated automatically and may be wrong; unspecified stereochemistry is flagged rather than guessed. Installing both connectors makes every tool appear twice.

Installation

In SourceWeft

  1. Open ChemDraw MCP (unofficial) in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

chemdraw-mcp

[CI] [Release] [License: Apache-2.0] [PyPI]

Claude draws the chemistry it talks about: structures, reactions, mechanisms and lab graphics, right in the chat.

Interactive molecule panels in the chat and PNG/SVG files on disk, rendered locally with RDKit. Free and open source (Apache-2.0). No API key, no sign-up, no ChemDraw licence.

Quick start

  1. Download the Claude Desktop extension (chemdraw-mcp-<version>.mcpb), double-click it and confirm in Claude Desktop.
  2. Open a new chat and say "Use the ChemDraw MCP: draw thalidomide".
  3. Try one of the prompts below or the tool table.

Other clients (need uv):

  • Claude Code: claude plugin marketplace add jurimaxam-dotcom/chemdraw-mcp, then claude plugin install chemdraw-mcp@chemdraw-mcp.
  • VS Code: [Install in VS Code]
  • Cursor: add {"command":"uvx","args":["chemdraw-mcp"]} as server chemdraw-mcp in mcp.json, or open cursor://anysphere.cursor-deeplink/mcp/install?name=chemdraw-mcp&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyJjaGVtZHJhdy1tY3AiXX0= in the browser.
  • Codex: codex mcp add chemdraw -- uvx chemdraw-mcp

Other ways in (PyPI, cloning the repository, editing the config by hand) are under Installation.

[The thalidomide panel: skeletal formula, All H, Show variants, the (S) isomer drawn with wedges, then the PubChem data sheet with the CAS number] [The thalidomide panel: the 3D chip swaps the drawing for a ball-and-stick model in a bowl, rotated by dragging]

What you get

A structure you can work with

Ask for thalidomide and the panel shows the skeletal formula, molecular formula, molar mass and CAS number, plus the PubChem record those numbers belong to.

  • All H redraws the molecule with every hydrogen atom. Sugars also get Fischer and Haworth chips where the projection applies.
  • Open stereochemistry is flagged, not guessed. Thalidomide's stereocentre shows up as "1 unspecified stereocenter".
  • Show variants draws every stereoisomer (up to three open stereo elements). Pick (S) and it is redrawn with wedges.
  • A name found under another spelling says so under the title ("Found as").

3D in one click

Every structure has a 3D chip. For thalidomide, the two ring systems that lie flat on paper turn out to sit twisted against each other.

  • The server computes a conformer (RDKit ETKDG plus a force field) and swaps the drawing for a ball-and-stick model with explicit hydrogens.
  • Drag to rotate. A second click returns to the drawing.
  • The conformer is cached, and the SDF file lands in ~/ChemDraw-Output/3d/.

Data, flashcards and files

  • Hover a functional group of capsaicin (amide, phenol, ether) and its atoms light up in the structure, with name and short formula below.
  • Data turns the panel into the PubChem data sheet with properties and GHS hazards. It loads on the first click and then stays cached. This part needs the internet.
  • Export PNG saves the drawing to ~/ChemDraw-Output/png/; where the host allows it, the image also goes to the clipboard.
  • Add to Anki adds a structure card to the deck "ChemDraw", or saves the deck file if Anki cannot take it.
  • Every drawing tool also writes PNG and SVG files to ~/ChemDraw-Output/. ChemDraw CDXML on request.

[The capsaicin panel: ether, amide, amine, phenol and aromatic ring light up in the structure on hover, then the PubChem data sheet]

Prompts to try

  • "Draw thalidomide", then click Show variants and pick (S).
  • "Show morphine as a rotatable 3D model", or draw it and click 3D.
  • "Draw capsaicin", then hover a functional group or click Data.
More prompts: reactions, mechanisms and lab graphics
PromptWhat you get
"Draw adrenaline with all hydrogen atoms"the structure opened in the All H view
"Give me a data sheet for lysergic acid diethylamide"PubChem properties and GHS hazards (lookup_molecule_data)
"What is the difference between testosterone and estradiol?"both structures side by side, differences highlighted (compare_molecules)
"Draw the nitration of benzene with nitric and sulfuric acid as a reaction scheme"reactants, products and conditions on the arrow (generate_reaction)
"Show the SN1 mechanism of tert-butyl bromide with water step by step"each step with curved electron-flow arrows (generate_mechanism)
"Draw a schematic IR spectrum of capsaicin"a spectrum from typical literature bands (generate_spectrum)
"TLC: educt Rf 0.3, product Rf 0.65, co-spot shows both"a TLC plate sketch (generate_tlc)
"Titrate 0.1 M acetic acid with 0.1 M NaOH and show the curve with phenolphthalein"equivalence point, buffer point and indicator band (generate_titration_curve)
"What is the pH of a buffer of 0.1 M acetic acid and 0.05 M sodium acetate?"the exact pH with the textbook approximation beside it (calculate_ph)

Curved-arrow mechanisms cover SN1, SN2 and Fischer esterification. For any other reaction, Claude draws the net scheme and says that the arrow mechanism is not drawn.

Tools

The default profile registers 16 tools, 12 of them with an interactive panel. Files go to ~/ChemDraw-Output/. How the model picks the right tool is explained under Development.

AreaToolExample promptPanel
Drawgenerate_molecule"Draw caffeine"yes
batch_generate"Draw adrenaline, noradrenaline and dopamine, each as its own file"yes
compare_molecules"What is the difference between morphine and codeine?"yes
generate_reaction"Draw the esterification of acetic acid with ethanol"yes
generate_mechanism"Show me the SN2 mechanism step by step"yes
generate_3d"Show methane as a rotatable 3D model"yes
Lab graphicsgenerate_spectrum"Draw the IR spectrum of aspirin"yes
generate_tlc"TLC: educt Rf 0.3, product Rf 0.65, co-spot shows both"yes
generate_titration_curve"Titrate phosphoric acid with NaOH and show the curve"yes
generate_species_distribution"Species distribution of phosphoric acid over pH"yes
Look uplookup"What is the CAS number of paracetamol?"text
lookup_molecule_data"Give me a data sheet for capsaicin"yes
predict_spectrum"Which IR bands should capsaicin show?"text
Calculatecalculate_ph"What is the pH of 0.1 M acetic acid, pKa 4.76?"text
Ankiexport_anki_deck"I have an exam on NSAIDs on Friday and need to know the structures"file

The 16th tool, save_png, is the server half of the panel's export button. It runs when you click that button and is never called by the model on its own.

What each tool does in detail, the options on the drawing tools (formats, render_style, abbreviate_groups, annotate_stereo) and the known limits: docs/tools.md.

Gallery

Every picture below is the tool's own output, generated by scripts/readme_bilder.py.

Show the gallery

Installation

Pick one route. The extension and chemdraw-install register the same connectors, and installing both makes the model see every tool twice. Afterwards restart Claude Desktop and ask "draw caffeine".

  • Claude Desktop extension (macOS, Linux): download chemdraw-mcp-<version>.mcpb from the latest release, double-click it, confirm, restart Claude Desktop once. The first start fetches about 40 MB from PyPI, checked against pinned hashes; later starts are offline. chemdraw-mcp-pharma-<version>.mcpb from the same release adds the second connector (see Profiles); it shares the installation.

  • From PyPI (needs uv):

    bash
    uv tool install chemdraw-mcpchemdraw-install

Cloning the repository, editing the config by hand and optional extras (Java for offline IUPAC names, AnkiConnect): docs/installation.md.

Something not working? uvx --from chemdraw-mcp chemdraw-doctor checks the installation and prints the fix for each problem.

Profiles

Either route registers two connectors from one installation. They differ only in the profile the server starts with:

ConnectorProfileToolsAdds
chemdrawmvp (default)16, 12 with a panelthe five areas in the tool table
chemdraw-pharmafull23, 16 with a panelsubstrate-scope figure, calibration curve, pharmacology curves, and calculators for solutions, content determination and pharmacokinetics

The extension route ships them as two bundles (chemdraw-mcp-<version>.mcpb, chemdraw-mcp-pharma-<version>.mcpb); chemdraw-install writes both entries into claude_desktop_config.json (and replaces the single chemdraw-tool entry of earlier versions). In a chat, enable one connector at a time in the connector menu: with both on, the model sees the default tools twice. Switching between them needs no restart. What the full profile adds in detail: docs/tools.md#profiles.

Development

Architecture, setup and the test gate: docs/development.md.

Feedback, bugs and wishes

  • Something broke? Open a bug report. The form asks for the output of chemdraw-doctor.
  • Missing something in your course? Tell us what you would draw or calculate. The subject and the exam question help more than a feature name.
  • Wrong chemistry? Use the bug form and name the compound and the figure.
  • A question, or something you made with it? Discussions.
  • It worked for you? A star on the repository helps other students find it.

License

Apache-2.0, see LICENSE. Copyright 2026 jurimaxam-dotcom.

Disclaimer: This is an unofficial, independent project, not affiliated with or endorsed by Revvity. ChemDraw is a trademark of Revvity Signals Software, Inc. This tool does not include or require ChemDraw; it can optionally export files in the open CDXML format.

Source: README.md at commit b091cab

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

11
  1. v0.9.0LatestNov 7, 2026
  2. v0.8.0Nov 5, 2026
  3. v0.7.0Nov 5, 2026
  4. v0.6.0Oct 26, 2026
  5. v0.5.2Oct 25, 2026
  6. v0.5.1Oct 25, 2026
  7. v0.5.0Oct 20, 2026
  8. v0.4.8Oct 3, 2026
  9. v0.4.5Oct 2, 2026
  10. v0.4.2Oct 1, 2026
  11. v0.4.1Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Draw integrations