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
A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • A very simple remote MCP server that greets you, with a custom icon.

  • A basic MCP server to operate on the Postman API.

  • An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform

View all MCP Connectors

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/bcauley70/mcp1'

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