Makerkit now ships with an MCP Server that gives AI coding assistants direct access to your codebase structure, UI components, and development scripts.
MCP (Model Context Protocol) is an open standard that allows AI assistants to call external tools and access structured data. Instead of relying on context windows and file reading, AI assistants call specific tools to get exactly what they need. Makerkit's MCP Server exposes component discovery, script management, and PRD tracking to Claude Code, Cursor, and Windsurf, reducing hallucination by giving AI agents real-time access to your actual component APIs and project structure.
Available Kits
The MCP Server ships with:
- Next.js Drizzle Kit - Self-hosted SaaS starter with Drizzle ORM
- Next.js Prisma Kit - Self-hosted SaaS starter with Prisma ORM
Setup
Each kit includes a preconfigured .mcp.json file. Build the server once, and AI tools detect it automatically. Requires Node.js 18+ to run the MCP server.
Build the MCP Server
pnpm --filter "@kit/mcp-server" buildThis creates the server at tooling/mcp-server/build/index.js. Verify the build succeeded:
ls tooling/mcp-server/build/index.jsIf the file exists, you're ready to connect your AI tool.
Automatic Detection
Claude Code, Cursor, and Windsurf automatically detect the .mcp.json file in your project root. After building, restart your AI session to pick up the server.
The .mcp.json configuration:
{ "mcpServers": { "makerkit": { "type": "stdio", "command": "node", "args": ["tooling/mcp-server/build/index.js"] } }}Manual Configuration
If automatic detection fails, add the config manually.
Cursor - Add to your MCP settings:
{ "makerkit": { "type": "stdio", "command": "node", "args": ["/absolute/path/to/project/tooling/mcp-server/build/index.js"] }}Claude Code - Run:
claude mcp add makerkit node /absolute/path/to/project/tooling/mcp-server/build/index.jsAvailable Tools
The MCP Server provides three tool categories:
UI Component Tools
Tools for discovering and inspecting the @kit/ui component library:
get_components- List all components with categories and descriptionsget_component_content- Get the full source code of a componentcomponents_search- Search by keyword in name, description, or categoryget_component_props- Extract props, interfaces, and CVA variants
Script Tools
Tools for understanding available pnpm scripts:
get_scripts- List scripts sorted by importance with usage guidanceget_script_details- Get detailed info about a specific scriptget_healthcheck_scripts- Get critical scripts to run after code changes (typecheck, lint, format, test)
PRD Management Tools
Tools for creating and tracking Product Requirements Documents:
list_prds- List all PRD files in the .prds directoryget_prd- Retrieve contents of a specific PRDcreate_prd- Create a structured PRD with title, problem, solution, and metricsadd_user_story- Add user stories with acceptance criteriaupdate_story_status- Track story progress (not_started, research, in_progress, review, completed, blocked)export_prd_markdown- Export PRD as markdown for sharingget_implementation_prompts- Generate implementation tasks from user storiesget_improvement_suggestions- Get suggestions to improve the PRDget_project_status- Get progress overview, next steps, and blockers
Common Pitfalls
- Server not detected - Restart your AI tool session after building. Most tools cache MCP config at startup.
- Forgot to rebuild - After modifying the MCP server source, run the build command again.
- Wrong path in manual config - Use absolute paths. Relative paths fail when the AI tool runs from a different directory.
- Tools not appearing - Verify the build completed successfully. Check that
tooling/mcp-server/build/index.jsexists.
Why MCP Matters for SaaS Development
AI coding assistants work better when they understand your codebase structure. Without MCP, they guess at file locations, component APIs, and project conventions.
Before MCP: Ask the AI to add a loading state. It creates a new Spinner component from scratch, missing the existing @kit/ui spinner with size variants and proper styling.
With MCP: The AI calls components_search({ query: "spinner" }), finds the existing component, checks its props with get_component_props, and uses it correctly.
With MCP, the AI:
- Finds the right component instead of suggesting you create one that already exists
- Knows your healthcheck scripts and runs them after making changes
- Tracks requirements through structured PRDs instead of ad-hoc instructions
When to Use MCP
Use MCP when:
- Working with unfamiliar parts of the codebase
- Onboarding new team members who use AI assistants
- Managing multi-feature projects with PRDs
- You want the AI to follow your existing patterns
Skip MCP setup when:
- Making quick fixes to code you wrote
- Your AI tool doesn't support MCP yet
- Working on a simple script outside the monorepo
Frequently Asked Questions
Does MCP work with VS Code?
Do I need to rebuild after kit updates?
Can I add custom MCP tools?
Does MCP work offline?
What Node.js version is required?
Documentation
- MCP Server for Next.js Drizzle
- MCP Server for Next.js Prisma
- MCP Server for Next.js Supabase
- MCP Server for React Router Supabase
Get Started
- Next.js Drizzle Kit - Self-hosted SaaS with Drizzle ORM
- Next.js Prisma Kit - Self-hosted SaaS with Prisma ORM