· mcp · model context protocol · 教程 · 2026 年 4 月 ·

MCP server 2026 教程:安装、配置、运行

// 图示 MCP server 生命周期 —— 从配置到 Claude 工具调用
MCP server 生命周期示意图 水平流向的四个方框:settings.json 配置、server 进程拉起、工具注册、Claude 工具调用。箭头自左至右连接每一阶段。 SETTINGS.JSON CONFIG ~/.claude/ 或 项目内 SERVER PROCESS SPAWN npx / node / uvx TOOL LIST REGISTERED tools/list 握手 CLAUDE CALLS tools/call JSON-RPC over stdio
// 归档 MCP · 教程 // 来源 Septim Labs // 永久链接 /blog/mcp-server-tutorial-2026.html 引用本文 →
E
作者:Septim Labs 团队
2026 年 4 月 28 日发布
挑选合适工具 →
核心要点
  • MCP(Model Context Protocol)是一项开放标准,让 Claude Code 通过统一的 JSON-RPC 接口调用外部工具 —— 数据库、浏览器、API 等。Server 在本地以进程形式运行,Claude 通过 stdio 与之通信。
  • 配置存放在 .claude/settings.json(项目级)或 ~/.claude/settings.json(全局)。每个 server 条目至少需要一个命令、若干参数,以及承载凭据所需的环境变量。
  • 值得优先安装的五个 server:Filesystem、Memory、GitHub、Playwright 与 Fetch。各自填补一个 Claude Code 原生无法覆盖的能力空缺。

MCP 到底是什么

Model Context Protocol 是 Anthropic 于 2024 年 11 月发布的一项规范。它定义了一种标准方式 —— 让语言模型调用外部工具,也让外部工具向模型暴露自身能力。在 MCP 出现之前,每一项 AI 工具集成都是定制的;MCP 让集成可组合。

它的架构比名字朴素得多。一个 MCP server 就是在你机器上运行的一个进程(远端托管的 server 也支持)。Claude Code 启动时会拉起每个已配置的 MCP server,接收该 server 提供的工具列表,随后在会话中按名调用这些工具。所有通信走 stdin/stdout,基于 JSON-RPC 2.0。本地 server 不需要 HTTP、不需要端口、也无需任何网络配置。

更系统的概念解读见 MCP 是什么 入门篇。本文聚焦在落地配置上。

配置文件放在哪里

MCP server 配置存放在一个 settings.json 文件中。位置有两个:

项目级文件适合放项目专属的 server(例如绑定某个项目数据库连接串的 server)。全局文件适合放你希望在每个项目都能用到的 server(例如 Fetch 与 GitHub)。

安全提示

项目目录中的 .claude/settings.json 若包含凭据,必须加入 .gitignore。CVE-2026-21852 披露的事故,正是凭据通过 npm 包随 settings.json 一起对外泄露。详见 凭据泄露防护指南

基础配置结构

settings.json 中的 mcpServers 键是一个映射:从 server 名称到 server 配置。每条配置说明该 server 进程如何启动。

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/path/to/allowed/directory"
      ]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_fine_grained_token_here"
      }
    },
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}

关于这套结构,有几点值得说明:

值得优先安装的五个 server

01 Filesystem MCP

给 Claude Code 对指定目录的读写权限。没有它,Claude Code 只能读你显式粘贴进会话的文件、或工作目录已有的文件。装上它,Claude 可以遍历你的目录树、按路径读取任意文件,以及向磁盘写入。

包名后跟的路径参数即"允许根"。项目内安装就传项目根目录;只有当你确实需要 Claude 跨目录浏览时,才考虑传 home 目录 —— 而且要事先理解其安全后果。

02 Memory MCP

提供一个跨会话持久化的本地知识图谱。Claude 可以存事实、关系与观察 —— 后续会话无需重新读源码即可调取。默认以 JSON 形式存放在 ~/.claude-memory/

Memory server 是 Claude Code 最接近"记得你的项目"的能力。它不是自动的 —— Claude 必须显式存观察 —— 但配好以后,把项目搁置一段时间再回来时,可以显著降低重新探索的成本。

03 GitHub MCP

给 Claude 访问 GitHub API 的能力:读 issue 与 PR、搜索代码、创建 issue、发评论、管理分支。需要一把范围限定在你想授权的仓库的细粒度个人访问令牌(PAT)。

{
  "github": {
    "command": "npx",
    "args": ["-y", "@modelcontextprotocol/server-github"],
    "env": {
      "GITHUB_TOKEN": "github_pat_..."
    }
  }
}

把 PAT 的范围控制到最小仓库集合。一把对账户内所有仓库具备写权限的 PAT 是相当重要的凭据 —— 应当像对待部署密钥一样对待它。

04 Playwright MCP(微软)

通过 Playwright 给 Claude 一个真正的浏览器。它可以打开页面、点击、填表单、截屏、抽取页面结构。这与 Fetch server 不同 —— Playwright 会渲染 JavaScript,Fetch 不会。

{
  "playwright": {
    "command": "npx",
    "args": ["-y", "@playwright/mcp@latest"]
  }
}

浏览器按需启动,Claude Code 会话结束时关闭。默认无界面运行 —— 想看着它运行,在 args 里加 "--headed"

05 Fetch MCP

抓取网页内容并转成 Markdown。不需要 JavaScript 渲染的页面 —— 文档站、GitHub README、博客文章 —— 用它比 Playwright 更轻。它属于 Anthropic 官方参考实现集。

{
  "fetch": {
    "command": "uvx",
    "args": ["mcp-server-fetch"]
  }
}

本 server 需要 uvx(Astral 出品的 Python 包运行器)。用 pip install uv 安装,或参照 Astral 官方安装说明。如果你只想留在 Node 生态中,社区有 npm 封装版本,但官方版本是 Python。

Septim Vault —— 29 美元买断制

一份预置的 MCP 配置包:8 套 server 配置,可直接粘进你的 settings.json,附带凭据模板、路径白名单建议,以及每个 server 的验证清单。免去你逐个 server 翻文档的麻烦。

购买 Septim Vault —— 29 美元 → 或试用 Septim Tether(19 美元)极简 MCP 配置工具集 →

验证 server 是否跑起来

修改完 settings.json 后,启动一个新的 Claude Code 会话。在提示符里直接问 Claude 它能用哪些工具:

What MCP tools do you have access to?

Claude 应该会列出你配置过的 server 与各自提供的工具。如果某个 server 缺席,故障通常是这三种之一:

  1. 包没装上。npx 上的 -y 会自动装,但首次运行可能因 npm 镜像缓慢或网络防火墙而失败。在终端里手动跑一遍 npx 命令,看具体报错。
  2. 路径不对。Filesystem server 接收的是绝对路径。相对路径或拼写错误的路径会导致启动失败。Claude Code 把 MCP server 错误日志记在 ~/.claude/logs/ —— 先去那里查。
  3. 凭据无效。如果 server 起来了、但调用工具时报错,最常见的原因是 API key 过期或配置不当。先在 curl 或厂商 API playground 中直接验证凭据,再去排查 MCP 这一层。

项目级 vs 全局配置

Septim 内部的常见做法:全局配置放 Fetch、Memory、Playwright —— 这些在任何项目里都用得上。项目级配置放 Filesystem(允许根设为项目根)、该项目的数据库 server,以及范围限定到本项目仓库的 GitHub server。

这种组织方式让你切到任意项目目录,Claude Code 都会自动加载正确的 server 集合,无需手动切换配置。同名 server 上,项目级文件覆盖全局文件,因此你可以为不同项目配不同的数据库连接,互不冲突。

远端 MCP server

Anthropic 在 2026 年初新增了对远端 MCP server 的支持(走 SSE 而非 stdio)。配置使用 url 键替代 commandargs:

{
  "mcpServers": {
    "stripe": {
      "url": "https://mcp.stripe.com",
      "headers": {
        "Authorization": "Bearer sk_live_..."
      }
    }
  }
}

对于自身维护托管 MCP 端点的服务(Stripe 等已有此能力),远端 server 很方便。代价是每次工具调用多一次网络往返,凭据走线上 —— 务必只用 HTTPS 远端,把 Authorization header 像保护环境变量中的 API key 一样对待。

添加更多 server 之前要做的安全考量

每多装一个 server,就给你的 Claude Code 会话多一份攻击面。MCP server 漏洞清单提供 24 项评估框架。教程层面的简版:

带安全注意事项的完整精选 server 清单在 2026 年最佳 MCP server一文中。

Septim Vault —— 29 美元 · 8 套预置 MCP 配置

8 套 server 配置、凭据模板、路径白名单建议,以及一份验证清单。还附带 CVE-2026-21852 一文中的 settings.json 安全加固指南。买断制。

购买 Septim Vault —— 29 美元 → Septim Tether(19 美元)—— 极简 MCP 配置工具集 →