这是一个用于C++中文周刊内容的MCP (Model Context Protocol) 服务器,可以让AI助手访问和总结周刊内容。
🆕 新实现可用! 基于官方SDK的StreamableHTTP传输,完全正常工作!
👉 查看 NEW_IMPLEMENTATION.md 了解新实现
npm start # 启动HTTP服务器
# 配置URL: http://localhost:3000/mcp
新手? 查看 快速开始指南 (QUICKSTART.md) 5分钟完成部署!
使用示例? 查看 使用示例 (USAGE_EXAMPLES.md) 学习如何提问。
npm start
配置:
{
"mcpServers": {
"cpp-weekly": {
"url": "http://localhost:3000/mcp"
}
}
}
npm run start:stdio
适合Claude Desktop本地使用。
SSE模式实现仍然可用,但推荐使用新实现:
npm run start:old-http # 旧的HTTP/SSE实现
npm run start:old-stdio # 旧的Stdio实现
list_weeklies): 获取所有可用周刊的期数列表get_weekly): 获取指定期数的完整内容get_weekly_summary): 获取周刊的元数据和摘要get_latest_weekly): 自动获取最新一期search_weeklies): 按关键词搜索所有周刊cd mcp-server
npm install
编辑 Claude Desktop 配置文件:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
添加以下配置:
{
"mcpServers": {
"cpp-weekly": {
"command": "node",
"args": ["/path/to/weekly/mcp-server/index.js"]
}
}
}
将 /path/to/weekly 替换为实际的项目路径。
MCP服务器通过stdio通信,可以被任何支持MCP的客户端使用:
node /path/to/weekly/mcp-server/index.js
列出所有周刊期数。
参数: 无
返回示例:
{
"total": 195,
"issues": ["001", "002", "003", ...]
}
获取指定期数的完整内容。
参数:
issue (string): 周刊期数,如 “001”, “195”返回: 完整的Markdown格式周刊内容
获取周刊的摘要信息。
参数:
issue (string): 周刊期数返回示例:
{
"title": "第1期",
"sections": ["资讯", "文章", "视频", "开源项目", "工具"],
"intro": "每周日推送从reddit/hackernews/lobsters摘抄一些c++动态",
"linkCount": 25,
"characterCount": 5432
}
获取最新一期周刊。
参数: 无
返回: 最新一期的完整内容
在所有周刊中搜索关键词。
参数:
keyword (string): 搜索关键词返回示例:
{
"keyword": "coroutine",
"totalMatches": 5,
"results": [
{
"issue": "001",
"matches": ["...匹配的上下文..."]
}
]
}
配置完成后,在Claude Desktop中可以这样提问:
服务器使用 @modelcontextprotocol/sdk 实现,遵循MCP标准协议。
主要文件:
index.js: 服务器主程序package.json: 依赖配置npm install确保 posts 目录存在于 mcp-server 的上级目录中。
MIT