mcp-dev-tools

mcp-dev-tools

A comprehensive MCP server for developers providing file operations, shell execution, git integration, and smart caching to enhance AI-assisted development.

Category
Visit Server

README

mcp-dev-tools

npm version MCP Compatible License: MIT Stars Downloads

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_diff on Windows paths with spaces
  • โšก Improved cache TTL handling for large files
  • ๐Ÿ“‹ Added process_list tool

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_environment tool 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

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured