JUHE API Marketplace
parmindersk avatar
MCP Server

mcp-starter

mcp-starter is a secure, starter framework for building MCP servers with JWT-based authentication, multi-tenant enforcement, and schema validation. Built with Node.js and Docker

1
GitHub Stars
8/23/2025
Last Updated
No Configuration
Please check the documentation below.

README Documentation

mcp-starter

Secure, starter MCP server boilerplate with JWT authentication, schema validation, and Docker support.

Built for developers who want to expose AI-compatible APIs to tools like Claude, OpenAI, Sourcegraph Cody, or custom agents using the Model Context Protocol (MCP).

Features

  • JWT-based authentication with tenant isolation
  • Function auto-loading from /functions directory
  • Inline per-function schema validation (via AJV)
  • Dynamic MCP manifest generation (/mcp-manifest.json)
  • Docker container
  • CLI utility to generate JWTs for local testing
  • Health endpoints (/mcp, /healthz)

Running locally

Clone repo

git clone https://github.com/parmindersk/mcp-starter.git
cd mcp-starter

Run with Docker

docker-compose up

Run from code

pnpm install
pnpm start

Generating a Test Token

node tools/generateToken.js --tenant=acme --secret=supersecure

The --secret value (supersecure) must match the JWT_SECRET defined in your .env or docker-compose.yml.

Testing sample submitFeedback

curl -X POST http://localhost:3000/mcp \
  -H "Authorization: Bearer YOUR_JWT_HERE" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "submitFeedback",
    "params": {
      "message": "Love the product!",
      "rating": 5
    }
  }'

You can play around with the body to remove message or give an invalid value for rating to see how validation is working.

Follow SinghSpeak.com for more.

Have feedback or feature ideas? Open an issue or contribute via pull request.

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source