MCP 文件系统

MCP Filesystem
分类File System
作者Anthropic
星标900
定价Free

简介

MCP Filesystem 是由 Anthropic 官方推出的模型上下文协议实现,旨在打破 AI 与本地文件系统之间的隔阂。简单来说,它像是一个安全的“文件读写插件”,让 Claude 等支持 MCP 的客户端能直接读取、编辑或分析你本地的特定目录,而无需你手动复制粘贴代码或上传文档。对于开发者而言,这意味着 AI 可以直接扫描项目结构、修改 Bug 或生成文档,将 LLM 从一个单纯的聊天窗口转变为一个具备本地操作能力的智能助手。上手门槛极低,只需在配置文件中指定授权路径即可快速激活。

核心亮点

  • 让 AI 直接读写本地文件,告别繁琐的手动上传
  • 支持目录扫描与内容编辑,极大提升代码重构效率
  • 通过路径授权机制确保数据安全,访问范围可控
  • 无缝集成至支持 MCP 的 IDE 或 AI 客户端

完整文档

Model Context Protocol servers

本仓库是 Model Context Protocol (MCP) 的*参考实现*集合,同时也包含社区构建的 server 引用及其他资源。

> [!IMPORTANT]
> 如果您在寻找 MCP server 列表,可以浏览 the MCP Registry 上已发布的 server。本 README 所对应的仓库仅用于存放由 MCP 指导小组维护的少量参考 server。

> [!WARNING]
> 本仓库中的 server 旨在作为参考实现,用于演示 MCP 特性和 SDK 用法。它们旨在为构建自定义 MCP server 的开发者提供教学示例,而非生产级解决方案。开发者应评估自身的安全需求,并根据具体的威胁模型和使用场景实施适当的防护措施。

本仓库中的 server 展示了 MCP 的通用性和可扩展性,演示了如何利用它为 Large Language Models (LLMs) 提供对工具和数据源的安全、可控访问。
通常,每个 MCP server 都是使用 MCP SDK 实现的:- C# MCP SDK









🌟 参考服务器

这些服务器旨在演示 MCP 功能和官方 SDK。

  • Everything - 包含 prompts、resources 和 tools 的参考/测试服务器。
  • Fetch - 为高效使用 LLM 提供的网页内容获取与转换工具。
  • Filesystem - 具有可配置访问控制的安全文件操作工具。
  • Git - 用于读取、搜索和操作 Git 仓库的工具。
  • Memory - 基于知识图谱的持久化内存系统。
  • Time - 时间和时区转换能力。

已归档以下参考服务器现已存档,可在 servers-archived 中找到。- AWS KB Retrieval - 使用 Bedrock Agent Runtime 从 AWS Knowledge Base 进行检索。

  • EverArt - 使用多种模型进行 AI 图像生成。
  • GitHub - 仓库管理、文件操作及 GitHub API 集成。
  • GitLab - GitLab API,实现项目管理。
  • Google Drive - Google Drive 的文件访问和搜索功能。
  • Google Maps - 位置服务、路线规划和地点详情。
  • PostgreSQL - 只读数据库访问及 schema 检查。
  • Puppeteer - 浏览器自动化和网页抓取。
  • Redis - 与 Redis 键值存储交互。
  • Sentry - 从 Sentry.io 检索和分析问题。
  • Slack - 频道管理和消息传递功能。现由 Zencoder 维护。
  • SQLite - 数据库交互和商业智能功能。## 🚀 快速上手

在本仓库中使用 MCP 服务器

本仓库中基于 TypeScript 的服务器可以直接通过 npx 使用。

例如,这将启动 Memory 服务器:

sh
npx -y @modelcontextprotocol/server-memory
本仓库中的 Python 服务器可以直接通过 uvxpip 使用。为了方便使用和安装,推荐使用 uvx

例如,这将启动 Git 服务器:

sh
# With uvx
uvx mcp-server-git

With pip

pip install mcp-server-git python -m mcp_server_git
请参考这些指令来安装 uv / uvx 以及这些指令来安装 pip

使用 MCP Client

然而,单独运行 server 并没有太大用处,而应该将其配置到 MCP client 中。例如,以下是使用上述 server 的 Claude Desktop 配置:
json
{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}
在 Windows 上,使用 cmd /c 包裹 npx
json
{
  "mcpServers": {
    "memory": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "@modelcontextprotocol/server-memory"]
    }
  }
}
使用 Claude Desktop 作为 MCP 客户端的其他示例可能如下:
json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"]
    },
    "git": {
      "command": "uvx",
      "args": ["mcp-server-git", "--repository", "path/to/git/repo"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
    }
  }
}
在 Windows 上,将上述每个基于 npx 的条目进行相同的封装:将 "command" 修改为 "cmd",并在现有 args 前添加 "/c", "npx"。保持 uvx 条目不变。

🛠️ 创建你自己的服务器

有兴趣创建自己的 MCP server 吗?请访问官方文档 modelcontextprotocol.io 获取关于实现 MCP servers 的全面指南、最佳实践和技术细节。

📚 了解更多

请参阅 ADDITIONAL.md 以获取精选的框架和资源列表,这些资源可以简化 MCP servers 和 clients 的构建。

🤝 贡献

请参阅 CONTRIBUTING.md 以获取有关向本仓库贡献代码的信息。

📦 发布

请参阅 RELEASING.md 以了解包的发布方式(来自 CI 的 OIDC 信任发布 —— 无需 registry tokens)以及如何重试失败的发布。

🔒 安全

请参阅 SECURITY.md 以报告安全漏洞。

📜 许可证

本项目的新贡献采用 Apache License, Version 2.0 许可证,现有代码采用 MIT 许可证 —— 详见 LICENSE 文件。

💬 社区

⭐ 支持

如果你觉得 MCP servers 有用,请考虑为本仓库点星并贡献新的 server 或改进建议!

---由 Anthropic 管理,但与社区共同构建。Model Context Protocol 是开源的,我们鼓励每个人贡献自己的 servers 和改进!