Skip to main content
Glama
bcauley70
by bcauley70

MCP1

A minimal Model Context Protocol server named MCP1 with one skill: Tell Joke.

Supports local stdio (Cursor subprocess) and Streamable HTTP (web deployment).

Skill: Tell Joke

When invoked, the agent leads an interactive knock-knock joke suitable for a 6-year-old — starting with "Knock knock!" and waiting for the user to play along.

Related MCP server: Jokes MCP Server

Tools

Tool

Description

tell_joke

Invoke the Tell Joke skill and begin a knock-knock joke

list_skills

List available skills

get_skill

Load a skill's full SKILL.md by id (e.g. tell-joke)

Local development (stdio)

node src/index.mjs

Or explicitly:

MCP_TRANSPORT=stdio node src/index.mjs

Project config: .cursor/mcp.json

Web deployment (HTTP)

Start the HTTP server locally:

MCP_TRANSPORT=http PORT=3000 node src/index.mjs

Endpoints:

Path

Method

Purpose

/mcp

POST

MCP Streamable HTTP endpoint

/health

GET

Health check for load balancers

/

GET

Server info

Docker

docker build -t mcp1 .
docker run -p 3000:3000 mcp1

Or with Docker Compose:

docker compose up --build

Deploy to Render

  1. Push this repo to GitHub.

  2. Create a new Web Service on Render.

  3. Point it at this repo — render.yaml is included.

  4. After deploy, your MCP URL will be https://<your-service>.onrender.com/mcp.

Optional API key

Set MCP_API_KEY to require authentication:

MCP_API_KEY=my-secret-key MCP_TRANSPORT=http node src/index.mjs

Clients must send either:

  • Authorization: Bearer my-secret-key, or

  • X-API-Key: my-secret-key

Connect Cursor to the deployed server

Copy .cursor/mcp.remote.example.json into your Cursor MCP config and set your URL:

{
  "mcpServers": {
    "MCP1": {
      "url": "https://your-mcp1-host.example.com/mcp",
      "headers": {
        "Authorization": "Bearer ${env:MCP_API_KEY}"
      }
    }
  }
}

Use either:

  • Project config: .cursor/mcp.json in this repo

  • Global config: ~/.cursor/mcp.json

Then enable MCP1 in Cursor Settings → MCP.

Environment variables

Variable

Default

Description

MCP_TRANSPORT

stdio

stdio or http

PORT

3000

HTTP listen port

HOST

0.0.0.0

HTTP bind address

MCP_PATH

/mcp

MCP endpoint path

MCP_API_KEY

(none)

Optional bearer/API key

Project layout

MCP1/
├── .cursor/
│   ├── mcp.json
│   └── mcp.remote.example.json
├── skills/tell-joke/SKILL.md
├── src/
│   ├── core.mjs
│   ├── http.mjs
│   ├── stdio.mjs
│   └── index.mjs
├── Dockerfile
├── docker-compose.yml
├── render.yaml
└── package.json

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    A basic MCP server built with FastMCP framework that provides simple utility tools including message echoing and server information retrieval. Supports both stdio and HTTP transports with Docker deployment capabilities.
    -