Developer-focused MCP server with 17 tools for code analysis, JSON repair, import management, Markdown export, diffs and regex testing
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
claude mcp add ellmos-codecommander-mcp -- npx -y vitest{
"mcpServers": {
"ellmos-codecommander-mcp": {
"command": "npx",
"args": ["-y", "vitest"]
}
}
}MCP Servers overview
<p align="center">
<img src="assets/codecommander_banner.jpg" alt="CodeCommander banner" width="700">
</p>
# ellmos CodeCommander MCP Server
**🇩🇪 [Deutsche Version](README_de.md)**
*Part of the [ellmos-ai](https://github.com/ellmos-ai) family.*
[](https://opensource.org/licenses/MIT)
[](https://www.npmjs.com/package/ellmos-codecommander-mcp)
[](https://github.com/ellmos-ai/ellmos-codecommander-mcp/actions/workflows/tests.yml)
[](https://nodejs.org/)
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.
**21 tools** optimized for developers - the coding companion to [FileCommander](https://github.com/ellmos-ai/ellmos-filecommander-mcp).
**Discoverability:** Published on [npm](https://www.npmjs.com/package/ellmos-codecommander-mcp) as `ellmos-codecommander-mcp`, visible on [Glama](https://glama.ai/mcp/servers/b9kjs4uaav), and prepared for the official MCP Registry with [`server.json`](server.json) under `io.github.ellmos-ai/ellmos-codecommander-mcp`.
---
## Why CodeCommander?
While FileCommander handles filesystem operations, CodeCommander focuses on **code intelligence**:
- **Python Code Analysis** - AST-based class/method extraction, complexity metrics, import analysis
- **BACH-derived Python Helpers** - runtime import diagnostics, structural edits, indentation checks, and template-based code generation
- **JSON Repair** - Fix broken JSON automatically (trailing commas, single quotes, BOM, comments)
- **Import Organization** - Sort and deduplicate Python imports per PEP 8
- **Encoding Fix** - Repair Mojibake and double-encoded UTF-8 (27+ patterns)
- **Umlaut Repair** - Fix broken German characters (70+ patterns)
- **Format Conversion** - Convert between JSON, CSV, INI, YAML, TOML, XML, and TOON
- **File Diff** - Compare two files with unified diff output (LCS algorithm)
- **Regex Tester** - Test regular expressions with match details, groups, and replace preview
- **Markdown Export** - Convert Markdown to professional HTML/PDF with code blocks, tables, nested lists, blockquotes
- **Cross-platform** - Works on Windows, macOS, and Linux
---
## Installation
### Prerequisites
- [Node.js](https://nodejs.org/) 18 or higher
### Option 1: Install from NPM
```bash
npm install -g ellmos-codecommander-mcp
```
### Option 2: Install from Source
```bash
git clone https://github.com/ellmos-ai/ellmos-codecommander-mcp.git
cd ellmos-codecommander-mcp
npm install
npm run build
```
---
## Configuration
### Claude Desktop
Add to your `claude_desktop_config.json`:
**Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
**macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
#### If installed globally via NPM:
```json
{
"mcpServers": {
"codecommander": {
"command": "ellmos-codecommander"
}
}
}
```
#### If installed from source:
```json
{
"mcpServers": {
"codecommander": {
"command": "node",
"args": ["/absolute/path/to/ellmos-codecommander-mcp/dist/index.js"]
}
}
}
```
### Using Both Servers Together
FileCommander and CodeCommander are designed to work side by side:
```json
{
"mcpServers": {
"filecommander": {
"command": "ellmos-filecommander"
},
"codecommander": {
"command": "ellmos-codecommander"
}
}
}
```
---
## Tools Overview
### Code Analysis (3 tools)
| Tool | Description |
|------|-------------|
| `cc_analyze_code` | Full code analysis: classes, functions, imports, LOC, complexity |
| `cc_analyze_methods` | Detailed method analysis: params, decorators, visibility, data flow, BACH guardrails |
| `cc_extract_classes` | Extract Python classes/functions as separate text blocks, optionally including pycutter-style inline content |
### Import Management (3 tools)
| Tool | Description |
|------|-------------|
| `cc_organize_imports` | Sort & deduplicate Python imports per PEP 8 |
| `cc_diagnose_imports` | Detect unused imports, duplicates, circular import risks |
| `cc_runtime_import_diagnose` | Run isolated Python runtime imports with timeouts, __init__.py analysis, and circular-import hints |
### JSON Tools (2 tools)
| 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 |
### Encoding & Text (3 tools)
| 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) |
### Scanning (1 tool)
| Tool | Description |
|------|-------------|
| `cc_scan_emoji` | Scan files for emojis with codepoint info |
### Format & Documentation (2 tools)
| 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) |
### Developer Utilities (2 tools)
| 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 |
### Python Assistance (3 tools)
| 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 |
### Export (2 tools)
| 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 |
**Total: 21 developer tools** (`cc_set_language` is also available for runtime language switching)
---
## Shared Tools
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 |
---
## Tool Prefix
All tools use the `cc_` prefix (CodeCommander) to avoid conflicts with FileCommander's `fc_` prefix and other MCP servers.
---
## Security
See [SECURITY.md](SECURITY.md) for detailed security information.
Key points:
- File-modifying tools support preview/dry-run modes where applicable
- Backup creation is enabled by default for destructive operations
- No built-in sandboxing - security is delegated to the MCP client
- Designed for local development use via stdio transport
---
## Development
```bash
npm install
npm run dev # Watch mode
npm run build # One-time build
npm start # Start server
npm test # Run test suite (vitest)
```
### Testing
The project includes a comprehensive test suite covering all 21 developer tools and i18n behavior.
```bash
npm test # Run all tests
npx vitest run # Same as above
npx vitest --watch # Watch mode
```
Tests are verified on **Windows**, **macOS**, and **Linux**.
GitHub Actions runs the build, Vitest suite, and npm package check on Node.js 20, 22, and 24.
---
## Changelog
See [CHANGELOG.md](CHANGELOG.md) for the full version history.
---
## License
[MIT](LICENSE) - Lukas Geiger ([ellmos-ai](https://github.com/ellmos-ai))
---
## History
This project was originally developed as **BACH CodeCommander** (`bach-codecommander-mcp`). It has been renamed to **ellmos CodeCommander** (`ellmos-codecommander-mcp`) as part of the [ellmos-ai](https://github.com/ellmos-ai) organization.
The legacy package name `bach-codecommander-mcp` is deprecated. Please use [`ellmos-codecommander-mcp`](https://www.npmjs.com/package/ellmos-codecommander-mcp) instead:
```bash
npm uninstall -g bach-codecommander-mcp
npm install -g ellmos-codecommander-mcp
```
---
## ellmos-ai Ecosystem
This MCP server is part of the **[ellmos-ai](https://github.com/ellmos-ai)** ecosystem — AI infrastructure, MCP servers, and intelligent tools.
### MCP Server Family
| Server | Tools | Focus | npm |
|--------|-------|-------|-----|
| [FileCommander](https://github.com/ellmos-ai/ellmos-filecommander-mcp) | 46 | Filesystem, process management, interactive sessions, cloud-lock-safe operations | [`ellmos-filecommander-mcp`](https://www.npmjs.com/package/ellmos-filecommander-mcp) |
| **[CodeCommander](https://github.com/ellmos-ai/ellmos-codecommander-mcp)** | **22** | **Code analysis, JSON repair, imports, diffs, regex** | **[`ellmos-codecommander-mcp`](https://www.npmjs.com/package/ellmos-codecommander-mcp)** |
| [Clatcher](https://github.com/ellmos-ai/ellmos-clatcher-mcp) | 12 | File repair, format conversion, batWhat people ask about ellmos-codecommander-mcp
What is ellmos-ai/ellmos-codecommander-mcp?
+
ellmos-ai/ellmos-codecommander-mcp is mcp servers for the Claude AI ecosystem. Developer-focused MCP server with 17 tools for code analysis, JSON repair, import management, Markdown export, diffs and regex testing It has 3 GitHub stars and was last updated today.
How do I install ellmos-codecommander-mcp?
+
You can install ellmos-codecommander-mcp by cloning the repository (https://github.com/ellmos-ai/ellmos-codecommander-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is ellmos-ai/ellmos-codecommander-mcp safe to use?
+
Our security agent has analyzed ellmos-ai/ellmos-codecommander-mcp and assigned a Trust Score of 87/100 (tier: Trusted). See the full breakdown of passed checks and flags on this page.
Who maintains ellmos-ai/ellmos-codecommander-mcp?
+
ellmos-ai/ellmos-codecommander-mcp is maintained by ellmos-ai. The last recorded GitHub activity is from today, with 0 open issues.
Are there alternatives to ellmos-codecommander-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy ellmos-codecommander-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/ellmos-ai-ellmos-codecommander-mcp)<a href="https://claudewave.com/repo/ellmos-ai-ellmos-codecommander-mcp"><img src="https://claudewave.com/api/badge/ellmos-ai-ellmos-codecommander-mcp" alt="Featured on ClaudeWave: ellmos-ai/ellmos-codecommander-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!