Skip to main content
Glama

Nyko MCP Server

MCP (Model Context Protocol) server that provides battle-tested implementation patterns to AI coding assistants like Claude Code, Cursor, and Windsurf.

What is Nyko?

Nyko provides production-ready code patterns for common features:

  • Auth: Supabase OAuth (Google, GitHub), Magic Links, Protected Routes

  • Payments: Stripe Checkout, Webhooks, Customer Portal

  • Database: RLS Policies, Migrations

  • Deploy: Docker Compose, GitHub Actions + Vercel

  • API: Rate Limiting with Upstash

Usage

With Claude Code

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "nyko": {
      "url": "https://nyko-mcp.nyko-ai.workers.dev/mcp"
    }
  }
}

Then ask Claude:

  • "Set up Google OAuth with Supabase"

  • "Add Stripe payments to my app"

  • "Create protected routes"

Available Tools

Tool

Description

nyko_search

Search for patterns by keyword

nyko_get

Get complete pattern with code, env vars, and setup steps

nyko_sequence

Get ordered list of patterns for a complete feature

nyko_check

Check if a pattern is compatible with your project

Development

Prerequisites

  • Node.js 18+

  • Wrangler CLI (npm install -g wrangler)

Setup

# Clone the repo
git clone https://github.com/nyko-ai/mcp.git
cd mcp

# Install dependencies
npm install

# Copy env vars example
cp .dev.vars.example .dev.vars
# Edit .dev.vars with your Upstash credentials (optional for local dev)

# Start dev server
npm run dev

Testing

# Test initialize
curl -X POST http://localhost:8787/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}'

# Test tools/list
curl -X POST http://localhost:8787/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

# Test nyko_search
curl -X POST http://localhost:8787/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"nyko_search","arguments":{"query":"google oauth"}}}'

Deploy

# Login to Cloudflare
wrangler login

# Set secrets
wrangler secret put UPSTASH_REDIS_REST_URL
wrangler secret put UPSTASH_REDIS_REST_TOKEN

# Deploy
npm run deploy

Architecture

┌─────────────────────────────────────────────────────────┐
│  MCP Client (Claude Code, Cursor)                       │
│                        │                                │
│                        ▼                                │
│  ┌─────────────────────────────────────────────────┐   │
│  │         Cloudflare Worker (MCP Server)          │   │
│  │                                                  │   │
│  │  /mcp (POST) - MCP protocol endpoint            │   │
│  │  /sse (GET)  - Server-sent events (future)      │   │
│  │  /health     - Health check                     │   │
│  └─────────────────────────────────────────────────┘   │
│                        │                                │
│         ┌──────────────┼──────────────┐                │
│         ▼              ▼              ▼                │
│  ┌───────────┐  ┌───────────┐  ┌───────────┐          │
│  │  Upstash  │  │  GitHub   │  │ (Future)  │          │
│  │   Redis   │  │    Raw    │  │ Supabase  │          │
│  │  (cache)  │  │ (patterns)│  │    DB     │          │
│  └───────────┘  └───────────┘  └───────────┘          │
└─────────────────────────────────────────────────────────┘

API Reference

Endpoints

Endpoint

Method

Description

/mcp

POST

Main MCP protocol endpoint (JSON-RPC 2.0)

/health

GET

Health check

Tools Reference

Search for patterns by keyword.

Input:

{
  "query": "google oauth",
  "category": "auth"  // optional: auth, payments, database, deploy, api
}

Output:

{
  "patterns": [
    {
      "id": "supabase-google-oauth",
      "name": "Google OAuth with Supabase",
      "description": "Complete Google OAuth implementation",
      "difficulty": "intermediate",
      "time_estimate": "20-30 min",
      "status": "beta"
    }
  ],
  "total": 1
}

nyko_get

Get complete implementation details for a pattern.

Input:

{
  "pattern_id": "supabase-google-oauth",
  "has_src_dir": false  // optional: adjust paths for src/ directory
}

Output:

{
  "pattern": {
    "id": "supabase-google-oauth",
    "name": "Google OAuth with Supabase",
    "install": "npm install @supabase/supabase-js@^2.49.0 @supabase/ssr@^0.5.2",
    "env": [{"key": "NEXT_PUBLIC_SUPABASE_URL", "required": true}],
    "files": [{"path": "lib/supabase/client.ts", "code": "..."}],
    "external_setup": [{"provider": "supabase", "steps": [...]}],
    "edge_cases": [{"symptom": "...", "solution": "..."}],
    "validation": ["Navigate to /login", "Click Google sign in"]
  }
}

nyko_sequence

Get ordered sequence of patterns for a complete feature.

Input:

{
  "goal": "google auth with protected routes",
  "already_implemented": []  // optional: skip patterns already done
}

Output:

{
  "sequence": [
    {"order": 1, "id": "supabase-client-nextjs", "reason": "Base setup"},
    {"order": 2, "id": "supabase-google-oauth", "reason": "Authentication"},
    {"order": 3, "id": "supabase-protected-routes", "reason": "Route protection"}
  ],
  "total_time": "30-45 min"
}

nyko_check

Check pattern compatibility with project dependencies.

Input:

{
  "pattern_id": "supabase-google-oauth",
  "dependencies": {"next": "15.1.0", "@supabase/supabase-js": "2.49.0"}
}

Output:

{
  "compatible": true,
  "issues": [],
  "missing": ["@supabase/ssr"],
  "install_command": "npm install @supabase/ssr@^0.5.2"
}

Environment Variables

# Required for caching (optional for local dev)
UPSTASH_REDIS_REST_URL=https://xxx.upstash.io
UPSTASH_REDIS_REST_TOKEN=xxx

Contributing

Patterns are stored in the nyko-ai/patterns repository. See the contributing guide there for adding new patterns.

License

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nyko-ai/mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server