rmnr
DocsLayoutsModulesDirectoryBest PracticeAgentsInstall

Command Palette

Search for a command to run...

New
  • Introduction
  • Installation
  • Architecture
  • Stack
  • Directory
  • Install with Agent
    new
  • Bundle Builder
    new
  • MCP server
    new
  • VPS Control Room
    new
  • Changelog
    new
  • All website templates
    new
  • Personal Brand OS
  • Agency Studio OS
  • Notion Page Clone OS — localStorage demo (pointer to open-silong for production)
  • SaaS Marketing OS
  • Kreator Studio OS
  • Konsultan OS
  • Wirausaha OS
  • Riset Kit
  • All layouts
  • 19
  • 3
  • 6
  • All slices
    new
  • 2
  • 2
  • 6
  • 3
  • 3
  • 1
  • 1
  • 7
  • 24
  • 6
  • All recipes

Tooling

MCP server

rahman-resources-mcp is a Model Context Protocol server that exposes the entire Rahman kitab — every template, feature, recipe, and Claude Skill — to MCP-aware clients (Claude Code, Cursor, Cline). Once wired, your agent can discover and compose kitab artifacts without you copy-pasting slugs.

npmrahman-resources-mcpv?packages/mcp →

Why use it

  • Discovery without scrolling docs. Ask Claude "what kitab templates ship a public + admin combo?" — agent calls rr_list_templates and answers from live data.
  • Command composition. Agent reasons about what you want, then emits the exact npx rahman-resources init … command to run.
  • Single source of truth. The MCP loads from rahman-resources/lib/manifest.json (the CLI's manifest) — never drifts.
  • Read-only. No file writes, no shell exec. The agent still runs commands itself; the MCP just tells it which.

Install

Pick your client. Claude Code / Cursor / Cline use the same stdio command. ChatGPT needs a bridge — see notes.

Add to ~/.claude/mcp.json (global) or .claude/mcp.json (per-project):

mcp.jsonjson
{
  "mcpServers": {
    "rahman-resources": {
      "command": "npx",
      "args": ["-y", "rahman-resources-mcp"]
    }
  }
}

Then /mcp inside Claude Code — see rahman-resources with 8 tools.

Quick wire (CLI helper)

The sister CLI prints the JSON snippet for you:

terminalbash
npx rahman-resources mcp

Tools (8 read-only)

ToolArgsPurpose
rr_list_templates{ tag?: string }List full-app website templates (Personal Brand OS, Agency Studio, Kreator Studio, Konsultan OS, Wirausaha OS, Riset Kit, …)
rr_list_features{ tag?: string }List backend / integration features (auth, midtrans, resend, vector-search, ai-router, …)
rr_list_recipes—List UI patterns to copy manually (block-editor, command-palette, asymmetric-masonry, …)
rr_list_skills{ scope?: 'anthropics' | 'rahman' | 'all' }List Claude Skills inventory (anthropics + rahman skills shipped via the kitab)
rr_search{ query: string }Fuzzy search across all kinds. Returns ranked hits with kind + slug.
rr_get{ slug: string }Full entry by slug (template, feature, recipe, or skill).
rr_compose_init_command{ appName, template?, features?, skills? }Emit the `npx rahman-resources init` command for a selection. Use this when scaffolding a fresh project.
rr_compose_add_commands{ features?, skills?, template? }Emit `add` / `add-skill` commands for an existing rr.json project. Use this when extending an installed kitab.
rr_list_workflows—List the CRUD workflow kinds the kitab documents (templates, features, recipes, skills). Returns slugs the agent can pass to rr_get_workflow.
rr_get_workflow{ kind: 'templates'|'features'|'recipes'|'skills' }Get the full Create / Read / Update / Delete workflow doc for one kind. Includes the npm publish step. Use when the user asks how to add/edit/remove a kitab item.

Resources (rr:// URIs)

MCP resources are read-only documents the agent can fetch by URI. Each kitab entry is one resource; clients can pin them as context.

URIPurpose
rr://manifestFull kitab manifest — every layout, feature, recipe, skill, in one JSON tree.
rr://templates/{slug}One template entry (e.g. `rr://templates/kreator-studio-os`).
rr://features/{slug}One feature entry.
rr://recipes/{slug}One recipe entry.
rr://skills/{slug}One Claude Skill entry.
rr://workflow/{kind}CRUD workflow markdown. `kind` ∈ templates|features|recipes|skills. Includes Create/Read/Update/Delete + the npm publish step.

Workflows (CRUD)

The MCP also ships workflow docs — markdown that teaches an agent how to Create / Read / Update / Delete each kitab item kind, including the npm publish step. Wire them via rr_get_workflow (or read the resources directly).

ResourceCovers
rr://workflow/templatesAdd / edit / remove a website-template. Wires lib/content/layouts.ts + app/preview/<slug>/ + components/templates/<base>/ + manifest regen + CLI publish.
rr://workflow/featuresAdd / edit / remove a feature. Wires convex/features/<slug>/ + frontend/slices/<slug>/ + 3 registry generators + CLI publish.
rr://workflow/recipesAdd / edit / remove a UI-only recipe. Lower-friction — no slice / convex deps required.
rr://workflow/skillsAdd / edit / remove a Claude Skill. Wires claude-skills.ts + sync-skills.mjs + ~/.agents/skills/<slug>/SKILL.md + CLI publish.

Source of truth: the markdown lives at packages/cli/lib/workflows/<kind>.md and ships in the CLI tarball — same single-source-of-truth pattern as the manifest.

Example — agent flow

A typical session in Claude Code looks like:

session.logtext
You:    "Scaffold a consultancy site with Midtrans + Resend.
        Use the kitab."

Agent → calls rr_list_templates({ tag: "consultant" })
      → finds "konsultan-os"
      → calls rr_get({ slug: "konsultan-os" })
      → reads agentRecipe + dependencies
      → calls rr_compose_init_command({
          appName: "my-consultancy",
          template: "konsultan-os",
          features: ["midtrans", "resend"],
          skills: ["use-audit-bp", "use-si-coder"]
        })
      → returns:
          npx rahman-resources init my-consultancy \
            --template konsultan-os \
            --features midtrans,resend \
            --skills use-audit-bp,use-si-coder

Agent runs the command via Bash tool. Project scaffolded.

Source of truth

The MCP reads the manifest from the sibling rahman-resources npm package (same monorepo, separate publish). When working in the monorepo, the loader falls back to the local CLI package at packages/cli/lib/.

Regenerate the manifest after editing any lib/content/*.ts:

terminalbash
cd packages/cli
node scripts/gen-manifest.mjs

Versioning

Versions read at build time from the monorepo's package.json — this badge always matches the current repo state.

  • rahman-resources-mcp — current v?
  • rahman-resources (CLI) — current v1.7.0 (the manifest + workflow source)
  • Adding new tools or resource kinds = minor bump. Removing or renaming tools = major bump. Workflow markdown content = patch.

Troubleshooting

  • Tool not appearing — restart Claude Code after editing mcp.json.
  • npx prompts to download — the -y flag in args auto-confirms; without it, MCP startup hangs.
  • Stale results — manifest is bundled into the npm package; run npx -y rahman-resources-mcp@latest to force a fresh fetch.
  • Empty skills list — older versions miss skills.json. Upgrade to v0.1.0+.
View sourcenpm package →← InstallationInstall with agent →