MCP Servers for Coders
0kenx
README
程序员的 MCP 服务器
一套强大的模型上下文协议 (MCP) 服务器,旨在使像 Claude 这样的 AI 助手能够与您的本地环境交互、执行代码和处理 Web 内容。
概述
此存储库包含多个模型上下文协议 (MCP) 服务器,可显著扩展像 Claude 这样的 AI 助手的能力:
- 文件系统 MCP 服务器 - 支持安全的文件操作,具有高级差异跟踪和版本控制功能
- 执行 MCP 服务器 - 提供在隔离环境中执行命令和多语言脚本的功能
- Web 处理 MCP 服务器 - 允许 Web 内容的获取、爬取和 AI 驱动的内容分析
这些服务器可以独立或协同工作,为 AI 助手提供直接在您的本地环境中执行复杂任务所需的工具,而不会牺牲安全性。
服务器
1. 文件系统 MCP 服务器
一个安全的 Python 服务器,使 AI 助手能够与您的本地文件进行交互,具有全面的文件管理和代码分析功能:
- 高级文件操作:使用多种访问方法(整个文件、行范围、基于关键字)读取和写入文件
- 智能代码分析:解析和理解跨多种语言的代码结构
- 版本控制:使用基于差异的编辑和选择性接受/拒绝功能跟踪所有 AI 所做的更改
- 安全至上的设计:路径验证、目录限制和权限检查
- Git 集成:Git 感知的目录列表,遵循 .gitignore 规则
- 编辑器集成:Neovim 插件,实现无缝工作流程
关键安全特性:操作严格限制在明确允许的目录中,并进行完整的路径验证。
2. 执行 MCP 服务器
一个强大的执行环境,允许 AI 助手在隔离的容器中运行代码和命令:
- 多语言支持:执行 Python、JavaScript、Rust、Go 和 Solidity 代码
- 智能包管理:自动检测和安装跨包管理器的所需依赖项
- 执行控制:设置超时、重定向输出流和处理长时间运行的进程
- 完整的开发环境:针对多种编程语言的预配置设置
- 安全控制:可配置的执行边界和资源限制
包含的开发环境:
- Python 3.12:完整的数据科学堆栈(pandas、numpy、matplotlib)和开发工具(black、pytest)
- JavaScript/TypeScript:Node.js v20,带有 npm 和 yarn
- Rust:完整的工具链,带有 rustup、cargo 和扩展
- Go 1.22.1:标准工具链和常用库
- Solidity:Foundry 套件,带有 forge、cast 和 anvil
3. Web 处理 MCP 服务器
一个复杂的 Web 内容检索和分析系统,使 AI 助手能够从互联网收集和处理信息:
- 灵活的内容检索:获取单个页面或爬取整个网站,具有可配置的参数
- 智能爬取:控制深度、页面限制、域限制和超时
- AI 驱动的分析:使用 OpenAI 模型和可自定义的指令处理 Web 内容
- 多种输出格式:将结果转换为 Markdown、HTML、Text、JSON 或 Raw 格式
- 强大的错误处理:优雅地管理超时、重定向和连接问题
- 内容处理:自动处理具有大小限制和截断的大型页面
关键特性:无缝地将 Web 抓取与 AI 分析相结合,将原始 Web 内容转换为结构化的、有用的信息。
开始使用
安装
所有服务器都支持 Docker 安装,这是大多数用户的推荐方法。每个服务器还在其各自的 README 中记录了替代安装方法。
Docker 安装(推荐)
# 克隆存储库
git clone https://github.com/0kenx/mcp-servers.git
cd mcp-servers
# 构建文件系统 MCP 服务器
cd filesystem
docker build . -t mcp/filesystem
# 构建执行 MCP 服务器
cd ../exec
docker build . -t mcp/exec
# 构建 Web MCP 服务器
cd ../web
docker build . -t mcp/web
使用 Claude 进行配置
要配置 Claude Desktop 或其他 Claude 界面以使用这些 MCP 服务器,请将它们添加到您的配置文件中:
{
"mcpServers": {
"filesystem": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--mount",
"type=bind,src=/home/username/projects,dst=/fs",
"mcp/filesystem",
"/fs"
]
},
"exec": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--mount",
"type=bind,src=/home/username/projects,dst=/fs",
"mcp/exec",
"/fs"
]
},
"web": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPENAI_API_KEY",
"-e",
"BRAVE_API_KEY",
"mcp/web"
],
"env": {
"OPENAI_API_KEY": "sk-YOUR_OPENAI_KEY",
"BRAVE_API_KEY": "YOUR_BRAVE_KEY"
}
}
}
}
验证安装
配置完成后,验证服务器是否正常工作:
- 启动 Claude 并在界面中启用 MCP 服务器
- 使用基本命令测试每个服务器:
- 文件系统:要求 Claude 列出目录中的文件
- 执行:要求 Claude 运行一个简单的命令,例如
echo "Hello, World!"
- Web:要求 Claude 从 URL 获取内容
安全注意事项
这些 MCP 服务器为 AI 助手提供强大的功能,这需要仔细关注安全性:
文件系统服务器
- 路径验证:防止目录遍历攻击并将操作限制在允许的目录中
- 权限检查:尊重现有的系统文件权限
- 无 Shell 执行:避免命令注入漏洞
- 更改跟踪:所有修改都会被记录并且可以恢复
执行服务器
- 隔离:考虑在沙盒环境或容器中运行
- 资源限制:配置容器资源限制以防止滥用
- 网络限制:限制执行不受信任代码时的网络访问
- 审查关键命令:对系统修改操作保持谨慎
Web 服务器
- API 密钥安全:保护您的 OpenAI API 密钥并监控使用情况
- 域限制:使用 allowed_domains 参数来防止意外爬取
- 速率限制:在爬取网站时注意速率限制
一般建议:对于敏感环境,请在具有最小权限的隔离容器中运行这些服务器,并仔细审查 AI 助手的操作。
用例
这些 MCP 服务器使 Claude 和其他 AI 助手能够执行强大的任务:
软件开发
- 跨大型代码库的代码分析和重构
- 根据规范实现功能
- 通过运行测试和分析日志来调试问题
- 设置开发环境和依赖项
数据分析
- 检索、处理和可视化数据
- 在本地数据集上运行分析脚本
- 爬取 Web 资源以收集信息
- 从多个来源生成报告
系统管理
- 执行诊断命令并报告问题
- 安装和配置软件包
- 安全地管理文件和目录
- 分析日志和系统状态
贡献
欢迎贡献!请随时提交 Pull Request。
许可证
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。
作者
0kenx - GitHub
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。