Skip to main content
Glama

WritBase

MCP-native task management for AI agent fleets

A control plane for AI agents and human supervisors. Persistent task registry with scoped permissions, inter-agent delegation, and full provenance — all accessible via MCP.

License CI MCP Compatible


Why WritBase?

AI agents need a shared, persistent task registry — not ephemeral in-memory state that vanishes between sessions. WritBase gives your agent fleet:

  • One source of truth — Tasks live in Postgres, not scattered across files and chat threads

  • Scoped permissions — Each agent gets exactly the access it needs, nothing more

  • Full provenance — Every change is recorded: who, what, when, and why

  • Inter-agent delegation — Agents can assign tasks to each other with depth limits and cycle detection

  • MCP-native — Agents connect via the Model Context Protocol, no custom integration needed

Related MCP server: task-orchestrator

Getting Started

No repo clone needed. Just npx:

npx writbase init        # Interactive setup — configures Supabase credentials
npx writbase migrate     # Apply database schema
npx writbase key create  # Create your first agent key

That's it. Your MCP endpoint is live at:

https://<project-ref>.supabase.co/functions/v1/mcp-server/mcp

Prerequisites: Node 18+, Supabase CLI, a Supabase project (free tier works)

Deploy the Edge Function: npx supabase functions deploy mcp-server --no-verify-jwt

See the CLI README for all commands.

Option B: Manual Setup

git clone https://github.com/Writbase/writbase.git
cd writbase && npm install

# Create a free project at supabase.com/dashboard, then:
npx supabase link --project-ref <your-project-ref>
npx supabase db push
npx supabase functions deploy mcp-server --no-verify-jwt

Optional dashboard: cp .env.example .env.local → edit with your Supabase URL + anon key → npm run dev

See the Deployment Guide for Vercel hosting and self-hosted Supabase.

2. Create a project and agent key

Via the CLI (npx writbase key create), the dashboard, or a manager agent:

  1. Create a project — e.g., my-app. Optionally add departments (backend, frontend, devops)

  2. Create an agent key — name it, pick the worker role, save the key (wb_<key_id>_<secret> — shown once)

  3. Grant permissionswritbase key permit my-agent --grant --project my-app --can-read --can-create --can-update (or via dashboard)

3. Connect your MCP client

claude mcp add writbase \
  --transport http \
  --url https://<project-ref>.supabase.co/functions/v1/mcp-server/mcp \
  --header "Authorization: Bearer wb_<key_id>_<secret>"

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "writbase": {
      "type": "streamableHttp",
      "url": "https://<project-ref>.supabase.co/functions/v1/mcp-server/mcp",
      "headers": { "Authorization": "Bearer wb_<key_id>_<secret>" }
    }
  }
}

Add to .vscode/mcp.json:

{
  "servers": {
    "writbase": {
      "type": "http",
      "url": "https://<project-ref>.supabase.co/functions/v1/mcp-server/mcp",
      "headers": { "Authorization": "Bearer wb_<key_id>_<secret>" }
    }
  }
}

See the MCP Config Reference for all supported clients.

4. Use it

Ask your agent:

"Check my WritBase permissions"          → calls info
"Create a task in my-app: Fix login bug" → calls add_task
"Mark it as in_progress"                 → calls update_task (with version for concurrency)
"Show all high priority tasks"           → calls get_tasks with priority filter

5. Scale up

Agent

Role

Scoped to

Use case

ci-bot

worker

my-app/devops — can_create

CI creates tasks on build failure

triage-agent

worker

my-app (all depts) — can_comment

Reviews tasks, adds notes

ops-manager

manager

(workspace-wide)

Manages keys, permissions, projects

Each agent gets its own key with exactly the permissions it needs — nothing more.

Full walkthrough: Getting Started Guide — permissions, departments, troubleshooting

MCP Tools

Worker Tools (all agents)

Tool

Description

info

Agent identity, permissions, and system metadata

get_tasks

List tasks with filtering, pagination, and full-text search

add_task

Create a task in permitted scope

update_task

Update a task with optimistic concurrency control

Manager Tools (manager agents only)

Tool

Description

manage_agent_keys

Create, update, deactivate, rotate agent keys

manage_agent_permissions

Grant/revoke permissions with subset enforcement

get_provenance

Query the append-only audit log

manage_projects

Create, rename, archive projects

manage_departments

Create, rename, archive departments

subscribe

Register webhooks for task event notifications

discover_agents

Find agents by capability and skill

Features

  • Multi-tenant workspaces — Signup auto-provisions an isolated workspace

  • Dynamic MCP schema — Tool visibility and parameter enums adapt per agent's role and permissions

  • 6 permission typescan_read, can_create, can_update, can_assign, can_comment, can_archive

  • Project + department scoping — Permissions are granted per (project, department) pair

  • Optimistic concurrency — Version-based conflict detection prevents silent overwrites

  • Cursor pagination — Efficient traversal of large task sets

  • Rate limiting — Per-agent-key request throttling

  • Request logging — Every MCP call logged with latency, status, and agent context

Architecture

┌─────────────┐     ┌──────────────────┐     ┌──────────────┐
│  MCP Client │────▶│  Edge Function   │────▶│   Postgres   │
│  (Agent)    │◀────│  (Hono + MCP SDK)│◀────│  (Supabase)  │
└─────────────┘     └──────────────────┘     └──────────────┘
                           │
                    ┌──────┴──────┐
                    │  Next.js 16 │
                    │  Dashboard  │
                    └─────────────┘
  • Backend: Supabase (Postgres + Edge Functions with Deno runtime)

  • Transport: Streamable HTTP (MCP SDK)

  • Frontend: Next.js 16 (App Router) + Tailwind CSS

  • Auth: Supabase Auth (humans) + SHA-256 agent keys (agents)

Deployment Options

Supabase Cloud (recommended)

Self-Hosted Supabase

Setup

npx writbase initnpx writbase migrate → done

Docker Compose (5 containers)

Cost

Free tier: 500MB DB, 50K MAUs

Your infrastructure

Dashboard

Deploy to Vercel (free)

Self-host Next.js

Updates

Automatic platform updates

Manual

Control

Supabase-managed

Full

See docs/deployment.md for detailed setup instructions.

Documentation

Contributing

See CONTRIBUTING.md for development setup, testing, and PR guidelines.

Security

See SECURITY.md for vulnerability reporting.

License

Apache 2.0 — see LICENSE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    AI Agent Mission Control — 200+ MCP tools across 31 domains. Manage agents, experiments, workflows, crews, skills, tools, credentials, approvals, signals, budgets, marketplace, knowledge bases, chatbots, and more. Self-hosted, open-source (AGPL-3.0). Supports stdio + Streamable HTTP/SSE with OAuth 2.0 auth.
    34
    68
    AGPL 3.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Server-enforced workflow discipline for AI agents. An MCP server providing persistent work items, dependency graphs, quality gates, and actor attribution. Schemas define what agents must produce — the server blocks the call if they don't. Works with any MCP-compatible client.
    204
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    A local-first control plane for AI agent tools, providing policy enforcement, spend caps, rate limiting, and audit trails for MCP servers.
    1
    Apache 2.0