KG

keel-grc/keelgrc-mcp

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

0 stars 0 forks Качество 83 Тренд 14MIT

A for Keel. Point any MCP client (Claude Desktop, Claude Code, Cursor) at it and drive your compliance program in natural language: "what's my ISO 27001 readiness?

Обзор

A for Keel. Point any MCP client (Claude Desktop, Claude Code, Cursor) at it and drive your compliance program in natural language: "what's my ISO 27001 readiness?", "list controls still in gap", "open a task to rotate our TLS certs." Docs: https://docs.keelgrc.com/api-mcp/mcp-server/ · Open source: https://keelgrc.com/open-source/ It's a thin wrapper over the Keel public API (/api/v1). Every action maps to a real endpoint and is scoped to your API key's organization. The MCP grants no more access than the key already has. One tool per resource, with an action argument. Thirteen tools cover forty-five operations; the alternative is a tool per operation, and MCP clients degrade badly past roughly a hundred tools. Some actions are absent. Each is a gap in the REST surface, and each is stated in the tool description so a model reads an answer rather than a hole: - keel_tasks has no . Keel has no delete-a-task operation anywhere, the app included.

README

Показан фрагмент оригинального README. Открыть оригинал.

keelgrc-mcp

A Model Context Protocol (MCP) server for Keel. Point any MCP client (Claude Desktop, Claude Code, Cursor) at it and drive your compliance program in natural language: “what’s my ISO 27001 readiness?”, “list controls still in gap”, “open a task to rotate our TLS certs.”

Docs: · Open source:

KEEL_API_KEY=your_key npx keelgrc-mcp

It’s a thin wrapper over the Keel public API (/api/v1). Every action maps to a real endpoint and is scoped to your API key’s organization. The MCP grants no more access than the key already has.

Tools

One tool per resource, with an action argument. Thirteen tools cover forty-five operations; the alternative is a tool per operation, and MCP clients degrade badly past roughly a hundred tools.

Tool Actions Maps to
keel_whoami (none) GET /me
keel_members (none) GET /members
keel_frameworks (none) GET /frameworks
keel_readiness (none) GET /readiness
keel_controls list, get, create, update, delete, mappings, map, unmap /controls, /controls/{id}, /controls/{id}/crosswalks
keel_starter_controls (none) POST /frameworks/{key}/starter-controls
keel_tasks list, get, create, update /tasks, /tasks/{id}
keel_risks list, get, create, update, delete /risks, /risks/{id}
keel_vendors list, get, create, update, delete /vendors, /vendors/{id}
keel_people list, get, create, update, delete /people, /people/{id}
keel_policies list, get, create, update, delete /policies, /policies/{id}
keel_evidence list, get, create, update, delete /evidence, /evidence/{id}
keel_webhooks list, create, rotate, delete /hooks, /hooks/{id}, /hooks/{id}/rotate

Some actions are absent. Each is a gap in the REST surface, and each is stated in the tool description so a model reads an answer rather than a hole:

  • keel_tasks has no delete. Keel has no delete-a-task operation anywhere, the app included. Update the status to cancelled instead, which keeps the record.
  • keel_controls create takes no state, owner or mappings. It takes a name, a description and an optional key of your own, which is all the app’s “Add a control” form takes. A new control starts not_started, unowned and unmapped: set state and ownerEmail with update, and clauses with map, which attaches any control to any clause of an applied framework.
  • Applying a framework is not here. It is plan-metered and happens in the app; keel_starter_controls and map refuse a framework the workspace has not applied.
  • keel_webhooks has no get or update. The API has neither. List them to read one, and replace a subscription by deleting it and creating another.
Открыть полный README на GitHub

Установка

npx -y keelgrc-mcp
Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

{ "mcpServers": { "keel": { "command": "npx", "args": ["-y", "keelgrc-mcp"], "env": { "KEEL_API_KEY": "keel_live_..." } } } }