DocumentationMCP Server Setup
DOCS

MCP Server Setup

Give any AI agent read-only inspection of routes, schemas, modules, events and Drizzle tables - plus write tools to scaffold and verify.

Introduction

The oss-dev MCP server gives any AI agent read-only inspection of the platform's routes, schemas, modules, events and Drizzle tables, plus write tools to scaffold and verify. It works with any MCP-compatible editor.

Zero-config setup

The fastest way to wire MCP for Claude Code. Run it right after pnpm install:

pnpm setup:mcp

It is idempotent, and does three things against the current repo:

  1. Ensures .mcp.json registers the MCP server, writing the oss-dev default if missing.
  2. Adds every server name to .claude/settings.json#enabledMcpjsonServers, so Claude Code trusts the server without a per-session prompt.
  3. Installs the /start onboarding skill.

Restart your editor, or run /mcp, then run /start. It asks what you want to build, calls the enhance-intent tool to turn a fuzzy ask into a grounded spec, and drives the right scaffold flow.

A create:app consumer ships the same script. Run it once in the generated repo so its own agents get the toolbelt.

Server config

The server uses stdio transport, so there is no port. Add this to your editor's MCP config:

{
  "mcpServers": {
    "oss-dev": {
      "type": "stdio",
      "command": "pnpm",
      "args": ["exec", "tsx", "apps/mcp-server-dev/src/main.ts"]
    }
  }
}
EditorConfig locationNotes
Claude Code.mcp.json at repo root (already present)Verify: claude mcp list
CursorSettings > MCP, or .cursor/mcp.jsonPaste the snippet above
WindsurfCascade settings > MCP ServersPaste the snippet above
VS Code + GitHub Copilot.vscode/mcp.json at repo rootPaste the snippet above

Read-only inspection

Safe, no side effects.

ToolWhat it returns
read-agents-mdA named section from the root or a per-module AGENTS.md
list-modulesEvery registered module with its group, tables and routes
describe-moduleFull module surface: AGENTS.md, tables, schemas and routes in one call
list-routesoRPC route namespaces, filterable by module
list-extension-pointsUI slots, exported events, adapter port interfaces
query-openapiSearch the generated OpenAPI spec by keyword
get-drizzle-schemapgTable definitions across all modules, filterable by module
propose-table-changeCollision-check a new table name before adding it
schema-getFind a Zod schema by name, with its file location
docs-searchFull-text search across all docs and AGENTS.md files
db-query-readonlyRun a read-only SQL query against the dev database
enhance-intentTurn a fuzzy "build X" ask into a classified, grounded brief
startOnboarding entry point - returns an interactive Q&A script
dev:infraStart, stop or check local docker compose infra

Write and scaffold

These delegate to the same scripts humans use.

ToolWhat it does
scaffold-moduleCreates a new module skeleton and registers it
scaffold-pluginCreates a new overlay extension skeleton
scaffold-routeAdds an oRPC route stub to a module
scaffold-appBootstraps a new downstream consumer repo
regendrizzle-kit generate + OpenAPI emit + catalog
run-verifyRuns pnpm verify

The consumer-facing server

oss-dev is the full toolkit for working on the framework. There is a second, read-only server - @openora/mcp - published to npm for downstream consumers who want to inspect the platform surface from their own repo.

{
  "mcpServers": {
    "openora": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@openora/mcp"]
    }
  }
}

It reads docs/catalog.json, resolving it by walking up from the current directory, then falling back to the copy inside its own package.

Usage pattern for agents

1. read-agents-md         -> understand the decision tree
2. list-modules           -> see what already exists
3. describe-module        -> deep-dive before editing a specific module
4. propose-table-change   -> check for collisions before adding a table
5. scaffold-*             -> create the skeleton
6. run-verify             -> confirm nothing broke
Updated 1 month ago