joke-mcp
An MCP wrapper for https://sv443.net/jokeapi/v2/
Install / Use
claude mcp add nico-martin -- npx -y github:nico-martin/joke-mcpIf the server publishes to npm under a different name, use that package instead ā check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Development & EngineeringSupported Platforms
Our assessment of joke-mcp
joke-mcp scores 67/100 on our quality scale, 3885th of 4,595 Development & Engineering skills we index.
Its MCP Server is 4.7 KB long, well organised into 21 sections with 11 code examples: a solid amount of guidance for an agent.
It has 3 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated about 11 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
- Our last check on 2026-09-20 found the source still online.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 81/100, with 3 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit ā read the skill file before letting an agent act on it.
joke-mcp compared with similar skills
All 4 of these similar skills score higher than joke-mcp; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| joke-mcp (this skill)by nico-martin | 67 | 3 | 11mo ago | MCP Server |
| Agent-Reachby Panniantong | 100 | 96.5k | 4d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 75.1k | today | CLAUDE.md |
| CowAgentby zhayujie | 100 | 47.4k | today | CLAUDE.md |
| ai-job-searchby MadsLorentzen | 100 | 46.4k | 4d ago | CLAUDE.md |
Frequently asked questions
- How do I install joke-mcp?
- Run
claude mcp add nico-martin -- npx -y github:nico-martin/joke-mcp. The install tabs above show the steps for each supported agent. - Which AI agents does joke-mcp work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is joke-mcp safe to use?
- It is MIT-licensed and scores 81/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is joke-mcp still maintained?
- The repository was last updated about 11 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
Skill content
View source on GitHubJoke MCP Server
A Model Context Protocol (MCP) server that provides access to the JokeAPI for retrieving jokes with various filtering options.
Quick Start
Add this MCP server to your client using the endpoint:
https://jokes.nico.dev/mcp
Your MCP client will automatically discover the get_joke tool and you can start fetching jokes immediately.
Features
- Single tool:
get_joke- Fetch safe jokes from the JokeAPI - Safe by default: Always uses safe-mode to filter out offensive content
- Multiple filtering options: Category, joke type, search terms
- Multiple jokes: Retrieve up to 10 jokes at once
- MCP compliant: Full JSON-RPC 2.0 implementation with session management
Installation
- Clone the repository:
git clone <repository-url>
cd joke-mcp
- Install dependencies:
composer install
Usage
The server exposes one tool: get_joke
Parameters
All parameters are optional:
category(string): Joke category -Any,Programming,Misc,Pun,Spooky,Christmastype(string): Joke format -single(one-liner) ortwopart(setup/delivery)contains(string): Search for jokes containing this textamount(integer): Number of jokes to retrieve (1-10)
Note: This server automatically uses safe-mode to ensure all jokes are appropriate and filter out offensive content.
Example Requests
Get a programming joke:
{
"jsonrpc": "2.0",
"id": "1",
"method": "tools/call",
"params": {
"name": "get_joke",
"arguments": {
"category": "Programming"
}
}
}
Get multiple pun jokes:
{
"jsonrpc": "2.0",
"id": "2",
"method": "tools/call",
"params": {
"name": "get_joke",
"arguments": {
"category": "Pun",
"amount": 3
}
}
}
Search for jokes about cats:
{
"jsonrpc": "2.0",
"id": "3",
"method": "tools/call",
"params": {
"name": "get_joke",
"arguments": {
"contains": "cat"
}
}
}
REST API Endpoint
In addition to the MCP interface, the server also provides a simple REST API endpoint for fetching jokes via HTTP GET requests.
GET /joke
Fetch jokes using query parameters:
# Get a random joke
GET https://jokes.nico.dev/joke
# Get a programming joke
GET https://jokes.nico.dev/joke?category=Programming
# Get a single-line joke
GET https://jokes.nico.dev/joke?type=single
# Get jokes containing "computer"
GET https://jokes.nico.dev/joke?contains=computer
# Get multiple jokes
GET https://jokes.nico.dev/joke?amount=5
# Combine parameters
GET https://jokes.nico.dev/joke?category=Pun&type=twopart&amount=3
Query Parameters
All parameters are optional:
category: Joke category -Any,Programming,Misc,Pun,Spooky,Christmastype: Joke format -single(one-liner) ortwopart(setup/delivery)contains: Search for jokes containing this textamount: Number of jokes to retrieve (1-10)
Response Format
Single joke:
{
"joke": "Why do programmers prefer dark mode? Because light attracts bugs.",
"type": "single",
"category": "Programming"
}
Multiple jokes:
{
"jokes": [
{
"text": "Why do programmers prefer dark mode? Because light attracts bugs.",
"type": "single",
"category": "Programming"
},
{
"text": "How many programmers does it take to change a light bulb?\nNone, that's a hardware problem.",
"type": "twopart",
"category": "Programming"
}
]
}
Error response:
{
"error": "Error message here"
}
API Integration
This server integrates with the JokeAPI v2 which provides:
- 120 requests per minute rate limit
- No authentication required
- Multiple response formats (JSON default)
- Safe-mode enabled by default to filter out offensive content
Technical Details
- PHP: Requires PHP 8.0+
- HTTP Client: Uses Guzzle HTTP for reliable API requests
- Session Management: Implements MCP session handling with file-based storage
- Security: Origin validation, proper error handling, and safe-mode enforcement
- MCP Protocol: Full compliance with MCP specification
File Structure
src/
āāā MCPServer.php # Main MCP server implementation
data/
āāā mcp_sessions.json # Session storage (created automatically)
composer.json # Dependencies and autoloading
Development
The server follows MCP protocol standards and can be integrated with any MCP-compatible client. It handles:
- Tool discovery via
tools/list - Tool execution via
tools/call - Session management with secure session IDs
- Proper JSON-RPC 2.0 response formatting
- Error handling for network and API issues
Related Skills
Agent-Reach
96.5kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu ā one CLI, zero API fees.
headroom
75.1kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
CowAgent
47.4kOpen-source personal AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
ai-job-search
46.4kThe job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit ā see the Safety scan above for what the skill file itself contains.
