mcp-toolbox
Maintenance of a set of tools to enhance LLM through MCP protocols.
Documentation
mcp-toolbox
A comprehensive toolkit for enhancing LLM capabilities through the Model Context Protocol (MCP). This package provides a collection of tools that allow LLMs to interact with external services and APIs, extending their functionality beyond text generation.
- GitHub repository:
- (WIP)Documentation:
Features
> \*nix is our main target, but Windows should work too.
- Command Line Execution: Execute any command line instruction through LLM
- Figma Integration: Access Figma files, components, styles, and more
- Extensible Architecture: Easily add new API integrations
- MCP Protocol Support: Compatible with Claude Desktop and other MCP-enabled LLMs
- Comprehensive Testing: Well-tested codebase with high test coverage
Installation
Using uv (Recommended)
We recommend using uv to manage your environment.
# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh # For macOS/Linux
# or
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" # For WindowsThen you can use `uvx "mcp-toolbox@latest" stdio` as commands for running the MCP server for latest version. Audio and memory tools are not included in the default installation., you can include them by installing the `all` extra:
> [audio] for audio tools, [memory] for memory tools, [all] for all tools
uvx "mcp-toolbox[all]@latest" stdioInstalling via Smithery
To install Toolbox for LLM Enhancement for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @ai-zerolab/mcp-toolbox --client claudeUsing pip
pip install "mcp-toolbox[all]"And you can use `mcp-toolbox stdio` as commands for running the MCP server.
Configuration
Environment Variables
The following environment variables can be configured:
- `FIGMA_API_KEY`: API key for Figma integration
- `TAVILY_API_KEY`: API key for Tavily integration
- `DUCKDUCKGO_API_KEY`: API key for DuckDuckGo integration
- `BFL_API_KEY`: API key for Flux image generation API
Memory Storage
Memory tools store data in the following locations:
- macOS: `~/Documents/zerolab/mcp-toolbox/memory` (syncs across devices via iCloud)
- Other platforms: `~/.zerolab/mcp-toolbox/memory`
Full Configuration
To use mcp-toolbox with Claude Desktop/Cline/Cursor/..., add the following to your configuration file:
{
"mcpServers": {
"zerolab-toolbox": {
"command": "uvx",
"args": ["--prerelease=allow", "mcp-toolbox@latest", "stdio"],
"env": {
"FIGMA_API_KEY": "your-figma-api-key",
"TAVILY_API_KEY": "your-tavily-api-key",
"DUCKDUCKGO_API_KEY": "your-duckduckgo-api-key",
"BFL_API_KEY": "your-bfl-api-key"
}
}
}
}For full features:
{
"mcpServers": {
"zerolab-toolbox": {
"command": "uvx",
"args": [
"--prerelease=allow",
"--python=3.12",
"mcp-toolbox[all]@latest",
"stdio"
],
"env": {
"FIGMA_API_KEY": "your-figma-api-key",
"TAVILY_API_KEY": "your-tavily-api-key",
"DUCKDUCKGO_API_KEY": "your-duckduckgo-api-key",
"BFL_API_KEY": "your-bfl-api-key"
}
}
}
}You can generate a debug configuration template using:
uv run generate_config_template.pyAvailable Tools
Command Line Tools
| Tool | Description |
|---|---|
| `execute_command` | Execute a command line instruction |
File Operations Tools
| Tool | Description |
|---|---|
| `read_file_content` | Read content from a file |
| `write_file_content` | Write content to a file |
| `replace_in_file` | Replace content in a file using regular expressions |
| `list_directory` | List directory contents with detailed information |
Figma Tools
| Tool | Description |
|---|---|
| `figma_get_file` | Get a Figma file by key |
| `figma_get_file_nodes` | Get specific nodes from a Figma file |
| `figma_get_image` | Get images for nodes in a Figma file |
| `figma_get_image_fills` | Get URLs for images used in a Figma file |
| `figma_get_comments` | Get comments on a Figma file |
| `figma_post_comment` | Post a comment on a Figma file |
| `figma_delete_comment` | Delete a comment from a Figma file |
| `figma_get_team_projects` | Get projects for a team |
| `figma_get_project_files` | Get files for a project |
| `figma_get_team_components` | Get components for a team |
| `figma_get_file_components` | Get components from a file |
| `figma_get_component` | Get a component by key |
| `figma_get_team_component_sets` | Get component sets for a team |
| `figma_get_team_styles` | Get styles for a team |
| `figma_get_file_styles` | Get styles from a file |
| `figma_get_style` | Get a style by key |
XiaoyuZhouFM Tools
| Tool | Description |
|---|---|
| `xiaoyuzhoufm_download` | Download a podcast episode from XiaoyuZhouFM with optional automatic m4a to mp3 conversion |
Audio Tools
| Tool | Description |
|---|---|
| `get_audio_length` | Get the length of an audio file in seconds |
| `get_audio_text` | Get transcribed text from a specific time range in an audio file |
Memory Tools
| Tool | Description |
|---|---|
| `think` | Use the tool to think about something and append the thought to the log |
| `get_session_id` | Get the current session ID |
| `remember` | Store a memory (brief and detail) in the memory database |
| `recall` | Query memories from the database with semantic search |
| `forget` | Clear all memories in the memory database |
Markitdown Tools
| Tool | Description |
|---|---|
| `convert_file_to_markdown` | Convert any file to Markdown using MarkItDown |
| `convert_url_to_markdown` | Convert a URL to Markdown using MarkItDown |
Web Tools
| Tool | Description |
|---|---|
| `get_html` | Get HTML content from a URL |
| `save_html` | Save HTML from a URL to a file |
| `search_with_tavily` | Search the web using Tavily (requires API key) |
| `search_with_duckduckgo` | Search the web using DuckDuckGo (requires API key) |
Flux Image Generation Tools
| Tool | Description |
|---|---|
| `flux_generate_image` | Generate an image using the Flux API and save it to a file |
Usage Examples
Running the MCP Server
# Run with stdio transport (default)
mcp-toolbox stdio
# Run with SSE transport
mcp-toolbox sse --host localhost --port 9871Using with Claude Desktop
1. Configure Claude Desktop as shown in the Configuration section
1. Start Claude Desktop
1. Ask Claude to interact with Figma files:
1. Ask Claude to execute command line instructions:
1. Ask Claude to download podcasts from XiaoyuZhouFM:
1. Ask Claude to work with audio files:
1. Ask Claude to convert files or URLs to Markdown:
1. Ask Claude to work with web content:
1. Ask Claude to generate images with Flux:
1. Ask Claude to use memory tools:
Development
Local Setup
Fork the repository and clone it to your local machine.
# Install in development mode
make install
# Activate a virtual environment
source .venv/bin/activate # For macOS/Linux
# or
.venv\Scripts\activate # For WindowsRunning Tests
make testRunning Checks
make checkBuilding Documentation
make docsAdding New Tools
To add a new API integration:
1. Update `config.py` with any required API keys
1. Create a new module in `mcp_toolbox/`
1. Implement your API client and tools
1. Add tests for your new functionality
1. Update the README.md with new environment variables and tools
See the development guide for more detailed instructions.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
1. Fork the repository
1. Create a feature branch (`git checkout -b feature/amazing-feature`)
1. Commit your changes (`git commit -m 'Add some amazing feature'`)
1. Push to the branch (`git push origin feature/amazing-feature`)
1. Open a Pull Request
License
This project is licensed under the terms of the license included in the repository.
Frequently asked questions
What is mcp-toolbox?
mcp-toolbox is Maintenance of a set of tools to enhance LLM through MCP protocols.
How do I install mcp-toolbox?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-toolbox open source?
Yes — it is hosted on GitHub at https://github.com/ai-zerolab/mcp-toolbox and has 31 stars.
Related MCP tools
Cognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.
Automate browser based workflows with AI
Hindsight: Agent Memory That Learns
A privacy-first app that strips AI watermarks from content you own.
Agent framework and applications built upon Qwen>=3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.
The power of Claude Code / GeminiCLI / CodexCLI + [Gemini / OpenAI / OpenRouter / Azure / Grok / Ollama / Custom Model / All Of The Above] working as one.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP