学习进度
0%
首页 / 第06章:MCP 服务器扩展

第06章:MCP 服务器扩展

MCP服务器扩展架构
MCP 让 Claude Code 能连接外部资源:文件系统、数据库、API等
📌 章节说明

前置知识:已完成必修课程,熟悉 Claude Code 基本操作。

本章价值:MCP(Model Context Protocol)是 Claude 的扩展协议,让它能连接数据库、API、文件系统等外部资源。

什么是 MCP?

MCP = Model Context Protocol(模型上下文协议)

没有 MCP 的 Claude Code: ┌─────────────────────────────────┐ │ Claude Code │ │ │ │ 只能访问当前工作区的文件 │ └─────────────────────────────────┘ 有了 MCP 的 Claude Code: ┌─────────────────────────────────────────────────┐ │ Claude Code │ ├─────────────────────────────────────────────────┤ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ MCP │ │ MCP │ │ MCP │ │ │ │ Server 1 │ │ Server 2 │ │ Server 3 │ │ │ └──────────┘ └──────────┘ └──────────┘ │ │ ↓ ↓ ↓ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ 文件系统 │ │ 数据库 │ │ API │ │ │ │ 任意路径 │ │ PostgreSQL│ │ 搜索 │ │ │ └──────────┘ └──────────┘ └──────────┘ │ │ │ └─────────────────────────────────────────────────┘

MCP 能做什么?

功能 说明 实用度
文件系统访问 访问任意位置的文件 ⭐⭐⭐
数据库查询 直接查询数据库 ⭐⭐⭐
网页搜索 获取最新信息 ⭐⭐
API 调用 调用外部服务 ⭐⭐
Git 操作 增强的 Git 功能 ⭐⭐

配置 MCP 服务器

💡 更简单的 MCP 管理方式

如果觉得手动编辑 JSON 配置文件太麻烦,cc-switch 也支持 MCP 服务器的可视化管理。

参见:A3:cc-switch 图形化配置工具

配置文件位置

MCP 配置文件位于:

bash
~/.claude/mcp-servers.json

Windows 用户路径:

bash
C:\Users\你的用户名\.claude\mcp-servers.json

配置文件格式

json
{
  "mcpServers": {
    "服务器名称": {
      "command": "启动命令",
      "args": ["参数1", "参数2"],
      "env": {
        "环境变量名": "环境变量值"
      }
    }
  }
}

常用 MCP 服务器

1. 文件系统 MCP

允许 Claude Code 访问任意位置的文件。

json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "E:\\我的文件"]
    }
  }
}

2. Git MCP

增强的 Git 操作功能。

json
{
  "mcpServers": {
    "git": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-git", "--repository", "."]
    }
  }
}

3. PostgreSQL 数据库 MCP

直接查询 PostgreSQL 数据库。

json
{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://用户名:密码@localhost:5432/数据库名"]
    }
  }
}

4. Fetch MCP(获取网页内容)

json
{
  "mcpServers": {
    "fetch": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-fetch"]
    }
  }
}

使用 MCP

基本用法

配置好 MCP 后,在 Claude Code 中直接告诉 Claude 使用哪个 MCP:

用 Git MCP 查看最近的提交历史
用文件系统 MCP 读取 ~/projects/api/config.yaml
用搜索 MCP 搜索 "Claude Code 教程"

常用 MCP 服务器清单

MCP 名称 用途 安装命令 需要配置
filesystem 访问任意文件系统 @modelcontextprotocol/server-filesystem 路径
git 增强 Git 操作 @modelcontextprotocol/server-git 仓库路径
postgres PostgreSQL 数据库 @modelcontextprotocol/server-postgres 连接字符串
brave-search 网页搜索 @modelcontextprotocol/server-brave-search API Key
fetch 获取网页内容 @modelcontextprotocol/server-fetch
sqlite SQLite 数据库 @modelcontextprotocol/server-sqlite 数据库文件
本章自检(3分钟)
点开问题查看答案,能讲清楚就算掌握。
MCP 是什么?解决了什么问题?
MCP 是扩展协议,让 Claude Code 能连接外部工具/资源(文件系统、Git、数据库、网页获取/搜索等),从“只会聊天”变成“能做事”。
为什么 MCP 相关配置要特别注意安全?
因为它可能让模型访问你的文件/网络/数据库;权限开太大可能造成泄露或误操作,应最小权限原则。
遇到 MCP 安装/启动失败,你第一步会做什么?
先看报错原文,确认依赖(Node/npm)正常;再用“按症状”排查页定位问题。
如何判断一个 MCP 工具有必要接入?
看是否能减少重复劳动且风险可控:例如 Git/本目录文件系统较常用;数据库/全盘访问则谨慎。