cdxml-toolkit

Plattformunterstützung: Portable CDXML- und RDKit-Workflows laufen unter Windows, macOS und Linux. ChemDraw-COM-Rendering, ChemScript und bearbeitbare ChemDraw-Objekte in Word oder PowerPoint erfordern einen Windows-Host mit einer lizenzierten Desktop-ChemDraw-Installation.
Ein echtes editierbares Schema
Das Repository erzeugt native Chemie-Artefakte, nicht nur Screenshot-Ausgaben. Die folgende Reaktion wurde direkt aus dem editierbaren CDXML über ChemDraw COM exportiert; ihre YAML-Beschreibung und PNG-Darstellung sind neben der Quelle erhalten:
YAML-Quelle · Editierbares CDXML · Natives PNG · Weitere Schema-Beispiele
Related MCP server: CovAiLent
Was es bietet
Bereich | Praktisches Ergebnis |
Chemie-Grundlage | Namen, Abkürzungen, CAS-Nummern, Formeln und erkannte Bildkandidaten über Datenbanken, ChemScript, OPSIN oder DECIMER auflösen. |
Kontrollierte Strukturarbeit | Moleküle vergleichen, benannte Transformationen anwenden, Stereochemie erhalten und MCS-basierte Strukturunterschiede prüfen. |
ChemDraw-Ausgabe | Moleküle zeichnen, Schemata bereinigen oder zusammenführen, CDX/CDXML konvertieren und native PNG- oder SVG-Dateien rendern. |
Office-Workflows | Bearbeitbare ChemDraw-OLE-Objekte in PowerPoint und Word extrahieren, ersetzen und stapelweise einbetten. |
Experiment-Workflows | ELN-Exporte, SciFinder-RDF, LCMS- oder NMR-Berichte parsen und strukturiertes Laborbuchmaterial zusammenstellen. |
Agent-Dienst | Über stdio lokal oder authentifiziertes Streamable HTTP für einen vertrauenswürdigen Remote-Computer ausführen. |
Schnellstart
Erforderlich: 64-Bit-Python 3.10–3.13. Portable CDXML- und RDKit-Operationen laufen ohne ChemDraw. Natives Rendering, ChemScript und bearbeitbare Office-Objekte erfordern Windows plus eine lizenzierte Desktop-ChemDraw-Installation. Python 3.14 wird noch nicht unterstützt.
conda create -n cdxml python=3.12 pip -y
conda activate cdxml
git clone https://github.com/ZiChenWang114514/cdxml-toolkit-community.git
Set-Location .\cdxml-toolkit-community
# Both distributions expose the cdxml_toolkit import package.
pip uninstall -y cdxml-toolkit
pip install -e ".[all]"
# Read-only environment and capability report.
cdxml-doctor --no-testsDie Standardinstallation enthält die portable CDXML-, RDKit- und MCP-Laufzeit. Optionale Gruppen sind windows, office, chemscript, analysis, image, decimer, opsin, http, all und dev.
Installieren Sie den aktuellen Community-Quellcode direkt, wenn ein Checkout nicht erforderlich ist:
pip install "cdxml-toolkit-community[all] @ git+https://github.com/ZiChenWang114514/cdxml-toolkit-community.git@main"cdxml-doctor --no-tests ändert den Rechner nicht. Um ChemDraw zu erkennen und eine kompatible ChemScript-Umgebung interaktiv vorzubereiten, führen Sie aus:
cdxml-doctor --no-tests --configure-chemscript
cdxml-doctor --jsonChemScript ist optional. OPSIN bietet Offline-IUPAC-Namensauflösung, wenn Java verfügbar ist. Das Wheel bündelt keine JRE; die Laufzeit prüft zuerst JAVA_HOME und java auf PATH. Ein vorab genehmigtes lokales Archiv kann mit expliziten Integritätsmetadaten installiert werden:
$env:CDXML_TOOLKIT_JRE_ZIP = "C:\installers\temurin-jre.zip"
$env:CDXML_TOOLKIT_JRE_SHA256 = "approved sha256"
cdxml-doctor --no-testsArchivgröße, extrahierte Größe, Pfade, Links und optionale SHA-256 werden vor der Installation geprüft.
Agent verbinden
Das codex-Profil stellt alle 35 Tools bereit. Starten Sie einen lokalen stdio-Server direkt:
cdxml-mcp --profile codexFür Codex fügen Sie den Server zu %USERPROFILE%\.codex\config.toml hinzu und ersetzen den Python-Pfad durch den Interpreter aus der cdxml-Umgebung:
[mcp_servers.chemdraw]
command = "C:\\Users\\YOU\\miniconda3\\envs\\cdxml\\python.exe"
args = ["-m", "cdxml_toolkit.mcp_runtime", "--profile", "codex"]
startup_timeout_sec = 120
tool_timeout_sec = 600Starten Sie den Agenten neu und versuchen Sie dann:
Resolve aspirin, draw it as CDXML, and render a PNG preview.Fügen Sie den Server unter mcpServers in %APPDATA%\Claude\claude_desktop_config.json hinzu:
{
"mcpServers": {
"cdxml-toolkit": {
"command": "C:\\Users\\YOU\\miniconda3\\envs\\cdxml\\python.exe",
"args": ["-m", "cdxml_toolkit.mcp_runtime", "--profile", "codex"]
}
}
}Die gleiche prozessbasierte Konfiguration funktioniert mit anderen MCP-kompatiblen Agenten.
Kopieren Sie CLAUDE.md in einen Agent-Arbeitsbereich, wenn der Client Projektanweisungen unterstützt. Es weist den Agenten an, molekulare Strukturen aus Tools zu beziehen, OCSR für Bilder zu verwenden, chemische Semantik zu bewahren und Transformationen zu verifizieren, anstatt Strukturstrings zu erfinden.
So funktioniert die Laufzeit
Wichtige Laufzeiteigenschaften:
Tool-Aufrufe laufen in Subprozess-Workern mit konfigurierbaren harten Timeouts und strukturierten Fehlern.
ChemDraw-, Word- und PowerPoint-Automatisierung teilen sich eine serialisierte Koordination nativer Ressourcen.
Ausgabeproduzierende Tools validieren Artefakte und vermeiden das versehentliche Ersetzen vorhandener Dateien.
Metriken erfassen Anzahlen, Dauer, Timeouts, Worker-Fehler und Warteschlangenlänge ohne Tool-Argumente oder molekularen Inhalt.
get_toolkit_capabilitiesmeldet die verfügbaren lokalen Funktionen, bevor ein Agent einen Workflow wählt.
Tool-Profile
Wählen Sie das kleinste sinnvolle Profil, um Tool-Auswahlrauschen zu reduzieren:
Profil | Tools | Fokus |
| 16 | Kompatible Kern-Tools plus Fähigkeitserkennung |
| 21 | Office-Inspektion, Ersetzung, Vorlagen und Stapeleinbettung |
| 20 | Experiment-Erkennung, LCMS-Serien, Laborbücher und SciFinder-RDF |
| 20 | Molekülvergleich und kontrollierter ChemScript-SDK-Zugriff |
| 35 | Vollständige lokale und entfernte Sammlung |
Die generierte MCP-Tool-Referenz und das JSON-Schema enthalten die exakten Live-Signaturen. CI prüft beide Dateien auf Abweichungen.
Streamable HTTP
Stdio bleibt der lokale Standard. Eine aktivierte Windows-Workstation kann nach Installation des http-Extras einen vertrauenswürdigen Remote-Computer bedienen:
$env:CHEMDRAW_MCP_HTTP_API_KEY = "generate-a-long-random-value"
cdxml-mcp --transport streamable-http --host 0.0.0.0 --port 8029 `
--allowed-host chemdraw-host.example:8029 `
--allowed-origin https://trusted-client.exampleRemote-Bindung erfordert einen Bearer-Schlüssel und eine explizite Hostliste. /health enthält keine Moleküldaten; /metrics erfordert Authentifizierung, wenn der Server remote erreichbar ist.
DECIMER-Bild-Upload ist standardmäßig deaktiviert. Remote-Erkennung erfordert confirm_upload=true, validiert, dass die Nutzlast als Bild dekodiert, und erzwingt Anfrage- und Antwortlimits.
Befehlszeile
Befehl | Zweck |
| Vollständige MCP-Laufzeit; standardmäßig 35-Tool- |
| Kompatibler 15-Tool-Kernserver |
| Schreibgeschützte Diagnose, Tests und explizite ChemScript-Einrichtung |
| JSON, YAML oder kompakten Text zu CDXML rendern |
| CDXML zu PNG oder SVG rendern |
| Schemata zusammenführen oder Reaktionslayout bereinigen |
| Bearbeitbare ChemDraw-Objekte in PPTX oder DOCX einbetten |
| Instrumentenberichte parsen |
| Markdown- und JSON-Tool-Referenzen neu generieren |
Der Schema-Renderer akzeptiert YAML, Reaktions-JSON und eine kompakte Textsyntax, die im Showcase-Katalog beschrieben ist.
Entwicklung
python -m pip install -e ".[dev,windows,office,analysis,image]"
python -m pytest -m "not network" -q
python -m build
python -m twine check dist/*Gehostete CI prüft Python 3.10–3.13, MCP SDK 1.x und 2.x, generierte Referenzen, portable Tests und Distributionen. Native ChemDraw-, ChemScript-, Word- und PowerPoint-Prüfungen laufen auf einer lizenzierten Windows-Workstation.
Lesen Sie den Beitragsleitfaden, die Sicherheitsrichtlinie und den Wartungsleitfaden, bevor Sie Änderungen vorschlagen oder veröffentlichen.
Community-Verantwortung
Dieses Repository führt leehiufung911/cdxml-toolkit fort. Die Distribution ist cdxml-toolkit-community; der kompatible Python-Import bleibt cdxml_toolkit.
Community-Maintainer: ZiChenWang114514
Originalautor: Hiu Fung Kevin Lee (@leehiufung911)
Hinweise zu Drittanbieterdaten und -komponenten: NOTICE.md
Lizenz: MIT
Das ursprüngliche Projekt wurde von Hiu Fung Kevin Lee, einem promovierten organischen Chemiker, geleitet und als mit Claude Code (Opus 4.6) erstellt und getestet dokumentiert.
Maintenance
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceChemMCP is an easy-to-use and extensible chemistry toolkit for LLMs and AI assistants, enabling molecular analysis, property prediction, and reaction synthesis tasks without domain-specific training.70Apache 2.0- AlicenseNot gradedqualityDmaintenanceAn MCP server for chemistry-focused tools, enabling LLM agents to perform molecule parsing, format conversion, property lookup, and other chemistry operations with explainable responses.Apache 2.0
- FlicenseBqualityDmaintenanceProvides computational chemistry tools for LLMs, enabling molecular operations like SMILES processing and geometry manipulation via a modular agent and tool system.9
- AlicenseNot gradedqualityAmaintenanceEnables generation of chemical structures, reactions, spectra, titration curves, 3D models, and more from natural language or SMILES, using RDKit for offline rendering and supporting formats like PNG, SVG, CDXML, and Anki decks.8Apache 2.0
Related MCP Connectors
AI-powered bioprotocol optimization — generate, search, and manage lab protocols via MCP
Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.
Codebase intelligence for agents: 152 structured artifacts across 21 programs, one call.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ZiChenWang114514/cdxml-toolkit-community'
If you have feedback or need assistance with the MCP directory API, please join our Discord server