Back to MCP Servers

Liveblocks MCP Server

Inspect and modify Liveblocks real-time collaboration projects (rooms, threads, comments, Storage, Yjs, notifications) from AI tools.

Collaboration by Liveblocks API Key active
Overview

The Liveblocks MCP server is the official integration from Liveblocks that exposes most of the Liveblocks REST API to MCP-compatible clients like Cursor, Claude Code, Claude Desktop, and Codex. It lets an AI agent create, read, update, and delete rooms, threads, comments, reactions, and notifications, plus broadcast custom events and inspect Storage and Yjs documents inside a Liveblocks project.

Tools are grouped by Liveblocks primitive: rooms (list, create, update, delete, rename IDs, list active users, broadcast events), Storage and Yjs (read documents), Comments and Threads (full CRUD plus subscribe, resolve, react), per-room and per-user subscription settings, and inbox/notification settings (trigger, list, delete, update). The README warns that the server is intended for development projects only because actions are destructive and irreversible on production data.

The server is distributed as a GitHub-hosted npm package run via npx, authenticates with a Liveblocks secret key (LIVEBLOCKS_SECRET_KEY), and is officially maintained in the liveblocks/liveblocks-mcp-server repo.

Tools

Tool Description
get-rooms List rooms in the project with optional filters.
create-room Create a new Liveblocks room.
get-room Get a single room by ID.
update-room Update room metadata or permissions.
delete-room Delete a room.
update-room-id Rename a room's ID.
get-active-users List users currently connected to a room.
broadcast-event Broadcast a custom event to clients in a room.
get-storage-document Read the Storage document for a room.
get-yjs-document Read the Yjs document for a room.
get-threads List threads in a room.
create-thread Create a new comment thread in a room.
get-thread Get a thread by ID.
get-thread-participants List participants in a thread.
edit-thread-metadata Update a thread's metadata.
mark-thread-as-resolved Mark a thread as resolved.
mark-thread-as-unresolved Mark a thread as unresolved.
delete-thread Delete a thread.
subscribe-to-thread Subscribe a user to thread notifications.
unsubscribe-from-thread Unsubscribe a user from a thread.
get-thread-subscriptions List subscriptions on a thread.
create-comment Add a comment to a thread.
get-comment Get a single comment.
edit-comment Edit a comment.
delete-comment Delete a comment.
add-comment-reaction Add an emoji reaction to a comment.
remove-comment-reaction Remove a reaction from a comment.
get-room-subscription-settings Get a room's subscription settings.
update-room-subscription-settings Update a room's subscription settings.
delete-room-subscription-settings Delete a room's subscription settings.
get-user-room-subscription-settings Get subscription settings for a user in a room.
get-inbox-notifications List a user's inbox notifications.
get-inbox-notification Get a single inbox notification.
trigger-inbox-notification Trigger a custom inbox notification.
delete-inbox-notification Delete an inbox notification.
delete-all-inbox-notifications Delete all inbox notifications for a user.
get-notification-settings Get a user's notification channel settings.
update-notification-settings Update a user's notification channel settings.
delete-notification-settings Delete a user's notification channel settings.
Setup Guide

Prerequisites

  • A Liveblocks account and a project secret key (starts with sk_) from the Liveblocks dashboard.
  • Node.js with npx available.
  • Use a development project key. Many tools perform irreversible writes.

Claude Desktop / Cursor config

Add the following to claude_desktop_config.json (Claude Desktop) or your Cursor MCP settings:

{
  "mcpServers": {
    "liveblocks": {
      "command": "npx",
      "args": ["-y", "github:liveblocks/liveblocks-mcp-server"],
      "env": {
        "LIVEBLOCKS_SECRET_KEY": "sk_xxxxxxxxxxxx"
      }
    }
  }
}

Claude Code (CLI)

claude mcp add liveblocks -e LIVEBLOCKS_SECRET_KEY="sk_xxxxxxxxxxxx" -- npx -y github:liveblocks/liveblocks-mcp-server

Codex CLI

npm i -g @openai/codex
codex mcp add liveblocks --env LIVEBLOCKS_SECRET_KEY="sk_xxxxxxxxxxxx" -- npx -y github:liveblocks/liveblocks-mcp-server

Restart your client after editing the config.

Use Cases
  • Debug a collaborative document by inspecting the room's Storage or Yjs state directly from the AI client.
  • Bulk clean up stale development rooms, threads, and comments in a project after testing.
  • Trigger custom inbox notifications to test notification flows without writing client code.
  • Resolve, reassign, or update metadata on comment threads across many rooms in one prompt.
  • Broadcast custom realtime events to a running room to test how clients react.
Example Prompts
  • "List all rooms in my Liveblocks project and delete any whose ID starts with test-."
  • "Show me the Storage document for room design-doc-42 and summarize what changed."
  • "Mark every unresolved thread older than 30 days as resolved in room kanban-prod."
  • "Trigger a $mention inbox notification for user user-123 referencing thread thread-9."
  • "Broadcast a force-refresh event to room whiteboard-1 so connected clients reload."
Pros
  • Official server maintained by Liveblocks in their own GitHub org.
  • Broad coverage of the REST API across rooms, threads, comments, Storage, Yjs, and notifications.
  • Simple setup via npx with a single LIVEBLOCKS_SECRET_KEY env var, no separate hosting.
  • Documented configs for Cursor, Claude Desktop, Claude Code, and Codex.
Limitations
  • Many operations are destructive and irreversible, the docs explicitly recommend against using production keys.
  • Storage and Yjs access is read-only; the server cannot mutate live collaborative documents.
  • Requires a secret key with full project access, which is broad scope for an AI agent.
Alternatives
  • Yjs or TipTap collaboration tooling for direct CRDT inspection if you do not use Liveblocks.
  • The Liveblocks REST API directly via a generic HTTP MCP server for narrower, scripted use cases.
  • Community CRDT and realtime MCP servers, though none offer comparable first-party Liveblocks coverage.