DevToolkit MCP Server
Provides tools for interacting with Git repositories, enabling status checks, commit history, diffs, blame annotations, branch listing, and commit details.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DevToolkit MCP Servershow me the current git status"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DevToolkit MCP Server
A production-quality Model Context Protocol (MCP) server that gives AI assistants like Claude 22 powerful developer tools across 5 domains.
Built with TypeScript, strict types, Zod validation, and clean modular architecture.
Features
📁 File Tools (6)
Tool | Description |
| Read file contents with optional line range |
| Write/append to files, auto-creates directories |
| List files with metadata (size, modified date) |
| Regex search across files with glob patterns |
| File metadata: size, timestamps, permissions |
| Delete files or directories (recursive optional) |
🔧 Git Tools (6)
Tool | Description |
| Working tree status, branch info, ahead/behind |
| Commit history with author, date, message |
| Diff between commits, branches, or working tree |
| Line-by-line authorship for any file |
| List all local and remote branches |
| Full diff and metadata for a specific commit |
🔍 Code Analysis Tools (6)
Tool | Description |
| Cyclomatic complexity, nesting depth, function count |
| Find TODO/FIXME/HACK comments across a codebase |
| Code vs comment vs blank line breakdown |
| Identify programming language from file extension/shebang |
| Detect duplicate code blocks across files |
| Extract and categorize all import statements |
🌐 HTTP Tools (4)
Tool | Description |
| Full HTTP client: GET/POST/PUT/PATCH/DELETE with headers/body |
| Fetch and parse JSON with optional dot-path extraction |
| Batch URL health check with response times |
| Download files from URLs to local paths |
💻 System Tools (6)
Tool | Description |
| OS, CPU, memory, Node version, uptime |
| Read environment variables (sensitive values auto-masked) |
| Execute shell commands (allowlisted for safety) |
| Running processes with CPU/memory usage |
| Disk usage for directories |
| Network interfaces and IP addresses |
Installation
git clone https://github.com/your-username/devtoolkit-mcp
cd devtoolkit-mcp
npm install
npm run buildUsage with Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"devtoolkit": {
"command": "node",
"args": ["/absolute/path/to/devtoolkit-mcp/dist/index.js"]
}
}
}Usage with Cursor / VS Code
Same pattern — point the MCP server config to dist/index.js.
Development
npm run dev # Run with tsx (no build step)
npm run build # Compile TypeScript
npm run lint # ESLintAdvanced MCP Protocol Features
Beyond tools, this server implements the full 2025-06-18 MCP specification:
📂 Resources
Files are exposed as browsable MCP resources — clients (e.g. Claude Desktop) can list, read, and subscribe to changes.
Paginated listing with cursor-based pagination (50 files/page)
Resource templates:
file:///{path}for dynamic file accessSubscriptions: clients receive
notifications/resources/updatedwhen a file changes after a write/deleteList-changed notifications: resource list updates after any file mutation
Annotations: every resource includes
audience,priority, andlastModified
📝 Logging
Structured log notifications sent to the client for every tool call:
8 RFC 5424 severity levels:
debug→emergencyClient can set minimum log level via
logging/setLevelLogs include tool name, args preview, status, and errors
Sensitive values never logged
🔍 Completion
Autocomplete for file paths in resource URI templates:
Triggered when client requests
completion/completeon aref/resourceReturns matching file paths up to 20 suggestions with
hasMoreflag
🗣️ Elicitation
Servers request structured user input before destructive operations:
write_file: if the target file exists, asks user to confirm overwrite (with checkbox UI)delete_file: always asks user to confirm + optionally provide a reasonFalls back gracefully if client doesn't support elicitation (proceeds without prompt)
🤖 Sampling
The server can ask the client's LLM to generate completions:
sampleFromClient()helper exported for use in toolsSpecifies model preferences (prefers Claude Sonnet, falls back to any Claude)
Gracefully no-ops if client doesn't support sampling
Architecture
src/
├── index.ts # MCP server, capabilities, tool routing, elicitation, sampling
├── resources.ts # Resources: list, read, subscribe, completion, pagination
├── tools/
│ ├── files.ts # File system tools
│ ├── git.ts # Git integration (simple-git)
│ ├── code-analysis.ts # Static analysis tools
│ ├── http.ts # HTTP client tools (axios)
│ └── system.ts # OS/system tools
└── utils/
├── errors.ts # Typed error classes, helpers
└── logger.ts # Structured log notifications (RFC 5424)Key design decisions:
Zod validation on every tool input — no silent failures
Typed error classes with error codes for structured debugging
Security:
run_commandhas an explicit allowlist; env vars auto-mask secretsCross-platform: works on Windows, macOS, and Linux
Tech Stack
@modelcontextprotocol/sdk— MCP protocolsimple-git— Git operationsaxios— HTTP clientfast-glob— File pattern matchingzod— Runtime schema validationTypeScript (strict mode)
License
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/tusharrayamajhi/devtoolkit-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server