Skip to main content
Glama

🧠 Sybil MCP — Notionリスクインテリジェンスサーバー

Sybilは、Notionデータベースをリアルタイムで監視し、財務リスクを検出するMCP(Model Context Protocol)サーバーです。エンジニアリングタスクが遅延し、マーケティングキャンペーンの開始と重なった場合、Sybilは自動的にNotionアラートセンターにアラートを作成します。


⚡ クイックスタート

手動で何かを実行する必要はありません。 Claude Desktopが自動的にサーバーを管理します。

  1. claude_desktop_config.json が設定されていることを確認してください(「設定」セクションを参照)

  2. Claude Desktopを開くと、サーバーがバックグラウンドで自動的に起動します

  3. Claudeにこう尋ねてください: 「Sybilはどのようなリスクを検出しますか?」

⚠️ Claude Desktopが開いている間は、絶対に node index.js を手動で実行しないでください。 サーバーインスタンスが2つ並行して実行され、Notionでアラートが重複して作成されてしまいます。


🏗️ アーキテクチャ

┌─────────────────────────────────────────────────────────────┐
│                      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

2つのサーバーインスタンスが同時に実行されるのを防ぐロックファイル


🔄 内部の仕組み

1. 自動起動

Claude Desktopを開くと、claude_desktop_config.json を読み込み、自動的に node index.js を起動します。サーバーは以下の処理を行います:

  • .sybil-alerts.json からアラート履歴を読み込む(存在する場合)

  • MCP(stdin/stdout)経由でClaudeに接続する

  • 直ちにバックグラウンド監視を開始する

2. 10秒ごとのバックグラウンド監視(トークン消費なし)

サーバーはClaudeとは完全に独立して、10秒ごとに監視サイクルを実行します:

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のトークンは消費されません。 Notion APIに対して直接HTTP呼び出しを行います。

3. Claudeからのツール呼び出し(ここではトークンが消費されます)

Claudeにリスクについて尋ねると、Claudeは check_sybil_risk ツールを呼び出します。これにより:

  • オンデマンドで同じ分析サイクルを直ちに実行する

  • テキストの要約をClaudeに返す

  • Claudeはそのテキストを使用して回答する

このステップでのみトークンが消費されます(会話内でのClaudeの応答の処理)。

4. 重複防止(3層構造)

Notionでアラートが重複して作成されるのを防ぐため:

レイヤー

メカニズム

目的

レイヤー 1

isProcessing フラグ

2つのサイクルが同時に実行されるのを防ぐ

レイヤー 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のインスタンスが1つだけ開いていることを確認してください

  • Claude Desktopを完全に再起動してください(ウィンドウを閉じるだけでなく、終了してください)

  • 以前のバグのあるセッションからの古いデータが含まれている場合は、.sybil-alerts.json を削除してください

Notionでアラートが表示されない場合:

  • NOTION_TOKEN が3つのデータベースすべてにアクセスできることを確認してください

  • エンジニアリングタスクのステータスが正確に "Delayed" になっていることを確認してください

  • マーケティングキャンペーンに Launch Date が設定されていることを確認してください

Claudeが check_sybil_risk ツールを見つけられないと言う場合:

  • Claude Desktopを再起動してMCPサーバーをリロードしてください

  • claude_desktop_config.json 内のパスが正しいことを確認してください


💡 バックグラウンド監視はトークンを消費しますか?

いいえ。 10秒ごとに実行される setInterval は、Notion APIに対して直接HTTP呼び出しを行います。そのプロセスにClaudeは関与しません。

トークンが消費されるのは、以下のタイミングのみです:

  • チャットでClaudeにメッセージを送信したとき

  • Claudeが回答するために check_sybil_risk ツールを呼び出すと判断したとき

バックグラウンド監視は、Claudeのトークン消費という点では完全に無料です。

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Erika05cristina/Sybil-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server