Skip to main content
Glama

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


Related MCP server: Code Buddy

πŸš€ 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

Avatar

Name

Role

πŸ‘€

alexkowalski

Core maintainer

πŸ‘€

priya-dev

Git tools, caching

πŸ‘€

t.brennan

Validator, security hardening

πŸ‘€

lucaskristina-bot

CI/CD, releases


πŸ“ˆ 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


Available Tools

9 tools
file_infoB

Get metadata about a file or directory

Inputs: path (required).

get_environmentC

Get current environment variables (filtered for safety)

Inputs: filter.

git_branchesC

List local and remote branches

Inputs: remote, repoPath.

git_diffC

Show changes between commits, working tree, etc.

Inputs: staged, target, repoPath.

git_logC

Show commit history

Inputs: oneline, maxCount, repoPath.

list_directoryC

List contents of a directory

Inputs: path (required), recursive, showHidden.

process_listA

List currently running processes

Inputs: no named parameters.

run_commandB

Execute a shell command and return stdout/stderr

Inputs: command (required), cwd, env, timeoutMs.

write_fileC

Write or overwrite a file with given content

Inputs: path (required), content (required), createDirs.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.1/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool has a clear, distinct purpose: file operations (write, list, info), system operations (run command, env, processes), and git operations (log, diff, branches). No overlap between categories or within categories.

    Naming Consistency4/5

    Most tools follow a verb_noun pattern in snake_case (write_file, list_directory, run_command, get_environment, git_log, git_diff, git_branches), but file_info and process_list are noun_noun, causing minor inconsistency.

    Tool Count5/5

    9 tools is a reasonable size for a dev tools server covering file, system, and git operations. Not too few to be trivial nor too many to be overwhelming.

    Completeness2/5

    Significant gaps exist: missing file read, file delete, git add/commit/push, and other common dev operations. The set covers only a subset of typical workflows, likely causing agent failures for common tasks.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      A comprehensive MCP server with RESTful API that enables file operations, command execution, project management, and AI integration for remote development control with security features and real-time communication.
      39 npm
      MIT
    • A
      license
      C
      quality
      D
      maintenance
      A comprehensive MCP server that provides AI assistants with tools for file system management, Git integration, and shell command execution. It features specialized code utilities for analysis, formatting, and linting to enhance development workflows within Claude Desktop.
      28
      7
      MIT
    • A
      license
      C
      quality
      D
      maintenance
      An experimental MCP server that enables AI assistants to interact with VS Code workspaces through file operations, code execution, and Git management. It also provides tools for Docker integration, project scaffolding, and secure command execution using project-specific configurations.
      76
      22 npm
      3
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      A universal MCP server that provides AI agents with structured tools for filesystem, database, shell, and git operations, enabling seamless interaction with projects.
      19
      MIT