返回 MCP 目录
public公开dns本地运行

vulcan-file-ops

Vulcan File Ops是一个基于Model Context Protocol(MCP)的高性能文件操作服务器,可将桌面AI助手(如Claude Desktop、ChatGPT Desktop等)转变为强大的开发伙伴。它提供安全的文件读写、批量操作、文档处理、图像分析和Shell命令执行功能,具有企业级安全控制、动态目录注册和智能工具过滤特性,让用户完全控制本地文件系统访问。

article

README

🚀 Vulcan File Ops MCP 服务器

Vulcan File Ops MCP 服务器可将桌面 AI 助手转变为强大的开发伙伴。它架起了对话式 AI 与本地文件系统之间的桥梁,让 AI 具备如专业 AI 编程助手般强大的文件操作能力。同时,通过企业级安全控制,用户能完全掌控 AI 助手的操作。

🚀 快速开始

本服务器需要 Node.js,可全局安装、本地安装,或直接使用 npx 运行。大多数用户建议使用 npx,无需安装即可立即执行。

快速启动(推荐给大多数用户)

无需安装,直接运行:

npx @n0zer0d4y/vulcan-file-ops --help

对于想要贡献代码或修改代码的开发者,请参考下面的选项 4:本地仓库执行(适用于开发者)

全局安装

全局安装以实现系统范围的访问:

npm install -g @n0zer0d4y/vulcan-file-ops

本地安装

在特定项目中安装:

npm install @n0zer0d4y/vulcan-file-ops

前提条件

系统必须安装 Node.js(版本 14 或更高),它提供了运行此包所需的 npm 和 npx。

  • 下载 Node.js:https://nodejs.org/
  • 检查安装情况:运行 node --versionnpm --version

依赖项

该服务器没有外部服务依赖,完全在本地运行。使用 npx 时,所有必需的包会自动下载。

✨ 主要特性

  • 动态目录访问:通过对话命令在运行时注册目录
  • 文档支持:读写 PDF、DOCX、PPTX、XLSX、ODT 等文档,支持 HTML 到文档的转换
  • 批量操作:可同时读取、写入、编辑、复制、移动或重命名多个文件
  • 高级文件编辑:基于模式的修改,具有灵活的匹配和差异预览功能
  • 灵活的读取模式:支持全量读取、读取文件头部/尾部或任意行范围
  • 图像视觉支持:附加图像供 AI 分析和描述
  • 目录过滤:从列表中排除不需要的文件夹(如 node_modules、dist、.git)
  • 选择性工具激活:仅启用特定的工具或工具类别
  • 高性能:优化的搜索算法,具有智能递归检测功能
  • 安全控制:路径验证、访问限制和 shell 命令审批
  • 本地控制:完全本地安装,无外部依赖

📦 安装指南

基本配置

将其添加到 MCP 客户端配置中(例如 claude_desktop_config.json):

选项 1:使用 npx(推荐 - 无需安装)

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": ["@n0zer0d4y/vulcan-file-ops"]
    }
  }
}

选项 2:使用全局安装

在运行 npm install -g @n0zer0d4y/vulcan-file-ops 之后:

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "vulcan-file-ops"
    }
  }
}

选项 3:使用本地安装

在项目中运行 npm install @n0zer0d4y/vulcan-file-ops 之后:

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "./node_modules/.bin/vulcan-file-ops"
    }
  }
}

选项 4:本地仓库执行(适用于开发者)

如果你克隆了此仓库并想从源代码运行:

git clone https://github.com/n0zer0d4y/vulcan-file-ops.git
cd vulcan-file-ops
npm install
npm run build

然后配置你的 MCP 客户端:

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "vulcan-file-ops",
      "args": ["--approved-folders", "/path/to/your/allowed/directories"]
    }
  }
}

注意:构建后,vulcan-file-ops 命令将在你的 PATH 中可用,或者你可以使用完整路径:./dist/cli.js

高级配置

预批准文件夹

在服务器启动时预配置特定目录以实现立即访问:

macOS/Linux(npx)

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--approved-folders",
        "/Users/username/projects",
        "/Users/username/documents"
      ]
    }
  }
}

Windows(npx)

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--approved-folders",
        "C:/Users/username/projects",
        "C:/Users/username/documents"
      ]
    }
  }
}

替代方案:本地仓库执行 对于从克隆仓库运行的用户(在 npm run build 之后):

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "vulcan-file-ops",
      "args": [
        "--approved-folders",
        "/Users/username/projects",
        "/Users/username/documents"
      ]
    }
  }
}

路径格式注意事项

  • Windows:包含驱动器号(例如 C:/D:/)。在 JSON 中使用正斜杠以避免转义反斜杠。
  • macOS/Linux:绝对路径以 / 开头,或使用 ~ 表示主目录。

好处

  • 即时访问:服务器启动时,目录会立即验证并准备好使用
  • 安全性:仅可访问指定的目录(除非使用 MCP Roots 协议)
  • 便利性:无需通过对话手动注册目录
  • AI 可见性:预批准的目录会动态嵌入到 register_directorylist_allowed_directories 工具描述中,确保 AI 助手知道哪些目录已预先批准,避免重复注册尝试

AI 助手如何查看预批准文件夹: 当你配置 --approved-folders 时,服务器会将此信息动态注入到 register_directorylist_allowed_directories 工具描述中。这确保:

  • ✅ AI 助手可以看到哪些目录已经可以访问
  • ✅ AI 知道不要重新注册预批准的目录或其子目录
  • ✅ 无需 AI 先调用 list_allowed_directories 即可清晰可见
  • ✅ 在所有 MCP 客户端(包括 Cursor、Claude Desktop 等)上都能可靠工作

AI 在工具描述中看到的示例

预批准目录(已可访问,请勿注册这些目录):
  - C:\Users\username\projects
  - C:\Users\username\documents

重要提示:这些目录及其子目录已可被所有文件系统工具访问。请勿对这些路径使用 register_directory。

注意事项

  • 路径必须为绝对路径:Windows 需要驱动器号(C:/path),Unix/Mac 以 /~ 开头
  • 目录以逗号分隔(除非路径中包含空格)
  • 目录在启动时进行验证;如果任何路径无效,服务器将退出
  • 可与运行时的 register_directory 工具一起使用以获得额外的访问权限
  • 如果客户端使用 MCP Roots 协议,将用工作区根目录替换预批准的文件夹

目录过滤

从目录列表中排除特定文件夹:

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--ignored-folders",
        "node_modules,dist,.git,.next"
      ]
    }
  }
}

工具选择

仅启用特定的工具类别:

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--enabled-tool-categories",
        "read,filesystem"
      ]
    }
  }
}

或者启用单个工具:

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--enabled-tools",
        "read_file,list_directory,grep_files"
      ]
    }
  }
}

组合配置

所有配置选项可以组合使用:

Windows 示例(npx)

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--approved-folders",
        "C:/Users/username/projects",
        "C:/Users/username/documents",
        "--ignored-folders",
        "node_modules,dist,.git",
        "--approved-commands",
        "npm,node,git,ls,pwd,cat,echo",
        "--enabled-tool-categories",
        "read,filesystem,shell",
        "--enabled-tools",
        "read_file,attach_image,read_multiple_files,write_file,write_multiple_files,edit_file,make_directory,list_directory,move_file,file_operations,delete_files,get_file_info,register_directory,list_allowed_directories,glob_files,grep_files,execute_shell"
      ]
    }
  }
}

macOS/Linux 示例(npx)

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--approved-folders",
        "/Users/username/projects",
        "/Users/username/documents",
        "--ignored-folders",
        "node_modules,dist,.git",
        "--approved-commands",
        "npm,node,git,ls,pwd,cat,echo",
        "--enabled-tool-categories",
        "read,filesystem,shell",
        "--enabled-tools",
        "read_file,attach_image,read_multiple_files,write_file,write_multiple_files,edit_file,make_directory,list_directory,move_file,file_operations,delete_files,get_file_info,register_directory,list_allowed_directories,glob_files,grep_files,execute_shell"
      ]
    }
  }
}

替代方案:本地仓库执行 对于从克隆仓库运行的用户(在 npm run build 之后):

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "vulcan-file-ops",
      "args": [
        "--approved-folders",
        "/Users/username/projects",
        "/Users/username/documents",
        "--ignored-folders",
        "node_modules,dist,.git",
        "--approved-commands",
        "npm,node,git,ls,pwd,cat,echo",
        "--enabled-tool-categories",
        "read,filesystem,shell",
        "--enabled-tools",
        "read_file,attach_image,read_multiple_files,write_file,write_multiple_files,edit_file,make_directory,list_directory,move_file,file_operations,delete_files,get_file_info,register_directory,list_allowed_directories,glob_files,grep_files,execute_shell"
      ]
    }
  }
}

目录注册

要访问特定目录,指示 AI 代理:

"请注册目录 C:\path\to\your\folder 以进行访问,然后列出其内容。"

AI 将使用 register_directory 工具获得访问权限,然后在该目录内执行操作。

💻 使用示例

基础用法

# 快速启动示例
npx @n0zer0d4y/vulcan-file-ops --help

高级用法

{
  "mcpServers": {
    "vulcan-file-ops": {
      "command": "npx",
      "args": [
        "@n0zer0d4y/vulcan-file-ops",
        "--approved-folders",
        "/Users/username/projects",
        "/Users/username/documents",
        "--ignored-folders",
        "node_modules,dist,.git",
        "--approved-commands",
        "npm,node,git,ls,pwd,cat,echo",
        "--enabled-tool-categories",
        "read,filesystem,shell",
        "--enabled-tools",
        "read_file,attach_image,read_multiple_files,write_file,write_multiple_files,edit_file,make_directory,list_directory,move_file,file_operations,delete_files,get_file_info,register_directory,list_allowed_directories,glob_files,grep_files,execute_shell"
      ]
    }
  }
}

📚 详细文档

API 文档

按类别提供的工具

读取操作
read_file

以灵活的模式读取文件内容(全量、头部、尾部、范围)

注意:此工具仅支持单文件操作。推荐:使用 read_multiple_files,它支持单文件和批量文件操作,更具灵活性。

输入

  • path(字符串):文件路径
  • mode(字符串,可选):读取模式
    • full - 读取整个文件(默认)
    • head - 读取前 N 行
    • tail - 读取后 N 行
    • range - 读取任意行范围(例如,第 50 - 100 行)
  • lines(数字,可选):头部/尾部模式的行数
  • startLine(数字,可选):范围模式的起始行
  • endLine(数字,可选):范围模式的结束行

输出:文件内容作为文本。支持文本文件和文档(PDF、DOCX、PPTX、XLSX、ODT、ODP、ODS)

attach_image

附加图像供 AI 视觉分析

输入

  • path(字符串 | 字符串数组):图像文件的路径,或用于一次附加多个图像的路径数组

输出:MCP 格式的图像内容,用于视觉模型处理。支持 PNG、JPEG、GIF、WebP、BMP、SVG

read_multiple_files

并发批量读取多个文件

输入

  • files(数组):具有路径和可选模式设置的文件对象列表

输出:所有文件的内容。读取失败不会停止操作

写入操作
write_file

创建或替换文件内容

注意:此工具仅支持单文件操作。推荐:使用 write_multiple_files,它支持单文件和批量文件操作,更具灵活性。

输入

  • path(字符串):文件路径
  • content(字符串):文件内容(文本或用于 PDF/DOCX 转换的 HTML)

输出:成功确认。支持 HTML 到 PDF/DOCX 的转换,具有丰富的格式

write_multiple_files

并发创建或替换多个文件

输入

  • files(数组):具有路径和内容的文件对象列表

输出:每个文件的状态。写入失败不会停止其他文件的操作

edit_file

对文本和代码文件进行精确修改,具有智能匹配功能。支持单文件和多文件操作。

单文件输入(模式:'single')

  • mode(字符串,可选):设置为 "single"(如果省略,为向后兼容默认为此值)
  • path(字符串):文件路径
  • edits(数组):编辑操作列表,每个操作包含:
    • oldText(字符串):要搜索的文本(包含 3 - 5 行上下文)
    • newText(字符串):要替换的文本
    • instruction(字符串,可选):此编辑的描述
    • expectedOccurrences(数字,可选):预期匹配次数(默认:1)
  • matchingStrategy(字符串,可选):匹配策略
    • exact - 逐字符匹配(最快、最安全)
    • flexible - 不区分空格的匹配,保留缩进
    • fuzzy - 基于标记的正则表达式匹配(最宽松)
    • auto - 尝试精确 → 灵活 → 模糊(默认)
  • dryRun(布尔值,可选):预览更改而不写入(默认:false)
  • failOnAmbiguous(布尔值,可选):当匹配不明确时失败(默认:true)

多文件输入(模式:'multiple')

  • mode(字符串):设置为 "multiple"
  • files(数组):文件编辑请求数组(最多 50 个),每个请求包含:
    • path(字符串):文件路径
    • edits(数组):此文件的编辑操作列表(与上述结构相同)
    • matchingStrategy(字符串,可选):每个文件的匹配策略
    • dryRun(布尔值,可选):每个文件的预览模式
    • failOnAmbiguous(布尔值,可选):每个文件的歧义处理
  • failFast(布尔值,可选):在第一次失败时停止并回滚(true,默认)或继续(false)

特性

  • 多文件操作的并发处理
  • 失败时自动回滚的原子操作(当 failFast: true 时)
  • 跨平台行尾保留
  • 带有统计信息的详细差异输出

输出:带有统计信息的详细差异。对于多文件操作,包括每个文件的结果和汇总统计信息,以及原子操作的回滚信息。

重要提示:在 oldText/newText 中使用实际的换行符,而不是转义序列(如 \n)。

文件系统操作
make_directory

创建单个或多个目录(类似于 Unix 的 mkdir -p

输入

  • paths(字符串 | 数组):单个路径或路径数组

输出:成功确认。递归创建父目录,具有幂等性

list_directory

以多种输出格式列出目录内容

输入

  • path(字符串):目录路径
  • format(字符串,可选):输出格式
    • simple - 基本的 [DIR]/[FILE] 列表(默认)
    • detailed - 带有大小、时间戳和统计信息
    • tree - 分层文本树视图
    • json - 带有完整元数据的结构化数据
  • sortBy(字符串,可选):排序顺序
    • name - 按字母顺序(默认)
    • size - 从大到小
  • excludePatterns(数组,可选):要排除的 glob 模式(例如 ['*.log', 'temp*']

输出:指定格式的目录列表,带有元数据

move_file

重新定位或重命名文件和目录

注意:此工具仅支持单文件操作。推荐:使用 file_operations,它支持移动、复制和重命名操作,适用于单文件和批量文件,更具灵活性。

输入

  • source(字符串):源路径
  • destination(字符串):目标路径

输出:成功确认

file_operations

批量文件操作(移动、复制、重命名)

输入

  • operation(字符串):操作类型
    • move - 重新定位文件
    • copy - 复制文件
    • rename - 重命名文件
  • files(数组):源 - 目标对列表
  • onConflict(字符串,可选):冲突解决方式
    • skip - 跳过现有文件
    • overwrite - 替换现有文件
    • error - 冲突时失败(默认)

输出:每个操作的状态。每次操作最多处理 100 个文件

delete_files

删除单个或多个文件和目录

输入

  • paths(数组):要删除的路径列表
  • recursive(布尔值,可选):启用递归删除
  • force(布尔值,可选):强制删除只读文件

输出:每个删除操作的状态。默认情况下不进行递归删除以确保安全

get_file_info

检索文件和目录的元数据

输入

  • path(字符串):文件或目录路径

输出:大小、时间戳、权限和类型信息

register_directory

在运行时启用对新目录的访问

输入

  • path(字符串):要注册的目录路径

输出:成功确认。该目录可用于操作

list_allowed_directories

显示当前可访问的目录路径

输入:无

输出:所有允许的目录列表

搜索操作
glob_files

使用 glob 模式匹配查找文件

输入

  • path(字符串):要搜索的目录
  • pattern(字符串):glob 模式(例如 **/*.ts
  • excludePatterns(数组,可选):要排除的模式

输出:匹配的文件路径列表

grep_files

在文件中搜索文本模式

输入

  • pattern(字符串):要搜索的正则表达式模式
  • path(字符串,可选):要搜索的目录
  • -i(布尔值,可选):不区分大小写
  • -A/-B/-C(数字,可选):匹配前后的上下文行数
  • type(字符串,可选):文件类型过滤器(js、py、ts 等)
  • output_mode(字符串,可选):输出格式
    • content - 带有行号的匹配行(默认)
    • files_with_matches - 仅文件路径
    • count - 每个文件的匹配计数
  • head_limit(数字,可选):限制结果

输出:带有上下文的匹配行、文件路径或匹配计数

shell 操作
execute_shell

使用安全控制执行 shell 命令

输入

  • command(字符串):要执行的 shell 命令
  • description(字符串,可选):命令目的
  • workdir(字符串,可选):工作目录(必须在允许的目录内)。如果未提供,则使用 process.cwd() 并进行验证
  • timeout(数字,可选):超时时间(毫秒)(默认:30000)

输出:退出代码、标准输出、标准错误和执行元数据

安全措施

  • 在执行 shell 命令之前,必须至少配置一个批准的目录
  • 工作目录(无论是显式的还是默认的 process.cwd())始终根据允许的目录进行验证
  • 命令参数中的所有文件/目录路径都会自动提取并根据允许的目录进行验证
  • 引用批准目录之外路径的命令将被阻止,防止绕过目录限制

多文件编辑示例

跨多个文件的批量重构

{
  files: [
    {
      path: "src/utils.ts",
      edits: [{
        instruction: "更新弃用的函数调用",
        oldText: "oldApi.getData()",
        newText: "newApi.fetchData()"
      }]
    },
    {
      path: "src/components/Button.tsx",
      edits: [{
        instruction: "更新组件属性",
        oldText: "onClick={oldHandler}",
        newText: "onClick={newHandler}"
      }]
    },
    {
      path: "src/hooks/useData.ts",
      edits: [{
        instruction: "更新钩子实现",
        oldText: "const data = oldApi.getData()",
        newText: "const data = newApi.fetchData()"
      }]
    }
  ],
  failFast: true  // 原子操作 - 如果任何一个失败则回滚所有操作
}

每个文件的配置

{
  files: [
    {
      path: "config.json",
      edits: [{
        oldText: '"version": "1.0.0"',
        newText: '"version": "1.1.0"'
      }],
      matchingStrategy: "exact"  // JSON 需要精确匹配
    },
    {
      path: "src/app.py",
      edits: [{
        oldText: "def old_function():",
        newText: "def new_function():"
      }],
      matchingStrategy: "flexible"  // Python 缩进可能会有所不同
    },
    {
      path: "README.md",
      edits: [{
        oldText: "## Old Section",
        newText: "## New Section"
      }],
      matchingStrategy: "auto"  // 让 AI 决定最佳策略
    }
  ],
  failFast: false  // 即使某些文件失败也继续执行
}

更多详细的使用示例,请参阅 工具使用指南

🔧 技术细节

模型上下文协议

模型上下文协议(MCP)使 AI 助手能够安全地访问外部资源和服务。此服务器实现了用于文件系统操作的 MCP,允许 AI 代理在受控目录边界内读取、写入和管理文件。

目录访问模型

此服务器支持多种灵活的目录访问方法:

  1. 预配置访问:在服务器启动时使用 --approved-folders 指定目录以实现立即访问
  2. 运行时注册:用户可以在对话中指示 AI 代理通过 register_directory 工具注册目录
  3. MCP Roots 协议:客户端应用程序可以动态提供工作区目录
  4. 灵活的权限:结合多种方法 - 从批准的文件夹开始,在运行时添加更多
  5. 安全边界:无论使用何种访问方法,所有操作都将根据注册的目录进行验证

安全措施

此 MCP 服务器实现了企业级安全控制,以防范常见的文件系统漏洞。所有安全措施均基于行业最佳实践,并针对已知的 CVE 模式进行了处理。

防范的漏洞

  • 路径遍历和目录绕过(CWE - 22):防范 CVE - 2025 - 54794 / CVE - 2025 - 53110 等模式,通过规范路径验证和路径分隔符要求防止前缀冲突攻击
  • 命令注入(CWE - 78):防范 CVE - 2025 - 54795 等模式,通过多层验证(包括命令替换检测、根命令提取和危险模式匹配)来阻止危险命令
  • Shell 命令目录绕过(CWE - 22):防止通过 shell 命令中的绝对路径绕过路径限制,通过提取和验证命令参数中的所有文件/目录路径来实现
  • 符号链接攻击(CWE - 59 / CWE - 61):防范 CVE - 2025 - 53109 等模式,在验证前通过 realpath() 解析所有路径以跟踪符号链接到实际目标
  • 目录遍历:通过严格的路径规范化和仅针对批准目录的验证来防止 ../ 遍历尝试

安全控制

  • 路径验证:规范路径解析、路径分隔符要求、符号链接解析和父目录验证
  • 命令执行:命令白名单、模式检测、命令替换阻止、根命令提取和路径参数验证
  • 访问控制:目录白名单、运行时注册、原子验证和跨平台安全处理

安全最佳实践

  1. 最小化批准目录:仅批准需要 AI 访问的目录
  2. 使用目录过滤:从列表中排除敏感文件夹(例如 .gitnode_modules
  3. 限制工具访问:通过 --enabled-tools--enabled-tool-categories 仅启用必要的工具
  4. 命令审批:通过 --approved-commands 预先批准安全命令;其他命令需要审批
  5. 监控操作:审查 MCP 客户端日志以发现意外的访问尝试
  6. 定期更新:保持服务器更新以接收安全补丁

安全审计

此服务器已针对已知漏洞和静态分析结果进行了全面审计:

支持的文件类型

文本文件操作

读取工具read_fileread_multiple_files):

  • 文本文件:以 UTF - 8 编码读取任何文件(源代码、配置文件、markdown、JSON、XML、CSV、日志)
  • 文档文件:自动检测并解析 PDF、Word、PowerPoint、Excel、OpenDocument 等文档

写入工具write_filewrite_multiple_filesedit_file):

  • 写入 UTF - 8 编码的文本内容
  • 支持 HTML 到 PDF/DOCX 的转换,具有丰富的格式
  • 可以创建源代码、配置文件、markdown、JSON、XML、CSV、文本文档、从 HTML 生成的格式化 PDF/DOCX

图像文件操作

附加图像工具attach_image):

  • 附加图像供 AI 视觉分析(需要具有视觉功能的 MCP 客户端)
  • 支持 PNG、JPEG、GIF、WebP、BMP、SVG 格式
  • 支持批量附加图像
  • 返回 MCP 标准格式的图像,供客户端视觉处理

文件系统操作

文件操作工具file_operationsmove_file):

  • 适用于任何文件类型(文本或二进制)
  • 支持移动、复制、重命名操作
  • 处理文件和目录,操作过程中保留文件内容不变

文件编辑

编辑文件工具edit_file):

  • 智能文件修改,具有自动匹配策略(精确 → 灵活 → 模糊)
  • 支持一次操作中的多个顺序编辑
  • 提供带有统计信息的详细差异输出
  • 可选的预览模式(dryRun: true
  • 保留缩进和行尾

开发设置

# 克隆仓库
git clone https://github.com/n0zer0d4y/vulcan-file-ops.git
cd vulcan-file-ops

# 安装依赖
npm install

# 运行测试
npm test

# 构建项目
npm run build

# 启动开发服务器
npm start

测试

项目包含全面的测试覆盖。使用以下命令运行测试:

npm test

📄 许可证

本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。

贡献说明

本项目暂不接受拉取请求。

欢迎通过 GitHub 问题提交 bug 报告和功能请求。请包含以下信息:

  • 对于 bug:重现步骤、预期行为与实际行为的对比、环境详细信息
  • 对于功能:清晰描述你需要的功能及其使用场景

请先搜索现有问题,因为可能已有相关话题被提及。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端