A modular MCP server that provides commonly used developer tools for AI coding agents
README
MCP DevTools
A single, high-performance MCP server that replaces many Node.js and Python-based MCP servers with one efficient Go binary, providing access to essential developer tools through a unified, modular interface that can be easily extended with new tools.
Default Tools
graph LR
A[MCP DevTools<br>Server]
A --> B[Search &<br>Discovery]
A --> E[Intelligence &<br>Memory]
A --> F[Utilities]
B --> B_Tools[๐ Internet Search<br>๐ก Web Fetch<br>๐ฆ Package Search<br>๐ Package Documentation<br>๐ GitHub]
E --> E_Tools[๐ง Think Tool]
F --> F_Tools[๐งฎ Calculator<br>๐ต Find Long Files]
classDef components fill:#E6E6FA,stroke:#756BB1,color:#756BB1
classDef decision fill:#FFF5EB,stroke:#FD8D3C,color:#E6550D
classDef data fill:#EFF3FF,stroke:#9ECAE1,color:#3182BD
classDef process fill:#EAF5EA,stroke:#C6E7C6,color:#77AD77
class A components
class B,B_Tools decision
class E,E_Tools data
class F,F_Tools process
Loading
Additional Tools (Disabled by Default)
graph LR
A[MCP DevTools<br>Server]
A --> B[Search &<br>Discovery]
A --> C[Document<br>Processing]
A --> E[Intelligence &<br>Memory]
A --> F[Utilities]
A --> G[Agents]
A --> D[UI Component<br>Libraries]
A --> H[MCP]
B --> B_Tools[๐ Terraform Docs<br>โ๏ธ AWS Documentation & Pricing]
C --> C_Tools[๐ Document Processing<br>๐ Excel Spreadsheets<br>๐ PDF Processing]
E --> E_Tools[๐ข Sequential Thinking<br>๐ธ๏ธ Memory Graph]
F --> F_Tools[๐ฌ๐ง AmericanโEnglish<br>๐ API Integrations<br>๐ Filesystem<br>โ๏ธ Code Skim<br>๐ Code Search<br>๐ท๏ธ Code Rename]
G --> G_Tools[๐ค Claude Code<br>๐ฏ Codex CLI<br>๐ Copilot CLI<br>โจ Gemini CLI<br>๐ป Kiro]
D --> D_Tools[๐จ ShadCN UI<br>โจ Magic UI<br>โก Aceternity UI]
H --> H_Proxy[๐ MCP Proxy]
classDef components fill:#E6E6FA,stroke:#756BB1,color:#756BB1
classDef llm fill:#E5F5E0,stroke:#31A354,color:#31A354
classDef process fill:#EAF5EA,stroke:#C6E7C6,color:#77AD77
classDef data fill:#EFF3FF,stroke:#9ECAE1,color:#3182BD
classDef decision fill:#FFF5EB,stroke:#FD8D3C,color:#E6550D
classDef api fill:#FFF5F0,stroke:#FD9272,color:#A63603
classDef ui fill:#F3E5F5,stroke:#AB47BC,color:#8E24AA
class A components
class B,B_Tools decision
class C,C_Tools api
class D,D_Tools ui
class E,E_Tools data
class F,F_Tools process
class G,G_Tools llm
class H_Proxy api
Loading
Why I Built MCP DevTools
๐ Single Binary Solution
Replace multiple potentially resource-heavy Node.js/Python MCP servers, each spawned for every client tool you use
One binary, one configuration, consistent performance
Built in Go for speed and efficiency and because I'm not smart enough to write Rust
Minimal memory footprint compared to multiple separate servers
Fast startup and response times
Download one binary, configure once - or compile from source
Works out of the box for most tools
OpenTelemetry support for tracing and metrics
๐ Comprehensive Tool Suite For Agentic Coding
20+ essential developer agent tools in one package
No need to manage multiple MCP server installations
Consistent API across all tools
Modular design with tool registry allowing for easy addition of new tools
Quickstart
Quick Install / Update
If you have Golang installed, simply run go install github.com/sammcj/mcp-devtools@HEAD and it will be installed to your $GOPATH/bin.
Download the latest release and installs to an appropriate location (respects $GOPATH/bin or uses ~/.local/bin)
Remove macOS quarantine attributes automatically
Generate example MCP client configurations in ~/.mcp-devtools/examples/
Open your file manager to show the example configs and show you where to configure your MCP clients
๐ Quick Install Customisation (Click Here)
Customisation:
# Dry run (shows what would be done without making changes)
DRY_RUN=1 curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash
# Install to a specific directory
INSTALL_DIR=/custom/path curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash
# Install a specific version
VERSION=0.50.0 curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash
# Skip example config generation
NO_CONFIG=1 curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash
# Skip all confirmation prompts (for automation)
FORCE=1 curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash
Manual Installation
๐ Manual Installation (Click Here)
You have a few other options to make MCP DevTools available to your MCP clients:
This will respect your $GOPATH/bin if it's in your PATH, and automatically configure example MCP client settings.
Golang option 2: Download at runtime
Note that while go run makes it easy to get started, it means every time your client starts to download the tool may not be what you want in the long run.
MCP Client Configuration:
{
"mcpServers": {
"dev-tools": {
"type": "stdio",
"command": "go",
"args": ["run", "github.com/sammcj/mcp-devtools@HEAD"],
"env": {
"ENABLE_ADDITIONAL_TOOLS": "security,sequential_thinking,code_skim,code_rename",
"DISABLED_TOOLS": "",
"NOTE_FOR_HUMANS": "A minimal set of tools are enabled by default, MCP DevTools provides many additional useful tools including efficient Context7 documentation search, AWS documentation, Frontend UI Framework templates, Code search and optimisation and many others, visit https://github.com/sammcj/mcp-devtools for more information on available tools and configuration"
}
}
}
}
Or if you're using Claude Code you can also add it via the CLI:
claude mcp add --transport stdio mcp-devtools go run github.com/sammcj/mcp-devtools@HEAD
go install github.com/sammcj/mcp-devtools@HEAD
echo"${GOPATH}/bin/mcp-devtools"# Use this path in your MCP configuration, if your GOPATH is not set, please check your Go installation / configuration.# If you're on macOS, you'll also need to run the following command to allow the downloaded binary to run:
xattr -r -d com.apple.quarantine ${GOPATH}/bin/mcp-devtools
Update your MCP client to add the MCP DevTools server configuration, replacing /path/to/mcp-devtools with the actual path to the binary (e.g. /Users/samm/go/bin/mcp-devtools):
{
"mcpServers": {
"dev-tools": {
"type": "stdio",
"command": "/path/to/mcp-devtools",
"env": {
"ENABLE_ADDITIONAL_TOOLS": "security,sequential_thinking,code_skim,code_rename",
"DISABLED_TOOLS": "",
"NOTE_FOR_HUMANS": "A minimal set of tools are enabled by default, MCP DevTools provides many additional useful tools including efficient Context7 documentation search, AWS documentation, Frontend UI Framework templates, Code search and optimisation and many others, visit https://github.com/sammcj/mcp-devtools for more information on available tools and configuration"
}
}
}
}
If you do not have, and do not want to install Golang, you can download the latest release binary from the releases page.
# If you're on macOS, you'll also need to run the following command to allow the downloaded binary to run:
xattr -r -d com.apple.quarantine mcp-devtools
Configure your MCP client to use the downloaded binary (replacing /path/to/mcp-devtools ):
{
"mcpServers": {
"dev-tools": {
"type": "stdio",
"command": "/path/to/mcp-devtools",
"env": {
"ENABLE_ADDITIONAL_TOOLS": "security,sequential_thinking,code_skim,code_rename",
"DISABLED_TOOLS": "",
"NOTE_FOR_HUMANS": "A minimal set of tools are enabled by default, MCP DevTools provides many additional useful tools including efficient Context7 documentation search, AWS documentation, Frontend UI Framework templates, Code search and optimisation and many others, visit https://github.com/sammcj/mcp-devtools for more information on available tools and configuration"
}
}
}
}
Replacing /path/to/mcp-devtools with your actual binary path (e.g., /Users/yourname/go/bin/mcp-devtools).
Note: The BRAVE_API_KEY is optional and only needed if you want to use the Brave Search provider. Other providers like Google, Kagi, SearXNG, and DuckDuckGo are also available. See the Internet Search documentation for more details.
All environment variables are optional, but if you want to use specific search providers or document processing features, you may need to provide the the appropriate variables.
General:
LOG_LEVEL - Logging level: debug, info, warn, error (default: warn). Logs are written to ~/.mcp-devtools/logs/mcp-devtools.log for all transports. Stdio transport uses minimum warn level and never logs to stdout/stderr to prevent MCP protocol pollution.
LOG_TOOL_ERRORS - Enable logging of failed tool calls to ~/.mcp-devtools/logs/tool-errors.log (set to true to enable). Logs older than 60 days are automatically removed on server startup.
ENABLE_ADDITIONAL_TOOLS - Comma-separated list to enable security-sensitive tools (e.g. security,security_override,filesystem,claude-agent,codex-agent,gemini-agent,kiro-agent,process_document,pdf,memory,terraform_documentation,sequential-thinking)
DISABLED_TOOLS - Comma-separated list of functions to disable (e.g. think,internet_search)
# Enable security framework and override tool# You may optionally also add 'security_override' if you want a tool the agent can use to override security warnings
ENABLE_ADDITIONAL_TOOLS="security"
Configuration is managed through ~/.mcp-devtools/security.yaml with sensible defaults.
All HTTP-based tools automatically support proxy configuration through standard environment variables:
# HTTPS proxy (preferred)export HTTPS_PROXY="http://proxy.company.com:8080"# HTTP proxy (fallback)export HTTP_PROXY="http://proxy.company.com:8080"# With authenticationexport HTTPS_PROXY="http://username:password@proxy.company.com:8080"# Run with proxy
./bin/mcp-devtools stdio
Supported tools: All network-based tools including package_docs, internet_search, webfetch, github, aws_docs, and others automatically respect proxy settings when configured.
Security: Proxy credentials are automatically redacted from logs for security.
Docker Support
# Pull the image (main is latest)
docker pull ghcr.io/sammcj/mcp-devtools:main
# Run
docker run -d --name mcp-devtools -p 18080:18080 --restart always ghcr.io/sammcj/mcp-devtools:main
# Run with proxy support
docker run -d --name mcp-devtools -p 18080:18080 \
-e HTTPS_PROXY="http://proxy.company.com:8080" \
--restart always ghcr.io/sammcj/mcp-devtools:main
Logging
MCP DevTools maintains two log files in ~/.mcp-devtools/logs/:
Application Logs (mcp-devtools.log):
Contains all application logs at the configured level
Stdio transport: Always logs to file (never to stderr to prevent MCP protocol pollution)
HTTP/SSE transports: Logs to file at configured level
Tool Error Logs (tool-errors.log):
Failed tool executions with arguments and error details
Enable via LOG_TOOL_ERRORS=true environment variable
Automatically rotates logs older than 60 days
Useful for debugging tool calling issues
Example:
# Enable debug logging for HTTP mode
LOG_LEVEL=debug mcp-devtools --transport http
# Enable tool error logging (works with any transport)
LOG_TOOL_ERRORS=true mcp-devtools
Observability
MCP DevTools includes optional OpenTelemetry integration for distributed tracing and metrics.
Tracing - Track tool execution spans with HTTP client operations:
# Export traces to OTLP endpoint
MCP_OTEL_ENDPOINT=https://your-oltp-endpoint
Metrics - Opt-in performance and usage metrics:
# Default enabled traces/metrics when OTEL is enabled
MCP_METRICS_GROUPS=tool,session,security
# Include cache metrics
MCP_METRICS_GROUPS=tool,session,security,cache
Issues: GitHub Issues, please note that I built this tool for my own use and it is not a commercially supported product, so if you can - please raise a PR instead of an issue.
Contributing
Contributions welcome! This project follows standard Go development practices and includes comprehensive tests.
# Development setup
git clone https://github.com/sammcj/mcp-devtools.git
cd mcp-devtools
make deps
make test
make build
# Benchmark tool token costs
ENABLE_ADDITIONAL_TOOLS=<your new tool name here> make benchmark-tokens
# Run security checks, see make help
make inspect # launches the MCP inspector tool
Disclaimer
No warranty is provided for this software. Use at your own risk. The author is not responsible for any damages or issues arising from its use.
License
Apache Public License 2.0 - Copyright 2025 Sam McLeod
Release History
Version
Changes
Urgency
Date
v0.59.53
## Changes in this Release ### [0.59.53](https://github.com/sammcj/mcp-devtools/compare/v0.59.52...v0.59.53) (2026-04-19) ## Installation ### Quick Install ```shell curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash ``` ### Manual Install #### Option 1: Install with `go install` ```shell go install github.com/sammcj/mcp-devtools@HEAD echo "${GOPATH}/bin/mcp-devtools" # Use this path in your MCP configuration, if your GOPATH is not set, please
High
4/19/2026
v0.59.52
## Changes in this Release ### [0.59.52](https://github.com/sammcj/mcp-devtools/compare/v0.59.51...v0.59.52) (2026-04-13) ## Installation ### Quick Install ```shell curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash ``` ### Manual Install #### Option 1: Install with `go install` ```shell go install github.com/sammcj/mcp-devtools@HEAD echo "${GOPATH}/bin/mcp-devtools" # Use this path in your MCP configuration, if your GOPATH is not set, please
High
4/13/2026
v0.59.51
## Changes in this Release ### [0.59.51](https://github.com/sammcj/mcp-devtools/compare/v0.59.50...v0.59.51) (2026-04-11) ## Installation ### Quick Install ```shell curl -fsSL https://raw.githubusercontent.com/sammcj/mcp-devtools/main/install.sh | bash ``` ### Manual Install #### Option 1: Install with `go install` ```shell go install github.com/sammcj/mcp-devtools@HEAD echo "${GOPATH}/bin/mcp-devtools" # Use this path in your MCP configuration, if your GOPATH is not set, please
mcp-tidy๐งน Simplify your MCP servers with mcp-tidy, clearing server bloat to enhance performance and improve tool selection in Claude Code.main@2026-04-21
tekmetric-mcp๐ Ask questions about your shop data in natural language and get instant answers about appointments, customers, and repair orders with Tekmetric MCP.main@2026-04-21
trpc-agent-gotrpc-agent-go is a powerful Go framework for building intelligent agent systems using large language models (LLMs) and tools.v1.8.0
mcp-ts-coreAgent-native TypeScript framework for building MCP servers. Build tools, not infrastructure.main@2026-04-21