Configurable Command MCP Server
A flexible MCP server that executes arbitrary command-line tools defined in a configuration file.
Configurable Command MCP Server
A flexible Model Context Protocol (MCP) server that allows you to define and execute arbitrary command-line tools through configuration files. Perfect for giving Claude Desktop access to specific command-line utilities in a secure, controlled manner.
Features
- 🛠️ Configuration-driven: Define tools via JSON without modifying code
- 🔒 Secure execution: Parameter sanitization, directory restrictions, and command allowlisting
- ⚡ Rate limiting: Prevent abuse with configurable execution limits
- 📝 Parameter validation: Type checking, patterns, and required/optional parameters
- 🎯 Directory scoping: Restrict tool execution to specific directories
- ⏱️ Timeout control: Configurable execution timeouts per tool
- 📊 Output management: Size limits and structured result formatting
Setup Instructions
1. Create the project directory and install dependencies
cd /Users/dewoller/code/generic_mcp npm install
2. Build the TypeScript code
npm run build
3. Configure your tools
Edit the tools.json
file to define your command-line tools. The file is already configured with useful examples like:
list_files
: List directory contentsgrep_search
: Search for patterns in filesword_count
: Count lines/words/charactersgit_status
: Check git repository statusfind_files
: Find files by pattern- And more!
4. Configure Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{ "mcpServers": { "command-executor": { "command": "node", "args": ["/Users/dewoller/code/generic_mcp/dist/index.js"], "env": { "CONFIG_PATH": "/Users/dewoller/code/generic_mcp/tools.json" } } } }
5. Restart Claude Desktop
After saving the configuration, restart Claude Desktop to load the MCP server.
Testing the Installation
Run Integration Tests
npm run test:integration
This will test several tools and show you their output.
Manual Testing in Development Mode
Run in development mode (with TypeScript)
npm run dev
Or run the built version
npm start
Usage Examples
Once configured, you can ask Claude to use these tools:
- "List all JavaScript files in my code directory"
- "Search for TODO comments in the project"
- "Show me the git status"
- "Count lines in all Python files"
- "Find all markdown files"
Adding Custom Tools
To add a new tool, edit tools.json
:
{ "name": "my_tool", "description": "Description for Claude", "command": "actual-command", "args": ["-flag", "{parameter}"], "parameters
Related Servers
Hashnode MCP Server
An MCP server for interacting with the Hashnode API.
CodeSeeker
Advanced code search and transformation powered by ugrep and ast-grep for modern development workflows.
Vibe-Coder
A structured development workflow for LLM-based coding, including feature clarification, planning, phased development, and progress tracking.
Quantum Computation
Perform quantum computations using OpenAI and IBM Quantum APIs.
Feishu MCP Server
An MCP server with built-in Feishu OAuth authentication, deployable on Cloudflare Workers.
Revit MCP
Interact with Autodesk Revit using the MCP protocol. This server provides AI tools and requires the corresponding Revit plugin to function.
AiCore Project
A unified framework for integrating various language models and embedding providers to generate text completions and embeddings.
NestJS MCP Server Module
A NestJS module for building MCP servers to expose tools and resources for AI, with support for multiple transport types.
Super Secret MCP Server
A fun tool to generate random combinations of US States and signature soups.
SkyDeckAI Code
A comprehensive toolkit for AI-driven development, offering file system operations, code analysis, execution, web searching, and system information retrieval.