mcp工具箱
一个全面的工具包,用于通过模型上下文协议 (MCP) 增强 LLM 功能。该软件包提供了一系列工具,允许 LLM 与外部服务和 API 交互,从而将其功能扩展到文本生成之外。
- GitHub 仓库: https://github.com/ai-zerolab/mcp-toolbox/
- (正在开发中)文档: https://ai-zerolab.github.io/mcp-toolbox/
特征
*nix 是我们的主要目标,但 Windows 也应该可以。
- 命令行执行:通过 LLM 执行任何命令行指令
- Figma 集成:访问 Figma 文件、组件、样式等
- 可扩展架构:轻松添加新的 API 集成
- MCP 协议支持:兼容 Claude Desktop 和其他支持 MCP 的 LLM
- 全面测试:经过充分测试的代码库,具有较高的测试覆盖率
安装
使用 uv(推荐)
我们建议使用uv来管理您的环境。
然后,您可以使用uvx "mcp-toolbox@latest" stdio
作为命令来运行最新版本的 MCP 服务器。**音频和内存工具不包含在默认安装中。**您可以通过安装all
extra 来包含它们:
[audio] 用于音频工具,[memory] 用于内存工具,[all] 用于所有工具
通过 Smithery 安装
要通过Smithery自动安装 Claude Desktop 的 LLM 增强工具箱:
使用 pip
您可以使用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 密钥
内存存储
记忆工具将数据存储在以下位置:
- macOS :
~/Documents/zerolab/mcp-toolbox/memory
(通过 iCloud 跨设备同步) - 其他平台:
~/.zerolab/mcp-toolbox/memory
完整配置
要将 mcp-toolbox 与 Claude Desktop/Cline/Cursor/... 一起使用,请将以下内容添加到您的配置文件中:
完整功能:
您可以使用以下方式生成调试配置模板:
可用工具
命令行工具
工具 | 描述 |
---|---|
execute_command | 执行命令行指令 |
文件操作工具
工具 | 描述 |
---|---|
read_file_content | 从文件读取内容 |
write_file_content | 将内容写入文件 |
replace_in_file | 使用正则表达式替换文件中的内容 |
list_directory | 列出目录内容及其详细信息 |
Figma 工具
工具 | 描述 |
---|---|
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 | 通过 key 获取组件 |
figma_get_team_component_sets | 获取团队的组件集 |
figma_get_team_styles | 获取团队的风格 |
figma_get_file_styles | 从文件获取样式 |
figma_get_style | 按键获取样式 |
XiaoyuZhouFM工具
工具 | 描述 |
---|---|
xiaoyuzhoufm_download | 从 XiaoyuZhouFM 下载播客节目,可选择自动将 m4a 转换为 mp3 |
音频工具
工具 | 描述 |
---|---|
get_audio_length | 获取音频文件的长度(以秒为单位) |
get_audio_text | 获取音频文件中特定时间范围内的转录文本 |
记忆工具
工具 | 描述 |
---|---|
think | 使用该工具思考某事并将想法附加到日志中 |
get_session_id | 获取当前会话 ID |
remember | 将一段记忆(简短且详细)存储在记忆数据库中 |
recall | 使用语义搜索从数据库中查询记忆 |
forget | 清除记忆数据库中的所有记忆 |
Markitdown 工具
工具 | 描述 |
---|---|
convert_file_to_markdown | 使用 MarkItDown 将任何文件转换为 Markdown |
convert_url_to_markdown | 使用 MarkItDown 将 URL 转换为 Markdown |
Web 工具
工具 | 描述 |
---|---|
get_html | 从 URL 获取 HTML 内容 |
save_html | 将 HTML 从 URL 保存到文件 |
search_with_tavily | 使用 Tavily 搜索网页(需要 API 密钥) |
search_with_duckduckgo | 使用 DuckDuckGo 搜索网页(需要 API 密钥) |
Flux 图像生成工具
工具 | 描述 |
---|---|
flux_generate_image | 使用 Flux API 生成图像并将其保存到文件中 |
使用示例
运行 MCP 服务器
与 Claude Desktop 一起使用
- 按照配置部分所示配置 Claude Desktop
- 启动 Claude Desktop
- 要求 Claude 与 Figma 文件进行交互:
- “您能获取有关此 Figma 文件的信息:12345abcde吗?”
- “向我展示此 Figma 文件中的组件:12345abcde”
- “从此 Figma 文件中获取评论:12345abcde”
- 要求Claude执行命令行指令:
- “当前目录中有哪些文件?”
- “现在系统时间是多少?”
- “显示特定文件的内容。”
- 要求 Claude 从 XiaoyuZhouFM 下载播客:
- 要求 Claude 处理音频文件:
- “这个音频文件的长度是多少:audio.m4a?”
- “将 audio.m4a 中 60 秒到 90 秒的音频转录下来”
- “获取音频文件中 2:30 到 3:00 之间的文本”
- 要求 Claude 将文件或 URL 转换为 Markdown:
- “将此文件转换为 Markdown:document.docx”
- “将此网页转换为 Markdown 格式: https://example.com ”
- 要求 Claude 处理网络内容:
- “从https://example.com获取 HTML 内容”
- “将https://example.com中的 HTML 保存到文件中”
- “在网上搜索‘人工智能新闻’”
- 要求 Claude 使用 Flux 生成图像:
- “生成一张美丽的山间日落图像”
- “创建一幅未来城市的图像并将其保存到我的桌面”
- “生成一只穿着宇航服的猫的肖像”
- 要求克劳德使用记忆工具:
- “记住这个重要事实:法国的首都是巴黎”
- “我当前的会话 ID 是什么?”
- “回忆一下有关法国的任何信息”
- “思考气候变化的影响”
- “忘记所有存储的记忆”
发展
本地设置
分叉存储库并将其克隆到本地机器。
运行测试
运行检查
建筑文档
添加新工具
要添加新的 API 集成:
- 使用任何所需的 API 密钥更新
config.py
- 在
mcp_toolbox/
中创建一个新模块 - 实现您的 API 客户端和工具
- 为新功能添加测试
- 使用新的环境变量和工具更新 README.md
请参阅开发指南以获取更详细的说明。
贡献
欢迎贡献代码!欢迎提交 Pull 请求。
- 分叉存储库
- 创建功能分支(
git checkout -b feature/amazing-feature
) - 提交您的更改(
git commit -m 'Add some amazing feature'
) - 推送到分支(
git push origin feature/amazing-feature
) - 打开拉取请求
执照
该项目是根据存储库中包含的许可条款进行授权的。
Related MCP Servers
- AsecurityFlicenseAqualityEnables seamless interaction with Figma via the Model Context Protocol, allowing LLM applications to access, manipulate, and track Figma files, components, and variables.Last updated -2106TypeScript
- -securityFlicense-qualityAllows LLM tools like Claude Desktop and Cursor AI to access and summarize code files through a Model Context Protocol server, providing structured access to codebase content without manual copying.Last updated -TypeScript
- -securityFlicense-qualityA Model Context Protocol server that connects AI tools and LLMs to Figma designs, enabling them to extract design data, analyze design systems, and generate development documentation.Last updated -TypeScript
- AsecurityFlicenseAqualityA Model Context Protocol server that allows LLMs to interact with Python environments, execute code, and manage files within a specified working directory.Last updated -937Python