Skip to main content

Maintenance of a set of tools to enhance LLM through MCP protocols.

Project description

mcp-toolbox

Release Build status codecov Commit activity License

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.

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 pip

pip install mcp-toolbox

And you can use mcp-toolbox stdio as commands for running the MCP server.

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 Windows

Then you can use uvx mcp-toolbox stdio as commands for running the MCP server.

To upgrade, use uv tool upgrade mcp-toolbox

Configuration

Environment Variables

The following environment variables can be configured:

  • FIGMA_API_KEY: API key for Figma integration

Claude Desktop Configuration

To use mcp-toolbox with Claude Desktop, add the following to your Claude Desktop configuration file:

{
  "mcpServers": {
    "zerolab-toolbox": {
      "command": "uvx",
      "args": ["mcp-toolbox", "stdio"],
      "env": {
        "FIGMA_API_KEY": "your-figma-api-key"
      }
    }
  }
}

You can generate a debug configuration template using:

uv run generate_config_template.py

Available 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

Usage Examples

Running the MCP Server

# Run with stdio transport (default)
mcp-toolbox stdio

# Run with SSE transport
mcp-toolbox sse --host localhost --port 9871

Using with Claude Desktop

  1. Configure Claude Desktop as shown in the Configuration section
  2. Start Claude Desktop
  3. Ask Claude to interact with Figma files:
    • "Can you get information about this Figma file: 12345abcde?"
    • "Show me the components in this Figma file: 12345abcde"
    • "Get the comments from this Figma file: 12345abcde"
  4. Ask Claude to execute command line instructions:
    • "What files are in the current directory?"
    • "What's the current system time?"
    • "Show me the contents of a specific file."

Development

Local Setup

# Clone the repository
git clone https://github.com/yourusername/mcp-toolbox.git
cd mcp-toolbox

# Create and activate a virtual environment
uv venv
source .venv/bin/activate  # For macOS/Linux
# or
.venv\Scripts\activate  # For Windows

# Install in development mode
uv pip install -e ".[dev]"

Running Tests

make test

Running Checks

make check

Building Documentation

make docs

Adding New Tools

To add a new API integration:

  1. Update config.py with any required API keys
  2. Create a new module in mcp_toolbox/
  3. Implement your API client and tools
  4. Add tests for your new functionality
  5. 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
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the terms of the license included in the repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_toolbox-0.0.3.tar.gz (83.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_toolbox-0.0.3-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file mcp_toolbox-0.0.3.tar.gz.

File metadata

  • Download URL: mcp_toolbox-0.0.3.tar.gz
  • Upload date:
  • Size: 83.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.2

File hashes

Hashes for mcp_toolbox-0.0.3.tar.gz
Algorithm Hash digest
SHA256 137ef89b67f1c5c9ddb1884401eedfc499312cd7d3330227462cd0c2dd095c48
MD5 019bff1d1ba7eff4dd841a24b8a149e7
BLAKE2b-256 84a7af22209bc1933fda965a11d28b7329172b1ce71adbbaa18b906cb225bfe2

See more details on using hashes here.

File details

Details for the file mcp_toolbox-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_toolbox-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2860e79f54e163d3e30b95ca10ed07afa2923bdf7af6b68d9d9c1d6e52bdb5b5
MD5 7a2877f6491ebe50acf2068fc8cdb57d
BLAKE2b-256 5625285d0702a005258fa7735bb92335a24138f3be75649b43a3b42fec216d4a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page