使用说明
🔄 ChangeDetection.io MCP服务器(Rust)🤖
[!警告] 该项目目前正在积极开发中(v0.1.6) 可生产的. 功能可能会发生变化,并且可能会发生重大变化,恕不另行通知。 使用此MCP服务器的风险由您自行承担。
一个Rust实现 变更检测.io MCP(模型上下文协议)服务器此服务器连接到ChangeDetection.io实例,并公开工具以通过模型上下文协议监视网站更改。
✨ 特性
服务器为高效交互提供了一套整合的工具,针对较低的令牌使用率和更好的上下文管理进行了优化。
watch_ops:全面的手表管理。- 行动:
List,Search,Get,Create,Update,Delete,Trigger,Pause,Unpause,Mute,Unmute,Import,SetSelectors,SetFetcher,ConfigureNotifications,ListErrors,ListByProcessor.
- 行动:
tag_ops:手表标签的管理。- 行动:
List,Create,Get,Update,Delete.
- 行动:
notification_ops:全局通知端点管理。- 行动:
List,Add,Update,Delete.
- 行动:
history_ops:查看历史记录、快照和差异。- 行动:
GetHistory,GetDiff,GetContent,GetScreenshot,ListAll,SetLimit,GetInfo.
- 行动:
system_ops:系统发现和全局设置。- 行动:
GetInfo,GetSpec,ListFetchers,ListProxies,GetSettings,ListProcessors.
- 行动:
maintenance_ops:系统维护任务。- 行动:
Backup,Export.
- 行动:
📚 MCP资源
服务器通过MCP资源协议公开关键数据,允许LLM通过URI直接读取内容。
watches://{uuid}/latest:访问特定手表的最新快照内容。system://openapi-spec:检索ChangeDetection.io API的完整OpenAPI规范。
🚀 优化功能
- 整合工具: 通过对相关操作进行分组来减少工具发现开销。
- 分页: 支持
page和per_page列表操作的参数。 - 字段选择: 允许仅请求特定字段以最小化响应大小。
- 多种运输支持: Stdio(默认)和HTTP/JSON-RPC。
📦 安装
家酿
使用安装MCP服务器 家酿 通过 尼古拉斯·斯维尔德/自制水龙头:
brew install nicholaswilde/tap/changedetection-mcp-rs
从源代码构建
要构建该项目,您需要安装一个Rust工具链。
本地建设
# Build in release mode
task build:local
交叉编译
# Build for amd64 (Linux)
task build:amd64
# Build for arm64 (Linux)
task build:arm64
🚀 用法
⌨️ 命令行界面
服务器是通过CLI参数或环境变量配置的。
# Run via Stdio (default)
./target/release/changedetection-mcp-rs --api-key your_key
# Run via HTTP
./target/release/changedetection-mcp-rs --transport http --port 3000 --api-key your_key
🤖 配置示例(克劳德桌面)
如果通过安装 家酿,使用可执行文件名。如果 从源代码构建,使用二进制文件的绝对路径。
将以下内容添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"changedetection": {
"command": "changedetection-mcp-rs",
"env": {
"CHANGEDETECTION_API_KEY": "your_api_key_here",
"CHANGEDETECTION_BASE_URL": "http://your_instance_url:5000"
}
}
}
}
🧪 测试
该项目使用 go任务 用于开发任务。
# Run all CI checks (fmt, lint, unit tests)
task test:ci
# Run unit tests only
task test
# Run MCP integration tests
task test:integration
# Run MCP Inspector (requires npx)
task inspector
📊 覆盖
该项目使用 cargo-llvm-cov 用于代码覆盖率分析。
# Show coverage summary in console
task coverage
🤝 贡献
欢迎投稿!请遵循标准的Rust编码约定,并确保所有测试通过(task test:ci)在提交功能之前。
⚖️ 许可证
✍️ 作者
该项目于2026年启动 尼古拉斯·王尔德.