🔄 ChangeDetection.io MCP服务器(Rust)🤖

\[!警告\] 该项目目前正在积极开发中(v0.1.5) 可生产的. 功能可能会发生变化,并且可能会发生重大变化,恕不另行通知。 使用此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。
📦 安装
家酿
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年启动 尼古拉斯·王尔德.
