使用说明
自定义MCP服务器
一组用TypeScript编写的生产就绪模型上下文协议(MCP)服务器,用于使用可复制的工具扩展AI编码助手。每台服务器都通过stdio进行通信,并且可以向任何符合MCP的客户端(Claude Desktop、CLI代理、IDE集成)注册,以添加专注的功能,而不会泄露敏感的工作区数据。
目录
概述
- 每个服务器都是独立的(自己的
package.json,src,并编译dist输出),因此您可以独立构建、部署或版本化它们。 - 工具包括HTTP检查、浏览器自动化、归档管理、FFmpeg驱动的媒体编辑、ImageMagick驱动的图像处理、通过yt-dlp的大规模媒体下载、掷骰子、只读代码库探索、受控文件下载管理、结构化数据转换(JSON/YAML/XML)、Markdown分析、老派RuneScape数据查找和时区实用程序。
- 所有服务器都将操作详细信息记录到stderr中,以保持MCP响应的stdout干净。
- 根据MIT许可证分发,用于不受限制的商业和个人使用。
先决条件
- Node.js 18 LTS或更新版本(附带npm 9+)。早期的运行时可能缺乏使用的现代ECMAScript API
@modelcontextprotocol/sdk. - npm(与Node一起安装)或其他Node包管理器(如果你愿意)(
pnpm,yarn).下面的命令使用npm。 - 这
curl命令行客户端可在您的PATH对于HTTP工作台。大多数macOS和Linux发行版都包含它;在Windows上安装curl或通过Windows功能启用它。 - 支持您调用的脚本的终端。在Windows上,提供
npm run clean使用Unixrm -rf;或者从Git Bash/WSL运行它,或者替换为Remove-Item -Recurse -Force dist. - MCP兼容客户端(例如,Claude Desktop>=v1.5、支持MCP的IDE或自定义自动化线束)。
快速开始
-
克隆或打开存储库。
git clone https://github.com/Ddemon26/custom-mcp-servers.git cd custom-mcp-servers -
安装依赖项。 跑
npm install在每台服务器内部,您第一次克隆仓库时以及每当该服务器package.json变化。 -
构建TypeScript输出。 从服务器目录中,运行
npm run build在向MCP客户端注册之前;这将生成dist/server.js入口点。 -
在本地运行服务器(手动验证)。
npm run start该进程绑定stdio,并将等待来自MCP客户端的请求。停止
Ctrl+C在确认构建后。 -
(可选)迭代时使用实时重新加载。
npm run devts-node直接从启动服务器src/server.ts,每次发射时重新编译。非常适合在生成发布版本之前进行调试。
与MCP客户端集成
所有服务器通过stdio与MCP通信。您通常在客户端的配置中注册它们,以便它自动生成流程并代理请求/响应。
-
构建服务器(
npm run build) 你想曝光。 -
在MCP客户端配置中添加条目。 下面是Windows的Claude Desktop示例;调整macOS的路径(
~/Library/Application Support/Claude/claude_desktop_config.json)或Linux(~/.config/Claude/claude_desktop_config.json).{ "mcpServers": { "archive-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/archive-mcp/src/server.js"] }, "browser-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/browser-mcp/src/server.js"] }, "curl-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/curl/src/server.js"] }, "diceroll-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/dice-roll/src/server.js"] }, "easyview-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/easy-view/src/server.js"] }, "filedownload-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/file-download/src/server.js"] }, "ffmpeg-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/ffmpeg-mcp/src/server.js"] }, "ytdlp-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/yt-dlp-mcp/src/server.js"] }, "html-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/html-mcp/src/server.js"] }, "imagemagick-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/imagemagick-mcp/src/server.js"] }, "json-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/json-mcp/src/server.js"] }, "markdown-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/markdown-mcp/src/server.js"] }, "osrs-lookup": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/osrs-lookup/src/server.js"] }, "time-mcp": { "command": "node", "args": ["/your/path/to/custom-mcp-servers/time/src/server.js"] } } }- 在JSON中使用正斜杠以避免转义反斜杠。
- 确保工作目录与项目根目录匹配,以便正确解析相对路径(例如,易视图索引)。
-
重新启动客户端 因此它重新加载MCP配置。
-
按名称调用工具 在你的客户内部(
navigate,create_zip,convert_video,download_video,parse_html,resize_image,curl_execute,roll_d100,scan_directory,save_text_file,format_json,markdown_to_html,get_current_time等等)。服务器响应显示在助手面板中。
开发工作流程
- 跑
npm run dev用于快速实验;使用ts-node因此TypeScript的更改会立即生效(编辑后重新启动该过程)。 - 跑
npm run build在发货或注册服务器之前,确保编译的JavaScript是最新的。 - 使用
npm run start执行编译后的构建,就像客户端运行它一样。 - 如果需要清除Windows上的构建工件,请运行
powershell -Command "Remove-Item dist -Recurse -Force"而不是npm run clean,或安装跨平台清洁器(例如,添加rimraf). - 类型定义存在
dist/server.d.ts建成后;如果将这些服务器作为库在其他地方使用,请将其包括在内。
故障排除
curl_execute失败与“curl未被识别”: 安装curl或将其添加到系统中PATH。在Windows上,获取官方安装程序或启用可选的Windows功能。list_files或search_files不返回任何内容: 跑scan_directory第一次或通过{ "refresh": true }如果您最近更改了工作区。view_file报告“文件太大”: 安全上限为10 MB。在请求完整内容之前,请在本地打开或缩小文件。save_binary_file抛出“Base64内容是必需的”: 确保内容字符串是有效的base64,而不是JSON转义(删除换行符或用正确的JSON包装)。npm run clean在Windows上失败: 使用PowerShellRemove-Item从Git Bash/WSL命令或运行脚本,其中rm存在。
许可证
根据 MIT许可证。您可以使用自己的MCP工具自由地分叉、扩展和捆绑这些服务器。