article
README
🚀 搜索抓取服务器 MCP 服务器
这是一个基于 TypeScript 的 MCP 服务器,实现了一个简单的笔记系统。此示例能帮助你了解核心的 MCP 概念,具体涵盖资源、工具和提示词等方面。
🚀 快速开始
本 MCP 服务器以 TypeScript 构建,借助它你可以轻松操作一个简单的笔记系统,了解 MCP 的核心概念。
✨ 主要特性
资源
- 支持列出和访问带有
note://URI 的笔记。 - 每篇笔记包含标题、内容以及元数据。
- 采用 plain text mime type 实现简单的内容访问。
工具
create_note:用于创建新的文本笔记。- 需提供标题和内容参数。
- 笔记会被存储在服务器状态中。
fetch_url:从 URL 获取内容,可选择使用 Puppeteer 转换为 Markdown。- 必须提供 URL 参数。
- 可选择提供布尔值参数
use_puppeteer。若为true,则使用 Puppeteer 并将waitUntil设置为networkidle2,超时时间为 30 秒;否则,使用 axios 获取内容。 - 使用 Puppeteer 时返回 URL 的 Markdown 内容,否则返回原样内容。
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 脚本运行:
npm run inspector
Inspector 会提供一个 URL,你可以在浏览器中访问该调试工具。
微信扫一扫