MCP1
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP1tell a kid-friendly knock-knock joke"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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 |
| Invoke the Tell Joke skill and begin a knock-knock joke |
| List available skills |
| Load a skill's full |
Local development (stdio)
node src/index.mjsOr explicitly:
MCP_TRANSPORT=stdio node src/index.mjsProject config: .cursor/mcp.json
Web deployment (HTTP)
Start the HTTP server locally:
MCP_TRANSPORT=http PORT=3000 node src/index.mjsEndpoints:
Path | Method | Purpose |
| POST | MCP Streamable HTTP endpoint |
| GET | Health check for load balancers |
| GET | Server info |
Docker
docker build -t mcp1 .
docker run -p 3000:3000 mcp1Or with Docker Compose:
docker compose up --buildDeploy to Render
Push this repo to GitHub.
Create a new Web Service on Render.
Point it at this repo —
render.yamlis included.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.mjsClients must send either:
Authorization: Bearer my-secret-key, orX-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.jsonin this repoGlobal config:
~/.cursor/mcp.json
Then enable MCP1 in Cursor Settings → MCP.
Environment variables
Variable | Default | Description |
|
|
|
|
| HTTP listen port |
|
| HTTP bind address |
|
| MCP endpoint path |
| (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.jsonThis server cannot be deployed
Maintenance
Related MCP Connectors
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that fetches jokes from multiple sources (Chuck Norris, Dad jokes, and Yo Mama jokes) and integrates with Microsoft Copilot Studio to create a humor-focused conversational experience.MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server implementation that delivers various joke types (Chuck Norris, Dad jokes, etc.) to Microsoft Copilot Studio and GitHub Copilot through the Model Context Protocol.MIT
- -licenseNot gradedqualityNot gradedmaintenanceA 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.-
- FlicenseNot gradedqualityBmaintenanceA minimal MCP server with hello and echo tools.-