Skip to main content
Glama

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)


Related MCP server: MCP JSON-RPC Server

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

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

One-click Deploy
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

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/parmindersk/mcp-starter'

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