article
README
🚀 搜索抓取服务器 MCP 服务端
这是一个基于 TypeScript 的 MCP 服务器,实现了一个简单的笔记系统。它通过资源表示、工具操作和提示生成等方式,演示了核心的 MCP 概念,能帮助用户高效管理和处理文本笔记。
🚀 快速开始
本项目是一个基于 TypeScript 的 MCP 服务器,实现了简单的笔记系统。若要使用该服务器,需完成依赖安装、服务器构建等步骤,以下是详细操作说明。
✨ 主要特性
资源
- 通过
note://URI 列出和访问笔记,方便快捷。 - 每个笔记都有标题、内容和元数据,便于分类和管理。
- 使用纯文本 MIME 类型进行简单的内容访问,降低操作复杂度。
工具
create_note:创建新的文本笔记。- 接受标题和内容作为必填参数。
- 将笔记存储在服务器状态中。
fetch_url:从 URL 获取内容,可选使用 Puppeteer 转换为 Markdown。- 接收一个 URL 作为必填参数。
- 接收一个可选的
use_puppeteer布尔参数。若为 true,则使用带有waitUntil设置为networkidle2和 30 秒超时的 Puppeteer;否则,将使用 axios。 - 返回 URL 内容作为 Markdown(若使用了 Puppeteer),否则返回内容本身。
duckduckgo_search:执行 DuckDuckGo 搜索。- 接收一个查询作为必填参数。
- 返回搜索结果作为 JSON 字符串。
提示
summarize_notes:生成所有存储笔记的摘要。- 包括所有笔记内容作为嵌入资源。
- 返回结构化的提示以供 LLM 进行总结。
📦 安装指南
开发环境安装
安装依赖
npm install
构建服务器
npm run build
带有自动重建开发
npm run watch
与 Claude Desktop 一起使用的安装
要与 Claude Desktop 一起使用,请添加服务器配置:
- 在 MacOS 上:
~/Library/Application Support/Claude/claude_desktop_config.json - 在 Windows 上:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"search-fetch-server": {
"command": "node",
"args": ["/path/to/search-fetch-server/build/index.js"]
}
}
}
调试
由于 MCP 服务器通过 stdio 通信,调试可能具有挑战性。我们推荐使用 MCP Inspector,它作为包脚本可用:
npm run inspector
Inspector 将提供一个访问浏览器中的调试工具的 URL。
扫码联系在线客服