Skip to main content
Glama

🧠 Sybil MCP — Notion 风险情报服务器

Sybil 是一个 MCP(模型上下文协议)服务器,它实时监控您的 Notion 数据库并检测财务风险:当工程任务延期并与营销活动发布时间重叠时,Sybil 会自动在您的 Notion 警报中心创建警报。


⚡ 快速开始

您无需手动运行任何程序。 Claude Desktop 会自动管理服务器。

  1. 确保您的 claude_desktop_config.json 已配置(请参阅配置部分)

  2. 打开 Claude Desktop — 服务器会在后台自动启动

  3. 询问 Claude:“Sybil 检测到哪些风险?”

⚠️ 在 Claude Desktop 运行时,切勿手动运行 node index.js 这会导致同时运行两个服务器实例,并在 Notion 中产生重复警报。


Related MCP server: MCP Crypto Portfolio

🏗️ 架构

┌─────────────────────────────────────────────────────────────┐
│                      Claude Desktop                         │
│                                                             │
│   ┌─────────────┐   MCP Protocol   ┌────────────────────┐  │
│   │  Claude AI  │ ◄──────────────► │  Sybil MCP Server  │  │
│   │  (chat)     │   (stdin/stdout)  │  (node index.js)   │  │
│   └─────────────┘                  └────────┬───────────┘  │
│                                             │               │
└─────────────────────────────────────────────┼───────────────┘
                                              │ HTTPS
                                    ┌─────────▼──────────┐
                                    │    Notion API       │
                                    │  ┌──────────────┐  │
                                    │  │ Engineering  │  │
                                    │  │   Database   │  │
                                    │  ├──────────────┤  │
                                    │  │  Marketing   │  │
                                    │  │   Database   │  │
                                    │  ├──────────────┤  │
                                    │  │ Alert Center │  │
                                    │  │   Database   │  │
                                    │  └──────────────┘  │
                                    └────────────────────┘

组件

组件

描述

Claude Desktop

自动管理 MCP 服务器生命周期

Sybil MCP Server

在后台运行的 Node.js 进程。每 10 秒监控一次 Notion

Notion API

警报的数据源和目的地。全部通过 HTTPS 进行

.sybil-alerts.json

本地文件,用于记录已创建的警报(在重启后保持持久化)

.sybil-lock

锁文件,防止两个服务器实例同时运行


🔄 内部工作原理

1. 自动启动

当您打开 Claude Desktop 时,它会读取 claude_desktop_config.json 并自动启动 node index.js。服务器会:

  • 加载来自 .sybil-alerts.json 的警报历史记录(如果存在)

  • 通过 MCP (stdin/stdout) 连接到 Claude

  • 立即开始后台监控

2. 每 10 秒进行一次后台监控(不消耗 Token)

服务器每 10 秒运行一次监视周期,完全独立于 Claude:

Every 10s:
  1. Read Engineering DB → look for tasks with status "Delayed"
  2. Read Marketing DB   → (in parallel with step 1)
  3. For each delayed task × campaign:
       - Is Launch Date <= Due Date? → risk detected
       - Already in .sybil-alerts.json? → skip (no duplicates)
       - Already exists in Notion (filter query)? → skip
       - If not found: create comment + row in Alert Center

🔑 此周期不会消耗 Claude Token。 它直接向 Notion API 发出 HTTP 调用。

3. 来自 Claude 的工具调用(此处会消耗 Token)

当您向 Claude 询问风险时,Claude 会调用 check_sybil_risk 工具。这会:

  • 立即按需运行相同的分析周期

  • 向 Claude 返回文本摘要

  • Claude 使用该文本回复您

只有此步骤会消耗 Token(即在您的对话中处理 Claude 的回复)。

4. 防重复保护(3 层机制)

为防止在 Notion 中创建重复警报:

层级

机制

目的

第 1 层

isProcessing 标志

防止两个周期同时运行

第 2 层

.sybil-alerts.json (磁盘)

在服务器重启后记住警报

第 3 层

Notion 筛选查询

如果文件中没有记录,则向 Notion 进行确认


⚙️ 配置

Claude Desktop 配置文件位于:

C:\Users\[YOUR_USER]\AppData\Roaming\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "sybil": {
      "command": "node",
      "args": ["C:/Users/USUARIO/Desktop/sybil-mcp/index.js"],
      "env": {
        "NOTION_TOKEN": "your_token_here",
        "ID_ENGINEERING": "your_engineering_database_id",
        "ID_MARKETING": "your_marketing_database_id",
        "ID_ALERTAS": "your_alert_center_database_id",
        "ID_SALES": "your_sales_database_id"
      }
    }
  }
}

环境变量也可以在项目文件夹中的 .env 文件中定义。


🔧 如何更新代码

在对 index.js 进行更改后:

  1. 保存文件

  2. 完全退出 Claude Desktop

    • 右键点击系统托盘图标 → 退出

    • (不要只关闭窗口)

  3. 重新打开 Claude Desktop

  4. Claude 将自动使用新代码启动服务器

✅ 要确认新代码已生效,请询问 Claude:“用 Sybil 检查风险”。您会看到 Notion 警报中心没有出现新的重复项。


📁 项目文件

sybil-mcp/
├── index.js              ← Main MCP server
├── .env                  ← Environment variables (do not commit to git)
├── .sybil-alerts.json    ← Alert history (auto-generated)
├── .sybil-lock           ← Active process lock (auto-generated)
├── .gitignore
└── README.md

自动生成的文件

文件

描述

可以删除吗?

.sybil-alerts.json

已创建警报的历史记录

可以,但服务器会在下次运行时重新创建警报

.sybil-lock

指示活动的服务器实例

仅当服务器崩溃并遗留该文件时


🩺 故障排除

Notion 中仍然出现重复警报?

  • 确保只打开了一个 Claude Desktop 实例

  • 完全重启 Claude Desktop(退出,不要只关闭窗口)

  • 如果 .sybil-alerts.json 包含来自之前错误会话的陈旧数据,请将其删除

Notion 中没有出现警报?

  • 验证您的 NOTION_TOKEN 是否有权访问所有 3 个数据库

  • 确认工程任务的状态是否完全为 "Delayed"

  • 确认营销活动是否设置了 Launch Date

Claude 说找不到 check_sybil_risk 工具?

  • 重启 Claude Desktop 以重新加载 MCP 服务器

  • 验证 claude_desktop_config.json 中的路径是否正确


💡 后台监控会消耗 Token 吗?

不会。 每 10 秒运行一次的 setInterval 会直接向 Notion API 发出 HTTP 调用。Claude 不参与该过程。

只有在以下情况下才会消耗 Token:

  • 您在聊天中向 Claude 发送消息

  • Claude 决定调用 check_sybil_risk 工具来回答您

就 Claude Token 而言,后台监控是完全免费的。

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects Claude AI to KuCoin portfolio and Notion workspace for real-time crypto portfolio management, automated reporting, and AI-powered risk analysis with enterprise-grade security and observability.
    2
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Enables personal workflow management by turning Notion into a task and knowledge system via slash commands and 19 integrated MCP tools. It supports project-based task tracking, subtask management, and automated note summarization directly through the Claude interface.
    19
    2
    -