# Marrow AI: Control Layer for AI Agents

Marrow AI checks agent actions against policy and records evidence of outcomes. Use it when agents take consequential actions across a shared workflow.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 6
- Author: getmarrow
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/getmarrow/marrow-mcp
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/marrow-ai-control-layer-for-ai-agents

## What it does

Marrow AI adds a policy check before an agent acts and records the result afterward. Its MCP tools cover status, action governance, evidence-backed task closure, and lessons shared across an agent fleet. It sits alongside existing models and agent hosts rather than replacing them.

Set `MARROW_API_KEY` to an API key before starting the server. In Claude Code, add it with `claude mcp add`, then restart the host and review hook trust. Native Windows is not supported; use WSL.

Hooks run inside the agent host, so they do not stop actions taken outside it or after someone edits the host settings. If Marrow cannot be reached, hooks hold high-risk actions while routine ones continue with a warning.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `MARROW_API_KEY` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add marrow -e MARROW_API_KEY=<MARROW_API_KEY> -- npx -y @getmarrow/mcp
```
Replace <…> with your own values

### Codex

**Platform CLI**
```bash
codex mcp add marrow-ai-control-layer-for-ai-agents --env MARROW_API_KEY=<MARROW_API_KEY> -- npx -y @getmarrow/mcp
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "marrow-ai-control-layer-for-ai-agents": {
            "command": "npx",
            "args": [
                "-y",
                "@getmarrow/mcp"
            ],
            "env": {
                "MARROW_API_KEY": "<MARROW_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "marrow-ai-control-layer-for-ai-agents": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@getmarrow/mcp"
            ],
            "env": {
                "MARROW_API_KEY": "<MARROW_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e MARROW_API_KEY=<MARROW_API_KEY> marrow-ai-control-layer-for-ai-agents npx -y @getmarrow/mcp
```
Replace <…> with your own values

## When to use it
- check an agent action before it runs
- record evidence for a completed task
- apply prior team lessons to a later action
- enforce policy across agents and environments

## Example prompts
- Check whether this release can be published and explain the decision.
- Record the task outcome with evidence that it was completed.
- Check Marrow status before changing production data.

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 392262
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33989
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81163
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119231
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47577
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43902

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
