通过模型上下文协议(MCP)增强大型语言模型(LLM)能力的综合工具包。此包提供了一系列工具,使LLM能够与外部服务和API交互,扩展其功能远超文本生成。
*nix是我们主要的目标平台,但Windows也应该可以工作。
我们推荐使用uv来管理您的环境。
# 安装uv
curl -LsSf https://astral.sh/uv/install.sh | sh # 对于macOS/Linux
# 或者
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" # 对于Windows
然后您可以使用uvx "mcp-toolbox@latest" stdio作为命令来运行最新版本的MCP服务器。音频和内存工具不包括在默认安装中,您可以通过安装all额外项来包含它们:
[audio]用于音频工具,[memory]用于内存工具,[all]用于所有工具
uvx "mcp-toolbox[all]@latest" stdio
要自动通过Smithery安装Toolbox以增强Claude Desktop的LLM:
npx -y @smithery/cli install @ai-zerolab/mcp-toolbox --client claude
pip install "mcp-toolbox[all]"
然后您可以使用mcp-toolbox stdio作为命令来运行MCP服务器。
可以配置以下环境变量:
FIGMA_API_KEY:Figma集成的API密钥TAVILY_API_KEY:Tavily集成的API密钥DUCKDUCKGO_API_KEY:DuckDuckGo集成的API密钥BFL_API_KEY:Flux图像生成API的API密钥内存工具将数据存储在以下位置:
~/Documents/zerolab/mcp-toolbox/memory(通过iCloud同步设备)~/.zerolab/mcp-toolbox/memory要使用mcp-toolbox与Claude Desktop/Cline/Cursor/...,请在配置文件中添加以下内容:
{
"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"
}
}
}
}
对于全部特性:
{
"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"
}
}
}
}
您可以使用以下命令生成调试配置模板:
uv run generate_config_template.py
| 工具 | 描述 |
|---|---|
execute_command | 执行一个命令行指令 |
| 工具 | 描述 |
|---|---|
read_file_content | 从文件读取内容 |
write_file_content | 将内容写入文件 |
replace_in_file | 使用正则表达式替换文件中的内容 |
list_directory | 列出目录内容并提供详细信息 |
| 工具 | 描述 |
|---|---|
figma_get_file | 根据键获取Figma文件 |
figma_get_file_nodes | 获取Figma文件中的特定节点 |
figma_get_image | 获取Figma文件中节点的图片 |
figma_get_image_fills` | 获取Figma文件中使用的图片的URL |
figma_get_comments | 获取Figma文件上的评论 |
figma_post_comment | 在Figma文件上发布评论 |
figma_delete_comment | 删除Figma文件上的评论 |
figma_get_team_projects | 获取团队项目 |
figma_get_project_files | 获取项目的文件 |
figma_get_team_components | 获取团队组件 |
figma_get_file_components | 从文件获取组件 |
figma_get_component | 根据键获取组件 |
figma_get_team_component_sets | 获取团队组件集 |
figma_get_team_styles | 获取团队样式 |
figma_get_file_styles | 从文件获取样式 |
figma_get_style | 根据键获取样式 |
| 工具 | 描述 |
|---|---|
xiaoyuzhoufm_download | 从XiaoyuZhouFM下载播客剧集,可选自动将m4a转换为mp3 |
| 工具 | 描述 |
|---|---|
get_audio_length | 获取音频文件的长度(秒) |
get_audio_text | 从音频文件的特定时间范围内获取转录文本 |
| 工具 | 描述 |
|---|---|
think | 使用该工具思考某事并将想法追加到日志中 |
get_session_id | 获取当前会话ID |
remember | 将记忆(简短和详细)存储在记忆数据库中 |
recall | 使用语义搜索从数据库查询记忆 |
forget | 清除记忆数据库中的所有记忆 |
| 工具 | 描述 |
|---|---|
convert_file_to_markdown | 使用MarkItDown将任何文件转换为Markdown |
convert_url_to_markdown | 使用MarkItDown将URL转换为Markdown |
| 工具 | 描述 |
|---|---|
get_html | 从URL获取HTML内容 |
save_html | 将URL的HTML保存到文件中 |
search_with_tavily | 使用Tavily搜索网络(需要API密钥) |
search_with_duckduckgo | 使用DuckDuckGo搜索网络(需要API密钥) |
| 工具 | 描述 |
|---|---|
flux_generate_image | 使用Flux API生成图像并将其保存到文件中 |
# 使用stdio传输运行(默认)
mcp-toolbox stdio
# 使用SSE传输运行
mcp-toolbox sse --host localhost --port 9871
分叉仓库并将其克隆到您的本地机器。
# 以开发模式安装
make install
# 激活虚拟环境
source .venv/bin/activate # 对于macOS/Linux
# 或者
.venv\Scripts\activate # 对于Windows
make test
make check
make docs
要添加一个新的API集成:
config.py以包含所需的API密钥mcp_toolbox/中创建一个新的模块请参阅开发指南以获取更详细的说明。
欢迎贡献!请随意提交Pull Request。
git checkout -b feature/amazing-feature)git commit -m '添加一些惊人的功能')git push origin feature/amazing-feature)本项目根据仓库中包含的许可证条款进行许可。