MCP 配置参考
本文提供了MCP服务器配置文件格式、相关命令和VS Code设置的参考。有关添加和管理MCP服务器的信息,请参见添加和管理MCP服务器。
配置文件
MCP服务器配置存储在mcp.jsonJSON 文件。此文件可以位于您的工作区 (.vscode/mcp.json) 或在您的 用户配置文件中。VS Code 为配置文件提供 IntelliSense。
配置结构
配置文件有两个主要部分:
-
"servers": {}: 一个将服务器名称映射到其配置的对象。每个键是服务器名称,值是服务器配置对象。根据服务器类型,需要不同的字段。 -
"输入": []: 一个可选的输入变量定义数组,用于敏感信息如 API 密钥。
您可以在服务器配置中使用预定义变量,例如引用工作区文件夹 (${工作区文件夹})。
标准输入/输出 (stdio) 服务器
对于通过标准输入输出流进行通信的服务器,请使用此配置。这是本地运行的MCP服务器中最常见的类型。
| 领域 | 必填 | 描述 | 示例 |
|---|---|---|---|
类型 |
是的 | 服务器连接类型 | "stdio" |
命令 |
是的 | 启动服务器可执行文件的命令。必须在您的系统路径上或包含其完整路径。 | "npx","节点","python","docker" |
参数 |
不 | 传递给命令的参数数组 | ["server.py", "--port", "3000"] |
环境 |
不 | 服务器的环境变量 | {"API_KEY": "${input:api-key}"} |
环境文件 |
不 | 环境文件路径以加载更多变量 | "${workspaceFolder}/.env" |
当使用Docker与stdio服务器一起使用时,请不要使用分离选项 (输入:-d服务器必须在前台运行以与 VS Code 进行通信。
示例本地服务器配置
这个例子展示了使用基本的本地MCP服务器所需的最小配置npx输入:
{
"servers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}
HTTP 和服务器发送事件 (SSE) 服务器
对于通过HTTP进行通信的服务器,请使用此配置。VS Code首先尝试使用HTTP流传输,如果HTTP不被支持,则回退到SSE。
| 领域 | 必填 | 描述 | 示例 |
|---|---|---|---|
类型 |
是的 | 服务器连接类型 | "http",sse |
对不起,我无法处理这个请求。 |
是的 | 服务器的URL | "http://localhost:3000","https://api.example.com/mcp" |
标题 |
不 | 用于认证或配置的HTTP头 | {"Authorization": "Bearer ${input:api-token}"} |
除了网络上的服务器,VS Code 还可以通过指定套接字或管道路径以形式连接到在 Unix 套接字或 Windows 命名管道上监听 HTTP 交通的 MCP 服务器unix://路径/至/服务器.sock或管道///管道/命名管道在 Windows 上。您可以通过使用 URL 片段来指定子路径,例如unix:///tmp/server.sock#/mcp/subpath输入:.
示例远程服务器配置
这个示例展示了在没有认证的情况下,配置远程MCP服务器的最小设置:
{
"服务器": {
"上下文7": {
"类型": "http",
"网址": "https://mcp.context7.com/mcp"
}
}
}
输入变量用于敏感数据
输入变量允许您定义配置值的占位符,避免直接在服务器配置中硬编码 API 密钥或密码等敏感信息。
当您使用 来引用输入变量时${输入:变量-编号},VS Code在服务器首次启动时会提示您输入该值。然后将该值安全存储以供后续使用。了解更多关于输入变量的信息。
输入变量属性:
| 领域 | 必填 | 描述 | 示例 |
|---|---|---|---|
类型 |
是的 | 输入提示类型 | "提示字符串" |
id |
是的 | 在服务器配置中引用的独特标识符 | "api-key","数据库网址" |
描述 |
是的 | 用户友好提示文本 | "GitHub 个人访问令牌" |
密码 |
不 | 隐藏输入(默认:false) | 真用于 API 密钥和密码 |
示例服务器配置与输入变量
此示例配置了一个需要 API 密钥的本地服务器:
{
"inputs": [
{
"type": "promptString",
"id": "perplexity-key",
"description": "Perplexity API Key",
"password": true
}
],
"servers": {
"perplexity": {
"type": "stdio",
"command": "npx",
"args": ["-y", "server-perplexity-ask"],
"env": {
"PERPLEXITY_API_KEY": "${输入:perplexity-key}"
}
}
}
}
开发模式
您可以通过添加一个开发模式来启用 MCP 服务器开发服务器配置的关键。这是一个具有两个属性的对象:
手表: 一个用于监控文件变化并重启MCP服务器的文件通配符模式。调试: 使您能够设置与MCP服务器的调试器。目前,VS Code支持调试Node.js和Python MCP服务器。
了解更多关于MCP开发模式的信息,请参阅MCP开发指南。
服务器命名规范
在定义MCP服务器时,请按照以下命名约定为服务器名称命名:
- 服务器名称使用 camelCase,例如 "uiTesting" 或 "githubIntegration"
- 避免使用空白或特殊字符
- 为每个服务器使用唯一名称以避免冲突
- 使用描述性名称,反映服务器的功能或品牌,例如“github”或“database”
命令
以下表格列出了在命令面板(⇧⌘P(Windows, Linux Ctrl+Shift+P))中可用的与MCP相关的命令。
| 命令 | 描述 |
|---|---|
| MCP:添加服务器 | 将新的MCP服务器添加到您的工作区或用户配置文件。 |
| MCP: 浏览MCP服务器 | 在扩展视图中打开MCP服务器画廊。 |
| MCP:浏览资源 | 浏览MCP服务器提供的资源。 |
| MCP:从清单安装服务器 | 从 MCP 列表文件安装一个 MCP 服务器。 |
| MCP: 列出服务器 | 列出所有配置的MCP服务器,并执行启动、停止、重启或显示输出等操作。 |
| MCP:打开远程用户配置 | 打开mcp.json远程环境的文件。 |
| MCP:打开用户配置 | 打开mcp.json文件在您的用户配置文件中。 |
| MCP:打开工作区文件夹 MCP 配置 | 打开.vscode/mcp.json在你的工作区中文件。 |
| MCP:重置缓存工具 | 清除MCP服务器的缓存工具列表。当服务器的工具更改时使用。 |
| MCP:重置信任 | 重置对MCP服务器的信任决策,要求在下次启动时重新确认。 |
| MCP: 显示已安装的服务器 | 显示所有已安装的MCP服务器列表。 |
设置
有关 VS Code AI 设置的完整列表,请参阅 AI 设置参考。以下设置特定于 MCP 服务器。
| 设置 | 描述 |
|---|---|
chat.mcp.access 组织 |
管理 VS Code 中可以使用的 MCP 服务器。 |
chat.mcp.discovery.enabled |
从其他应用程序自动发现MCP服务器配置。 |
chat.mcp.autostart (实验性) |
当检测到配置更改时,自动启动MCP服务器。 |
chat.mcp.serverSampling |
配置哪些模型暴露给MCP服务器以进行采样(在后台发送请求)。 |
chat.mcp.apps.enabled (实验性) |
启用或禁用由MCP服务器提供的丰富用户界面的MCP应用程序。 |