mcp_server_for_claudes_toolbox
Exposes a set of CLI tools (test generation, documentation generation, linting, test running, code search) to AI assistants via MCP, allowing them to perform these tasks through natural language.
README
mcp_server_for_claudes_toolbox
Author: Claude 3.7 Sonnet, Kyle Rose
Version: 0.2.0
A server application that exposes Claude's Toolbox utility programs via the Model Context Protocol (MCP), making them accessible to AI assistants like Claude through different interfaces (Claude Code, Claude Desktop, Copilot, etc.).
Features
- Arbitrary function registration and invocation. Just add a function to the
tools/functionsfolder, name the file after it, and it will be available for use. - Exposes a set of standalone command-line interface (CLI) tools for various tasks. Current CLI tools include:
- test_generator: Creates unittest test files from JSON specifications.
- documentation_generator: Generates markdown documentation from Python source code.
- lint_a_python_codebase: Fixes common linting issues in Python files like blank lines, trailing spaces, and newlines.
- run_tests_and_save_their_results: Runs unit tests, type checking, and linting for Python projects, and saves the results as JSON and Markdown files.
- codebase_search: Searches code with pattern matching.
- Each CLI tool is a complete program unto itself and can be set up to use its own virtual environments. The server will automatically activate the appropriate virtual environment for each tool when called.
- Customizable server settings in
configs.yamlfile, allowing for easy changes settings like verbosity, log level, host, port, and reload options. - Cross-platform tool support for WSL2, Linux/MacOS, and Windows. This allows the server to register and run tools written for a Posix environment on Windows, and vice versa. Just add the appropriate config code to the MCP config file for your platform.
Configuration
The server can be configured through the configs.yaml file:
verbose: True
log_level: 10
host: '0.0.0.0'
port: 8000
reload: True
load_from_paths_csv: True
Requirements
- WSL2, Linux. Window support is forthcoming.
- Python 3.12+
- mcp # for MCP server
- aiofile # for async file operations
- anthropic # for LLM API access from Anthropic
- coverage # for test coverage
- duckdb # for cross-platform database operations
- flask # for web framework
- flake8 # for linting
- httpx # for async HTTP requests
- jinja2 # for templating
- mcp # for Claude tool server API
- multiformats # for CID creation
- mypy # for type checking
- numpy # for numerical operations
- openai # for LLM api access from OpenAI
- psutil # for system and process utilities
- pydantic # for data validation and settings management
- pytest # for testing
- pyyaml # for YAML parsing
- tqdm # for progress bars
Installation
- Clone this repository:
git clone https://github.com/the-ride-never-ends/claudes_toolbox
- Run the installation script:
For Linux/MacOS:
cd claudes_toolbox
bash ./install_server.sh
For Windows:
cd claudes_toolbox
cmd .\install_server.bat
- Copy-paste the respective config code into the relevant MCP config file.
For Claude Desktop for Windows, this is typically located at
C:\Users\<username>\AppData\Roaming\Claude\claude_desktop_config.json.
Server hosted on WSL:
run_wsl.config
"claudes-toolbox": {
"command": "wsl",
"args": [
"bash",
"-c",
"source ~/.bashrc && ~/claudes_toolbox/mcp_server_for_claudes_toolbox/start_claudes_toolbox_server.sh --called-with-wsl"
]
}
Server hosted on Linux/MacOS:
run_linux.config
"claudes-toolbox": {
"command": "bash",
"args": [
"-c",
"source ~/.bashrc || source ~/.bash_profile || source ~/.zshrc; ~/claudes_toolbox/start_server.sh"
]
}
Server hosted on Windows:
"claudes-toolbox": {
"command": "cmd.exe",
"args": [
"/c",
"C:\\path\\to\\start_server.bat"
]
}
- Git-clone the other repositories into the
claude_toolbox/tools/clidirectory:
cd claudes_toolbox/tools
git clone https://github.com/the-ride-never-ends/documentation_generator
git clone https://github.com/the-ride-never-ends/test_generator
git clone https://github.com/the-ride-never-ends/run_tests_and_save_their_results
git clone https://github.com/the-ride-never-ends/lint_a_python_codebase
git clone https://github.com/the-ride-never-ends/codebase_search
The server will automatically activate the appropriate virtual environment for each tool when called.
Usage
Integrated applications like Copilot, Claude Code, and Claude Desktop can call the server using the MCP protocol. The server starts automatically when the given command is executed.
The server works by:
- Running tools through subprocess calls to the command line
- Using a wrapper function that activates virtual environments
- Exposing each tool with appropriate parameters via the MCP protocol
Directory Structure
mcp_server_for_claudes_toolbox/
├── docs/ # Documentation files
├── tests/ # Test files and test cases
├── utils/ # Utility scripts
├── data/ # Data files used by the program (if any)
├── app.py # MCP server application
├── configs.py # Configurations singleton for the program
├── logger.py # Logger singleton for the program
├── TODO.md # Todo list
├── CHANGELOG.md # Changelog list
├── claude.md # Instructions to Claude in Claude Code API
├── requirements.txt # 3rd-party library requirements
├── install.sh # Set-up venv and install requirements
├── start.sh # Script to start the server
└── README.md # This file
License
MIT
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
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
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.