The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Ellmos Codecommander MCP listing page.
Part of the ellmos-ai family.
[!NOTE] For AI Assistants & LLMs: Machine-readable indexing documentation for this repository is available at
llms.txt. The server exposes 23 specialized tools under thecc_prefix.
A developer-focused Model Context Protocol (MCP) server that gives AI assistants code analysis, structural Python editing, JSON repair, encoding fix, import organization, format conversion, file diff, and regex testing capabilities.
23 tools optimized for developers - the coding companion to FileCommander.
Discoverability: Published on npm as ellmos-codecommander-mcp, visible on Glama, and prepared for the official MCP Registry with server.json under io.github.ellmos-ai/ellmos-codecommander-mcp. Registry and directory manifests server.json, glama.json, smithery.yaml, and llms.txt are maintained in full parity.
While FileCommander handles filesystem operations and system processes, CodeCommander focuses specifically on code intelligence and developer precision:
.py files explicitly instead of producing Python-shaped false findings.ellmos-codecommander-mcp guarantees 10 core architectural and runtime invariants across all platforms:
| Invariant ID | Classification | Architectural Guarantee & Verification Mechanism |
|---|---|---|
INV-LOCAL-01 | Zero-Egress Privacy | Pure local stdio JSON-RPC transport; zero network telemetry, cloud beacons, or remote egress. |
INV-SEC-02 | Unprivileged Security | Standard user-space execution (RunAsInvoker) requiring zero root or administrative elevation. |
INV-PREV-03 | Preview Safety | Structural edits default to non-mutating preview mode (mode: "preview") with unified diff generation. |
INV-BAK-04 | Automatic Backups | File modifications automatically generate timestamped .bak files before in-place disk writes. |
INV-ISOL-05 | Subprocess Isolation | Python runtime import diagnosis executes in isolated, timeout-bounded child processes. |
INV-GATE-06 | Explicit Language Gates | Python-specific path tools reject non-.py files explicitly; JS/TS analysis is read-only and regex-based. |
INV-ENC-07 | Non-Destructive Encoding | Repaired text restores 27+ Mojibake and 70+ German umlaut patterns without loss or binary corruption. |
INV-FMT-08 | Format Interchange Parity | Lossless format conversions across JSON, CSV, INI, YAML, TOML, XML, and TOON with schema preservation. |
INV-I18N-09 | Runtime Multi-Language | Dynamic runtime language switching across 6 languages (EN, DE, ES, ZH, JA, RU) via cc_set_language. |
INV-SLA-10 | 48h Security Response SLA | Verified across Ubuntu, Windows, macOS on Node 20, 22, 24 with public 48h response / 5-day triage commitment. |
| Tool | Description |
|---|---|
cc_analyze_code | Read-only Python or regex-based JavaScript/TypeScript analysis: classes, functions, imports, LOC, complexity |
cc_analyze_methods | Read-only Python or regex-based JavaScript/TypeScript method analysis; Python retains its BACH guardrails |
cc_extract_classes | Extract Python classes/functions as separate text blocks, optionally including pycutter-style inline content |
| Tool | Description |
|---|---|
cc_organize_imports | Sort & deduplicate Python imports per PEP 8 |
cc_diagnose_imports | Read-only Python or regex-based JavaScript/TypeScript import diagnostics |
cc_runtime_import_diagnose | Run isolated Python runtime imports with timeouts, __init__.py analysis, and circular-import hints |
| Tool | Description |
|---|---|
cc_fix_json | Repair broken JSON (BOM, trailing commas, comments, single quotes) |
cc_validate_json | Validate JSON with detailed error position and context |
| Tool | Description |
|---|---|
cc_fix_encoding | Fix Mojibake / double-encoded UTF-8 (27+ patterns) |
cc_cleanup_file | Remove BOM, NUL bytes, trailing whitespace, normalize line endings |
cc_fix_umlauts | Repair broken German umlauts (70+ patterns, HTML entities, escapes) |
| Tool | Description |
|---|---|
cc_scan_emoji | Scan files for emojis with codepoint info |
| Tool | Description |
|---|---|
cc_convert_format | Convert between JSON, CSV, INI, YAML, TOML, XML, and TOON formats |
cc_generate_licenses | Generate third-party license file (npm/pip) |
| Tool | Description |
|---|---|
cc_diff_files | Compare two files with unified diff output (configurable context lines) |
cc_regex_test | Test regex patterns against text/files with match details, groups, and replace preview |
| Tool | Description |
|---|---|
cc_check_indentation | Detect missing colons, unindented return/yield statements, and mixed tab/space indentation |
cc_generate_python_code | Generate Python functions, classes, dataclasses, CLI stubs, tests, exceptions, and modules from templates |
cc_python_structural_edit | Inspect and apply structural Python edits with preview, test-file, syntax-check and backup modes |
| Tool | Description |
|---|---|
cc_md_to_html | Markdown to standalone HTML with CSS styling (headers, code blocks, tables, nested lists, blockquotes, images, checkboxes) |
cc_md_to_pdf | Markdown to PDF via headless browser (Edge/Chrome). Falls back to HTML if no browser is available |
| Tool | Description |
|---|---|
cc_set_language | Switch active runtime language (en, de, es, zh, ja, ru) |
cc_get_language | Query currently active language and supported locale codes |
Total: 23 developer tools available under the cc_ prefix.
7 tools exist in both FileCommander and CodeCommander for convenience:
| FileCommander | CodeCommander | Function |
|---|---|---|
fc_fix_json | cc_fix_json | JSON repair |
fc_validate_json | cc_validate_json | JSON validation |
fc_fix_encoding | cc_fix_encoding | Encoding repair |
fc_cleanup_file | cc_cleanup_file | File cleanup |
fc_convert_format | cc_convert_format | Format conversion (JSON/CSV/INI/YAML/TOML/XML/TOON) |
fc_md_to_html | cc_md_to_html | Markdown to HTML export |
fc_md_to_pdf | cc_md_to_pdf | Markdown to PDF export |
All tools in CodeCommander use the cc_ prefix to guarantee seamless coexistence with FileCommander's fc_ namespace.
Add to your claude_desktop_config.json:
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.jsonFileCommander and CodeCommander are designed to run concurrently:
CodeCommander natively supports 6 languages for all tool descriptions, output notices, and diagnostic messages:
en — English (Default)de — Deutsch (German)es — Español (Spanish)zh — 简体中文 (Chinese Simplified)ja — 日本語 (Japanese)ru — Русский (Russian)Use cc_get_language to check the current language or cc_set_language to dynamically change it during an active MCP session.
The test gates are deliberately separated and automated in CI across Ubuntu, macOS, and Windows on Node.js 20, 22, and 24 (totaling 292 automated assertions, 100% green).
Part of the ellmos-ai and open-bricks family of local-first tools:
| Server | Tools | Focus | npm |
|---|---|---|---|
| FileCommander | 50 | Filesystem, process management, interactive sessions, cloud-lock-safe operations | ellmos-filecommander-mcp |
| CodeCommander | 23 | Code analysis, AST edits, JSON repair, diff, regex | ellmos-codecommander-mcp |
| Clatcher | 12 | File repair, format conversion, batch operations | ellmos-clatcher-mcp |
| n8n Manager | 19 | n8n workflow management via AI assistants | n8n-manager-mcp |
| ControlCenter | 34 | MCP stack discovery, profile management, control plane | ellmos-controlcenter-mcp |
| Homebase | 51 | Local-first LLM memory, knowledge, state, routing, swarm orchestration | ellmos-homebase-mcp (alpha) |
| ServerCommander | 8 | Server operations: health checks, log analysis, deploy dry-runs, mail diagnostics | ellmos-servercommander-mcp (alpha) |
| Blender Use | 4 | Headless Blender asset QA and FBX reimport verification | ellmos-blender-use-mcp (alpha) |
| Open Compute | 16 | Model-agnostic computer use: capture, safety-gated actions, Windows UIA | open-compute-mcp (alpha) |
| Ecosystem | Tool / Project | Focus & Capabilities |
|---|---|---|
| ellmos-ai | sqlite-transit-sync | Offline SQLite change distribution with HMAC verification |
| ellmos-ai | policy-registry | Cryptographically signed delegation policies for AI agents |
| ellmos-ai | clutch | Provider-neutral LLM orchestration with auto-routing and budget tracking |
| ellmos-ai | BACH | Local-first text-based OS for LLM agents — 113+ handlers, 550+ tools |
| dev-bricks | DevCenter | PySide6 Developer Desktop Suite & offline secret vault |
| dev-bricks | CodeBox | Fast desktop code snippet manager & local AST indexing |
| dev-bricks | MethodenAnalyser | Method flow & complexity diagnostic engine |
| doc-bricks | PDFtoPDFocr | Desktop OCR pipeline for searchable PDFs with Tesseract |
| doc-bricks | DokuReader | Multi-format document workspace & offline PDF export |
| file-bricks | ProFiler | Multi-pane file management & bulk batch operations |
| open-bricks | open-bricks | Umbrella organization for AI-native desktop applications |
This project strictly adheres to open-source transparency:
THIRD_PARTY_LICENSES.md.MARKETING-LOG.txt.Please review SECURITY.md for full vulnerability disclosure procedures.
.bak backups and support non-mutating preview.RunAsInvoker).security@ellmos.ai and support@lukasgeiger.com with a guaranteed 48-hour initial response SLA and 5-day triage commitment.See CHANGELOG.md for release notes and version history.
This project is licensed under the MIT License — Copyright © 2026 Lukas Geiger (ellmos-ai).
Dieses Projekt ist eine unentgeltliche Open-Source-Schenkung im Sinne der §§ 516 ff. BGB. Die Haftung des Urhebers ist gemäß § 521 BGB auf Vorsatz und grobe Fahrlässigkeit beschränkt. Ergänzend gilt der Haftungsausschluss der MIT-Lizenz. Nutzung auf eigenes Risiko. Keine Wartungszusage, keine Verfügbarkeitsgarantie, keine Gewähr für Fehlerfreiheit oder Eignung für einen bestimmten Zweck.
This project is an unpaid open-source donation under German law. Liability is limited to intent and gross negligence (§ 521 German Civil Code), supplemented by the MIT License warranty disclaimer. Use at your own risk.