LoopGrid MCP

io.github.loopgridio由 GitHub 帳號 loopgridio 發布v0.1.0更新於 Oct 24, 2026

MCP bridge for tamper-evident evidence around consequential AI and agent decisions.

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

一個本機 stdio MCP 橋接服務,讓助理在 LoopGrid 服務中記錄並取得 AI 與代理決策的簽章、防竄改證據。

可以做什麼
記錄決策,包括擬議動作、模型資訊與授權限額,可選擇附加模型證據並評估既有政策。透過 LoopGrid 審核端點記錄核准或拒絕的審核,預設停用。附加外部工具已執行與已觀察到結果的證據,但本身不執行任何動作。將可攜式證據 ZIP 下載到設定的本機目錄。請所連線的 LoopGrid 服務驗證決策的簽章工作區鏈。
適用情境
當你需要對具重大影響的 AI 或代理決策(例如退款或其他業務動作)保留可稽核、防竄改的紀錄,並希望由助理蒐集證據、而實際動作仍留在你自己的整合中時使用。它是設計預覽版,並非正式生產版本。
執行需求
需要 Python 3.10+ 與來自 PyPI 的 loopgrid-mcp 套件,由 MCP 主機以本機 stdio 程序啟動。需要可連線的 LoopGrid v0.8.x 服務,例如監聽 8000 埠的公開容器。需要環境變數 LOOPGRID_BASE_URL 與 LOOPGRID_WORKSPACE;僅在啟用 LoopGrid 驗證時需要 LOOPGRID_SERVICE_KEY。此橋接服務不會自行載入 .env 檔案。
安裝前請注意
記錄動作會將證據寫入 LoopGrid 服務,證據 ZIP 會寫入本機目錄。啟用驗證時應提供具最小權限範圍的 LOOPGRID_SERVICE_KEY,不要使用管理金鑰。除非維運人員設定審核開關與審核者身分,否則審核記錄維持關閉;除非明確啟用,原始揭露酬載不會匯出。驗證只確認紀錄完整性,不代表外部聲明為真或符合法規。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 LoopGrid MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

LoopGrid MCP Server — v0.1 design preview

MCP access to the LoopGrid evidence plane for consequential AI and agent decisions.

loopgrid-mcp is a thin Model Context Protocol (MCP) bridge for LoopGrid.

It lets an MCP-compatible AI host record and retrieve signed, tamper-evident decision evidence through six MCP tools while keeping the MCP layer separate from the LoopGrid core runtime.

The bridge communicates with LoopGrid exclusively through its REST API. It does not import LoopGrid internals, access the LoopGrid database directly, change signing logic, alter the evidence schema, or modify the existing LoopGrid SDK contracts.

Public release

Current version:

text
0.1.0

Available through:

  • PyPI: loopgrid-mcp
  • GitHub: github.com/loopgridio/loopgrid-mcp
  • MCP Registry: io.github.loopgridio/loopgrid-mcp

The official MCP Registry entry is active and currently points to the PyPI 0.1.0 package using local stdio transport.

Architecture

text
MCP-compatible AI host/client          |          | stdio MCP          v     loopgrid-mcp          |          | LoopGrid REST API          v        LoopGrid          |          v signed, tamper-evident decision evidence

The v0.1 release uses local stdio transport.

No separate hosted MCP service, Railway deployment, Render deployment, AWS service, or MCP-specific database is required.

MCP tools

The server exposes six tools:

  • loopgrid.record_decision
  • loopgrid.record_review
  • loopgrid.record_action
  • loopgrid.record_outcome
  • loopgrid.get_evidence
  • loopgrid.verify_evidence

Important safety boundary

LoopGrid MCP is an evidence bridge, not a business-action executor.

loopgrid.record_action does not issue a Stripe refund, modify Salesforce, change ServiceNow, or invoke another external business system. It records evidence supplied by the calling integration that an external action occurred.

Likewise, loopgrid.record_outcome records an outcome reported by the calling integration.

LoopGrid can cryptographically verify the integrity of the captured record. That verification does not independently prove that every external-world claim in the record is true and does not determine legal or regulatory compliance.

Human review receives additional protection. loopgrid.record_review is registered as an MCP tool but is disabled by default. To enable it, an operator must explicitly configure both the review flag and reviewer identity. The model cannot choose the configured reviewer identity.

Raw FULL-mode disclosure payloads are also excluded from MCP evidence export by default.

Requirements

  • Python 3.10+
  • A reachable LoopGrid v0.8.x service
  • For local evaluation, the public LoopGrid GHCR image is sufficient

Normal use of the Python stdio server does not require Node.js.

Node.js is only needed for optional browser-based MCP Inspector tooling.

The project uses the official MCP Python SDK v2 line:

text
mcp>=2,<3

Quick start

1. Start LoopGrid

For local evaluation using Docker:

powershell
docker run --rm `  --platform linux/amd64 `  -p 8000:8000 `  -v loopgrid_demo_data:/app/data `  ghcr.io/cybertechsoft/loopgrid:edge

Leave the LoopGrid container running.

By default, LoopGrid MCP expects the service at:

text
http://127.0.0.1:8000

2. Install LoopGrid MCP from PyPI

Create a Python virtual environment:

powershell
py -3.12 -m venv .venv.\.venv\Scripts\Activate.ps1python -m pip install --upgrade pip

Install the published package:

powershell
pip install loopgrid-mcp

3. Check connectivity

Run:

powershell
loopgrid-mcp-doctor

Expected shape:

text
[OK] LoopGrid reachable: http://127.0.0.1:8000[OK] version: 0.8.1-design-partner[OK] evidence profile: 3.0-draft[OK] database: ok[OK] signer: local_ed25519[OK] MCP workspace: default

The local evaluation configuration does not require a service key when LoopGrid authentication is disabled.

4. Start the MCP server

Run:

powershell
loopgrid-mcp

Because this is a stdio MCP server, running it directly normally causes it to wait for MCP messages on standard input.

In normal use, an MCP-compatible host starts this command for you.

Generic MCP client configuration

A generic client configuration looks like:

json
{  "mcpServers": {    "loopgrid": {      "command": "loopgrid-mcp",      "env": {        "LOOPGRID_BASE_URL": "http://127.0.0.1:8000",        "LOOPGRID_WORKSPACE": "default"      }    }  }}

On Windows, some MCP hosts may require the full path to the executable, for example:

text
.venv\Scripts\loopgrid-mcp.exe

See:

text
examples/mcp-client-config.windows.json

for an example.

Install from source

For development or repository validation:

powershell
git clone https://github.com/loopgridio/loopgrid-mcp.gitcd loopgrid-mcp
py -3.12 -m venv .venv.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pippython -m pip install -e ".[dev]"

Then verify connectivity:

powershell
loopgrid-mcp-doctor

Development and validation

Unit and protocol tests

Run:

powershell
python -m pytest -ra

Repository release check

Run:

powershell
python .\scripts\release_check.py

REST smoke test

Run:

powershell
python .\scripts\smoke_test.py

The smoke test creates a synthetic decision, records synthetic action and outcome evidence, verifies the decision, and downloads an evidence ZIP.

It does not call a real external business system.

Real stdio MCP client test

Run:

powershell
python .\scripts\mcp_stdio_test.py

This launches loopgrid-mcp as a child stdio server using the official MCP Python client and verifies:

text
connect  -> discover all 6 tools  -> record decision  -> record action evidence  -> record outcome evidence  -> service-side verification  -> evidence ZIP export  -> review tool remains disabled by default

A successful run ends with:

text
[PASS] Real stdio MCP client test completed successfully.

This is the recommended automated release-gate test for the MCP protocol path.

Optional MCP Inspector

The browser-based MCP Inspector can be useful for manual exploration, but it is not required to run or validate LoopGrid MCP.

The canonical automated protocol test in this repository remains:

powershell
python .\scripts\mcp_stdio_test.py

If your installed MCP development tooling supports the Inspector cleanly, you can also try:

powershell
mcp dev .\src\loopgrid_mcp\server.py

Tool behavior

loopgrid.record_decision

Captures a decision through the LoopGrid REST API.

Optional inputs can also append model evidence and evaluate an existing LoopGrid policy.

It never executes proposed_action.

Example:

json
{  "decision_type": "customer_refund",  "agent_id": "support-agent",  "agent_version": "1.0",  "proposed_action": {    "tool": "stripe.refunds.create",    "amount": 720,    "currency": "USD"  },  "model": {    "provider": "openai",    "name": "gpt-5"  },  "authority": {    "acting_for": "Acme",    "limit_usd": 1500,    "scope": ["refund:create"]  }}

loopgrid.record_review

Records an approve/reject review through the LoopGrid review endpoint.

This tool is disabled by default.

To enable it deliberately:

powershell
$env:LOOPGRID_MCP_ENABLE_REVIEW_TOOL="true"$env:LOOPGRID_MCP_REVIEWER_ID="[email protected]"

When LoopGrid authentication is enabled, the configured service key must also have the appropriate review scope.

loopgrid.record_action

Appends tool_executed evidence to the decision record.

It does not execute the external tool.

Canonical fields such as the tool name cannot be overwritten by free-form details.

loopgrid.record_outcome

Appends outcome_observed evidence.

The calling integration is responsible for obtaining the real downstream outcome.

Canonical fields such as status and verified_against cannot be overwritten by free-form details.

loopgrid.get_evidence

Downloads the portable LoopGrid evidence ZIP to:

text
LOOPGRID_EVIDENCE_DIR

The default directory is:

text
./loopgrid-evidence

Raw disclosure payloads are blocked from MCP evidence export unless explicitly enabled:

powershell
$env:LOOPGRID_MCP_ALLOW_PAYLOAD_EXPORT="true"

loopgrid.verify_evidence

Asks the connected LoopGrid service to verify the decision's signed workspace chain.

This is service-side verification.

Independent/offline verification of an exported evidence bundle should use the corresponding LoopGrid evidence-verification workflow rather than duplicating that verifier inside the MCP bridge.

Authenticated LoopGrid deployments

For local evaluation with LoopGrid authentication disabled, no service key is required.

When authentication is enabled:

powershell
$env:LOOPGRID_SERVICE_KEY="<scoped-service-key>"

Use the minimum scopes required by the MCP tools you enable.

Do not use an administrative key unless administration is genuinely required.

Configuration

See:

text
.env.example

for the complete supported environment-variable configuration.

Common settings include:

text
LOOPGRID_BASE_URLLOOPGRID_WORKSPACELOOPGRID_SERVICE_KEYLOOPGRID_EVIDENCE_DIRLOOPGRID_MCP_TIMEOUT_SECONDSLOOPGRID_MCP_ENABLE_REVIEW_TOOLLOOPGRID_MCP_REVIEWER_IDLOOPGRID_MCP_ALLOW_PAYLOAD_EXPORT

The bridge does not automatically load .env.

The MCP host should inject environment variables, or the operator should configure them in the environment that starts the server.

The LoopGrid service URL is operator configuration rather than an MCP tool argument. This prevents a model from redirecting the bridge to an arbitrary LoopGrid host through a tool call.

Privacy and disclosure defaults

LoopGrid supports evidence workflows with different disclosure levels.

The MCP bridge follows conservative defaults:

  • human review recording is disabled unless explicitly enabled;
  • reviewer identity is operator-configured;
  • raw FULL-mode payload export is disabled by default;
  • authenticated deployments should use scoped service keys;
  • external business actions are never executed by the MCP bridge itself.

Repository boundary

LoopGrid core and LoopGrid MCP intentionally remain separate:

text
github.com/cybertechsoft/loopgrid    core LoopGrid evidence infrastructure
github.com/loopgridio/loopgrid-mcp    MCP protocol bridge

The MCP bridge communicates with the LoopGrid core runtime only over HTTP.

Validation status

LoopGrid MCP 0.1.0 has been validated on Windows against the public LoopGrid 0.8.1-design-partner container.

Validation included:

  • clean repository installation;
  • Python unit/protocol tests;
  • REST connectivity;
  • synthetic decision creation;
  • action evidence recording;
  • outcome evidence recording;
  • service-side cryptographic verification;
  • portable evidence ZIP export;
  • official MCP Python client stdio negotiation;
  • discovery of all six MCP tools;
  • confirmation that the review tool remains disabled by default.

The official MCP Python client successfully negotiated MCP protocol:

text
2026-07-28

See VALIDATION.md for the detailed release-gate record.

MCP Registry

LoopGrid MCP is published in the official MCP Registry as:

text
io.github.loopgridio/loopgrid-mcp

Current Registry version:

text
0.1.0

Registry metadata:

text
Status: activeLatest: truePackage registry: PyPIPackage: loopgrid-mcpTransport: stdio

The Registry entry is publicly discoverable and points to:

text
https://github.com/loopgridio/loopgrid-mcp

The corresponding Python package is published as:

text
loopgrid-mcp==0.1.0

The hidden ownership marker near the top of this README:

html
<!-- mcp-name: io.github.loopgridio/loopgrid-mcp -->

is intentionally retained because it is used for MCP Registry package ownership verification.

For future releases:

  1. update the package version;
  2. update server.json to the same version;
  3. run the repository validation suite;
  4. publish the new version to PyPI;
  5. confirm the package is publicly installable;
  6. validate server.json with mcp-publisher;
  7. publish the corresponding version to the MCP Registry.

Release posture

0.1.0 is a design preview, not Production GA.

It is intended to validate a clean MCP integration path for LoopGrid v0.8.x without changing LoopGrid's signing, hash-chain, evidence-bundle, verification, or SDK contracts.

LoopGrid provides signed, tamper-evident evidence and append-only decision history. Verification confirms the integrity of the captured record; it does not determine legal compliance.

License

Apache-2.0.

See LICENSE.

來源:README.md,提交 5489ff3

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 20, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分