mcp-dev-tools
A comprehensive MCP server for developers providing file operations, shell execution, git integration, and smart caching to enhance AI-assisted development.
README
mcp-dev-tools
The most complete MCP server for developers โ file operations, git integration, shell execution, and smart caching. Works with Claude Desktop, Cursor, and any MCP-compatible client.
โจ Why mcp-dev-tools?
Most MCP servers give you one or two basic tools. mcp-dev-tools gives you a full developer toolkit with production-grade internals:
- ๐๏ธ File Tools โ read, write, list, inspect with validation & caching
- ๐ Shell Tools โ safe command execution with output capture
- ๐ฟ Git Tools โ status, log, diff, branches without leaving your AI chat
- โก LRU Cache โ repeated file reads served instantly
- ๐ก๏ธ Built-in Validator โ blocks dangerous commands and unsafe paths
- ๐ Structured Logging โ clean, leveled logs that don't clutter stdio
๐ Quick Start
1. Clone & Install
git clone https://github.com/lucaskristina/mcp-dev-tools.git
cd mcp-dev-tools
npm install
2. Add to Claude Desktop
Open your Claude Desktop config file:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Add the following:
{
"mcpServers": {
"dev-tools": {
"command": "node",
"args": ["C:/path/to/mcp-dev-tools/src/index.js"]
}
}
}
Restart Claude Desktop. You'll see the ๐ icon confirming the server is connected.
3. Add to Cursor
In Cursor settings โ MCP โ Add Server:
{
"name": "dev-tools",
"command": "node",
"args": ["/path/to/mcp-dev-tools/src/index.js"]
}
๐ ๏ธ Available Tools
File Operations
| Tool | Description | Example Prompt |
|---|---|---|
read_file |
Read file contents with caching | "Show me the contents of src/app.js" |
write_file |
Write or overwrite a file | "Save this component to components/Card.jsx" |
list_directory |
Recursive directory listing | "What files are in the src folder?" |
file_info |
Size, dates, permissions metadata | "When was package.json last modified?" |
Shell Execution
| Tool | Description | Example Prompt |
|---|---|---|
run_command |
Execute shell commands safely | "Run the test suite" |
get_environment |
View environment variables | "What's the NODE_ENV?" |
process_list |
List running processes | "What's currently running?" |
Git Integration
| Tool | Description | Example Prompt |
|---|---|---|
git_status |
Working tree status | "What files did I change?" |
git_log |
Commit history | "Show me the last 10 commits" |
git_diff |
Diff against HEAD or branch | "What changed since last commit?" |
git_branches |
List local/remote branches | "What branches do we have?" |
๐ง Configuration
Create an optional mcp-config.json in your project root:
{
"server": {
"maxConcurrentRequests": 10,
"requestTimeoutMs": 30000
},
"tools": {
"enableFileAccess": true,
"enableShellExecution": true,
"allowedPaths": ["./src", "./docs"]
},
"logging": {
"level": "warn"
}
}
| Option | Default | Description |
|---|---|---|
logging.level |
info |
debug / info / warn / error |
tools.allowedPaths |
[cwd] |
Restrict file access to these directories |
tools.enableShellExecution |
true |
Disable to prevent command execution |
server.requestTimeoutMs |
30000 |
Tool execution timeout |
๐งช Test It
After setup, try these prompts in Claude or Cursor:
"List all TypeScript files in my src directory"
"Show me what changed in git since yesterday"
"Run npm test and show me the output"
"Read my .env file and tell me which variables are set"
๐๏ธ Architecture
src/
โโโ index.js # Server entry point & tool registration
โโโ lib/
โ โโโ logger.js # Structured logging (stderr, non-blocking)
โ โโโ config.js # Config loader with defaults & merging
โ โโโ cache.js # LRU cache (200 entries, 2min TTL)
โ โโโ validator.js # Path & command safety checks
โ โโโ metrics.js # Anonymous usage metrics (opt-out below)
โ โโโ utils.js # Shared helpers & error wrappers
โโโ tools/
โโโ file-tools.js # File system operations
โโโ shell-tools.js # Command execution
โโโ git-tools.js # Git repository tools
๐ Anonymous Metrics
mcp-dev-tools collects anonymous usage metrics to help us improve the tool. This includes:
- Node.js version and OS platform (no personal data)
- Which tools are used most frequently
- Error rates by tool type
To opt out, set the environment variable before starting:
MCP_NO_TELEMETRY=1 node src/index.js
Or add to your shell profile:
export MCP_NO_TELEMETRY=1
We never collect file contents, command output, or any user data.
๐ค Contributing
PRs welcome! Please read CONTRIBUTING.md first.
git clone https://github.com/lucaskristina/mcp-dev-tools
cd mcp-dev-tools
npm install
npm test
Contributors
<!-- ALL-CONTRIBUTORS-LIST:START -->
| Avatar | Name | Role |
|---|---|---|
| ๐ค | alexkowalski | Core maintainer |
| ๐ค | priya-dev | Git tools, caching |
| ๐ค | t.brennan | Validator, security hardening |
| ๐ค | lucaskristina-bot | CI/CD, releases |
| <!-- ALL-CONTRIBUTORS-LIST:END --> |
๐ Changelog
v2.3.1 โ 2025-06-18
- ๐ Fixed
git_diffon Windows paths with spaces - โก Improved cache TTL handling for large files
- ๐ Added
process_listtool
v2.3.0 โ 2025-05-30
- โจ Added full git tools suite
- ๐ก๏ธ Validator now blocks 12 additional dangerous patterns
- ๐ Telemetry opt-out via
MCP_NO_TELEMETRY
v2.2.0 โ 2025-04-12
- โจ LRU cache for file reads (2x faster repeated reads)
- โจ
get_environmenttool with sensitive key filtering - ๐ง Config file support (
mcp-config.json)
๐ License
MIT ยฉ lucaskristina
<p align="center"> <sub>Built with โค๏ธ for developers using AI assistants daily.</sub><br> <sub>If this saved you time, consider giving it a โญ</sub> </p>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.