Labsco
ai-zerolab logo

MCP Toolbox

โ˜… 30

from ai-zerolab

A toolkit for enhancing LLM capabilities by providing tools to interact with external services and APIs via the Model Context Protocol (MCP).

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedAccount requiredNeeds API keys

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.

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

Available Tools

Command Line Tools

ToolDescription
execute_commandExecute a command line instruction

File Operations Tools

ToolDescription
read_file_contentRead content from a file
write_file_contentWrite content to a file
replace_in_fileReplace content in a file using regular expressions
list_directoryList directory contents with detailed information

Figma Tools

ToolDescription
figma_get_fileGet a Figma file by key
figma_get_file_nodesGet specific nodes from a Figma file
figma_get_imageGet images for nodes in a Figma file
figma_get_image_fillsGet URLs for images used in a Figma file
figma_get_commentsGet comments on a Figma file
figma_post_commentPost a comment on a Figma file
figma_delete_commentDelete a comment from a Figma file
figma_get_team_projectsGet projects for a team
figma_get_project_filesGet files for a project
figma_get_team_componentsGet components for a team
figma_get_file_componentsGet components from a file
figma_get_componentGet a component by key
figma_get_team_component_setsGet component sets for a team
figma_get_team_stylesGet styles for a team
figma_get_file_stylesGet styles from a file
figma_get_styleGet a style by key

XiaoyuZhouFM Tools

ToolDescription
xiaoyuzhoufm_downloadDownload a podcast episode from XiaoyuZhouFM with optional automatic m4a to mp3 conversion

Audio Tools

ToolDescription
get_audio_lengthGet the length of an audio file in seconds
get_audio_textGet transcribed text from a specific time range in an audio file

Memory Tools

ToolDescription
thinkUse the tool to think about something and append the thought to the log
get_session_idGet the current session ID
rememberStore a memory (brief and detail) in the memory database
recallQuery memories from the database with semantic search
forgetClear all memories in the memory database

Markitdown Tools

ToolDescription
convert_file_to_markdownConvert any file to Markdown using MarkItDown
convert_url_to_markdownConvert a URL to Markdown using MarkItDown

Web Tools

ToolDescription
get_htmlGet HTML content from a URL
save_htmlSave HTML from a URL to a file
search_with_tavilySearch the web using Tavily (requires API key)
search_with_duckduckgoSearch the web using DuckDuckGo (requires API key)

Flux Image Generation Tools

ToolDescription
flux_generate_imageGenerate an image using the Flux API and save it to a file

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 Windows

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.