使用说明
LoopSense MCP服务器
LoopSense是一个开源的MCP服务器,它为AI编码代理关闭了反馈回路,使他们能够实时查看CI结果、部署、测试结果和文件系统更改。
它做什么
当AI代理推送代码、运行测试或触发部署时,LoopSense会观察下游效果并将其显示回代理。不再盲目行动。
支持的来源:
- GitHub操作CI运行(轮询)
- 本地进程(stdout/stderr捕获、退出代码)
- 文件系统更改(通过chokidar)
- HTTP端点(轮询,带有状态/正文断言)
- 传入的webhooks(轻量级HTTP服务器)
需求
- Node.js 18+
安装
npm install -g @loopsense/mcp
或者直接使用npx运行:
npx @loopsense/mcp
MCP配置
克劳德代码 (一个衬垫):
claude mcp add loopsense -e GITHUB_TOKEN=ghp_yourtoken -- npx -y @loopsense/mcp
或者手动添加到您的 claude_desktop_config.json (或等效的MCP主机配置):
{
"mcpServers": {
"loopsense": {
"command": "npx",
"args": ["-y", "@loopsense/mcp"],
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}
或者,如果全局安装:
{
"mcpServers": {
"loopsense": {
"command": "loopsense",
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}
环境变量
| 变量 | 描述 |
|---|---|
GITHUB_TOKEN |
用于CI轮询的GitHub个人访问令牌 |
工具
watch_ci
观看GitHub Actions工作流的运行。每30秒进行一次轮询,并在状态更改时发出事件。
{
"owner": "acme",
"repo": "api",
"branch": "main",
"action_id": "deploy-2024-01"
}
watch_process
生成一个本地进程并捕获其输出和退出代码。
{
"command": "npm",
"args": ["test"],
"cwd": "/path/to/project",
"action_id": "run-tests"
}
watch_file
查看文件或目录是否有更改。
{
"path": "/path/to/dir",
"pattern": "**/*.ts",
"action_id": "file-changes"
}
watch_url
轮询HTTP端点并检测状态或正文更改。
{
"url": "https://api.example.com/health",
"interval": 15,
"expect": {
"status": 200,
"body_contains": "\"status\":\"ok\""
}
}
watch_webhook
启动本地HTTP服务器以接收webhook有效负载。
{
"source_type": "vercel",
"port": 9876
}
将您的webhook发送者配置为POST到 http://localhost:9876.
check_consequences
获取特定操作或所有最近事件的事件。
{
"action_id": "deploy-2024-01"
}
list_watches
列出所有活跃的观察者。
cancel_watch
通过ID阻止观察者。
{
"watch_id": "uuid-here"
}
poll_events
获取自时间戳以来的事件(不支持通知的客户端的回退)。
{
"since": "2024-01-01T00:00:00.000Z"
}
资源
LoopSense公开了两个反应式更新的MCP资源:
loopsense://timeline/recent--所有手表的最近100个事件loopsense://watches/active--所有当前活动的手表loopsense://consequences/{action_id}--特定行动的事件
用法示例
代理工作流可能看起来像:
- 代理将代码推送到分支
- 客服电话
watch_ci随着action_id: "my-pr-123" - LoopSense每30秒轮询一次GitHub操作
- 当CI完成时,代理调用
check_consequences随着action_id: "my-pr-123" - Agent看到测试失败并修复它们
数据存储
事件和观察记录将保存到 ~/.loopsense/events.db (SQLite)。服务器重新启动时,活动监视会自动恢复。
发展
git clone https://github.com/jarvisassistantux/loopsense
cd loopsense
npm install
npm run dev # run in dev mode (tsx)
npm run build # compile with tsup
npm run typecheck # TypeScript check
npm test # run tests
许可证
麻省理工学院
