Skip to main content
Glama

SENTINEL AGENT — エージェント型運用アプリビルダー

Foundryスタイルの運用オントロジーのためのAIコマンドレイヤー:MCPを介して接続し、実際のクエリデータで自然言語の質問に回答し、人間が承認したアクションを提案し、オンデマンドで運用ダッシュボードを生成するLLMエージェント — 自己構築型のPalantir AIPスタイル運用ツール。

系譜: このプロジェクトは、私がLocari(私のリードジェンSaaS — 本番稼働中、プライベートリポジトリ)向けに構築したAI サイト生成エージェントを、「LLMがウェブサイトを生成する」から「LLMがガバナンス付きでエンタープライズオントロジー上で運用する」へと進化させたものです。同じエージェントループのDNAを持ちながら、すべての機能が型付けされ、ホワイトリスト化され、プレビュー可能で、人間の承認を必要とし、監査されます。このエージェントはPACIFIC SENTINEL(プロジェクト1)と連携し、そのFastAPIオントロジーを直接消費できます。

完全デモ: Q&A、承認済みアクション、生成されたダッシュボード

3プロンプトデモ

すべてを実行(オフライン、APIキー不要):

.venv/bin/python scripts/demo.py

または、Webアプリに次のように入力します:

#

プロンプト

表示内容

1

Which units are critically low on water?

エージェントはオントロジースキーマに基づき、フィルタリングクエリを実行し、テーブルで回答します。すべてのツール呼び出しが右パネルにライブストリーミングされます。

2

Send 500 water from DEP-1 to UNIT-1

エージェントは提案します。プレビューカードに変更前後の状態と制約チェックが表示されます。あなた承認して実行をクリックするまで何も変わりません。その後、補給所の在庫を再質問して状態変化を確認し、GET /auditで証跡を確認できます。

3

Build me a dashboard for the depots

エージェントはライブデータをクエリし、JSONダッシュボード仕様を公開します。キャンバスに統計タイル、テーブル、棒グラフが表示されます。

Q&A

アクションプレビュー

実行済み

ダッシュボード

Related MCP server: Enterprise Architecture MCP Server

MCPとは何か、そしてこれがPalantir AIPをどのように模倣しているか

MCP(Model Context Protocol) は、LLMに外部システム上の型付けされ、発見可能で、制限されたツールサーフェスを提供するオープンプロトコルです。サーバーはツール(名前 + 説明 + JSON Schema)を公開し、任意のクライアント(エージェント、IDE、チャットアプリ)が接続し、それらをリストし、呼び出します。プロトコルの境界がガバナンスの境界です。モデルはサーバーが公開するものだけを実行できます。

このプロジェクトはPalantirのAIPアーキテクチャのミニチュア版です:

このプロジェクト

Palantir AIP / Foundry相当

オントロジーバックエンド(StubOntologyHttpOntology → Project 1のFastAPI)— 型付けされたオブジェクト(SupplyDepotDeployedUnitForwardOperatingBase

Foundryオントロジー:生データ上のセマンティックオブジェクト、すべてのダウンストリームサーフェスで消費される単一のハブ

MCP読み取りツール(list_object_typesquery_objects

AIPエージェントがグラウンディングに使用するオントロジーAPI / オブジェクトクエリ

propose_action → 制約チェック付きプレビュー → 人間の承認 → execute_action

AIPアクションタイプ(提出基準 + 人間承認ワークフロー)— 書き込みはガバナンスされ、検証された操作であり、生のテーブル編集ではない

オペレーターキーによる承認ゲート + シングルユーストークン + エージェントツールホワイトリスト

エージェントの能力と人間の権限を分離するAIPの仕組み

すべての提案/承認/実行/拒否の追記専用監査ログ

AIP評価・監査証跡

publish_dashboard JSON仕様 → 固定Reactレンダラー

オントロジーデータ上に構築されたWorkshopスタイルの運用アプリ(宣言的設定、任意のコードではない)

エージェントループ(Claude + MCPツール + イベントストリーム)

AIP Agent Studio(ツールアクセス + ストリーム推論を持つエージェント)

ヒューマン・イン・ザ・ループの仕組み

 user ──ask──▶ Agent (LLM)                 MCP server                FastAPI (operator)
                │  propose_action(...) ──▶ validate params
                │                          run constraint checks
                │                          build before/after PREVIEW   (no mutation)
                │ ◀── proposal + action_id ─┘
 UI shows preview card ──── human clicks Approve ──▶ approve_action(operator_key)
                                                     └─ mints SINGLE-USE token
                                                   execute_action(token)
                                                     ├─ re-validates vs CURRENT state
                                                     ├─ applies the change
                                                     └─ audit log: proposed→approved→executed

3つの実施レイヤーがエージェントを提案のみに制限します:

  1. ホワイトリストapprove_action / reject_action / execute_action はLLMのツールリストから削除されます。エージェントループは与えられていないツールへの呼び出しを拒否します。

  2. 能力ゲート — 承認には、オーケストレーションサーバーのプロセス内にのみ存在するOPERATOR_KEYが必要です(MCPサブプロセス環境に注入されます)。LLMコンテキストにそれが含まれることは決してないため、エージェントは原理的に承認トークンを生成できません。

  3. トークンメカニズム — トークンはシングルユース(secrets.compare_digest、初回使用で消費)であり、実行は現在の状態に対してすべての制約を再検証するため、古い承認で補給所を超過引き出しすることはできません。

同じ哲学がダッシュボードにも適用されます。エージェントは厳密に検証されたJSON仕様extra="forbid"、3つのウィジェットタイプ、制限付きサイズ)を出力し、固定のReactコンポーネントが解釈します。HTML、JSX、実行可能コードは決して使用されません。

アーキテクチャ

 React 18 + Vite + TS + Tailwind          FastAPI (port 8100)              MCP server (stdio subprocess)
 ┌──────────────┬───────────────┐   WS    ┌──────────────────────┐  MCP    ┌─────────────────────────┐
 │ Chat panel   │ Actions cards │ ◀─────▶ │ /ws  agent events    │ ◀─────▶ │ 9 tools over ontology   │
 │ (markdown)   │ Live trace    │  HTTP   │ /actions/{id}/approve│  stdio  │ ┌─ StubOntology (dflt)  │
 │              │ Dashboard     │ ◀─────▶ │ /actions/{id}/reject │         │ └─ HttpOntology ──▶ Project 1
 │              │ canvas        │         │ /audit  /health      │         │    (pacific-sentinel)
 └──────────────┴───────────────┘         │ OpsAgent loop + LLM  │         └─────────────────────────┘
                                          │ (Claude ⟷ MockLLM)  │
                                          └──────────────────────┘

実行方法

# Backend
python3.11 -m venv .venv && .venv/bin/pip install -e ".[dev]"
.venv/bin/python -m pytest                  # 60 tests, fully offline
.venv/bin/python scripts/demo.py            # scripted 3-prompt demo (mock LLM)
.venv/bin/python scripts/smoke_mcp.py       # raw MCP stdio smoke run

# CLI
.venv/bin/python -m ops_agent.cli --llm mock "Which units are critically low on water?"

# Web app: API on :8100, frontend on :5174
LLM_MODE=mock .venv/bin/python -m uvicorn ops_agent.server:app --port 8100
cd frontend && npm install && npm run dev   # open http://localhost:5174
npm test                                    # 8 Vitest component tests

# Real LLM (claude-opus-4-8; key read from env, never hardcoded)
export ANTHROPIC_API_KEY=sk-ant-...
.venv/bin/python -m ops_agent.cli "Which units are critically low on water?"

# Against Project 1's live ontology instead of the stub
ONTOLOGY_BACKEND=http ONTOLOGY_API_URL=http://localhost:8000 ...

LLMモードLLM_MODE=auto(デフォルト:ANTHROPIC_API_KEYが設定されていればライブ、それ以外はモック)/ mock / liveMockLLMはツール呼び出しモデル(グラウンディングクエリ→フィルタリングクエリ→回答、アクション解析、ダッシュボード構築)のように動作するため、テストやデモを含むすべてのフローがオフラインで決定論的に実行されます。

マイルストーン

  • M1 MCPサーバー:交換可能なバックエンド上の読み取り専用オントロジーツール + テスト

  • M2 エージェントループ:MCP上のLLMツール呼び出し、ホワイトリスト、監査イベント、CLI

  • M3 FastAPI WebSocketストリーミング + Reactチャット/トレースUI

  • M4 提案 → 人間承認(オペレーターキー + シングルユーストークン)→ 実行 → 監査

  • M5 ダッシュボード仕様生成(安全なJSON)+ Reactレンダラー(recharts)

  • M6 デモスクリプト、スクリーンショット、このREADME

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • A
    license
    -
    quality
    B
    maintenance
    Turns warehouse/lakehouse tables into a governed entity-relationship knowledge graph exposed through MCP, enabling AI agents to answer multi-table business questions without hard-coded SQL or large schema prompts.
    Apache 2.0
  • F
    license
    -
    quality
    C
    maintenance
    Enables engineers and plant managers to interact with manufacturing systems using natural language, providing machine health analysis, KPI dashboards, predictive maintenance, and automated workflow execution via MCP.
  • A
    license
    -
    quality
    B
    maintenance
    Enables governed, agent-agnostic data exploration by allowing users to ask natural language questions through MCP-compatible agents, executing safe, permission-scoped queries against data sources and returning interactive charts.
    48
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • An AI concierge that turns static forms into adaptive AI conversations. From any MCP client.

  • GibsonAI MCP server: manage your databases with natural language

  • Official Microsoft MCP Server to query Microsoft Entra data using natural language

View all MCP Connectors

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/aryanpatel27/sentinel-agent'

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