SkillAgentSearch skills...

joke-mcp

An MCP wrapper for https://sv443.net/jokeapi/v2/

Install / Use

claude mcp add nico-martin -- npx -y github:nico-martin/joke-mcp

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
šŸ”Œ

MCP Server

Model Context Protocol server

Quality Score

67/100

Supported Platforms

Claude Code
Claude Desktop

Tags

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.

Substance
26/30
Structure
20/20
Description
8/15
Adoption
3/20
Freshness
11/15

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.

SkillScoreStarsUpdatedFormat
joke-mcp (this skill)by nico-martin67311mo agoMCP Server
Agent-Reachby Panniantong10096.5k4d agoCLAUDE.md
headroomby headroomlabs-ai10075.1ktodayCLAUDE.md
CowAgentby zhayujie10047.4ktodayCLAUDE.md
ai-job-searchby MadsLorentzen10046.4k4d agoCLAUDE.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.

Joke 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

  1. Clone the repository:
git clone <repository-url>
cd joke-mcp
  1. 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, Christmas
  • type (string): Joke format - single (one-liner) or twopart (setup/delivery)
  • contains (string): Search for jokes containing this text
  • amount (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, Christmas
  • type: Joke format - single (one-liner) or twopart (setup/delivery)
  • contains: Search for jokes containing this text
  • amount: 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

View on GitHub
GitHub Stars3
CategoryDevelopment
Updated10mo ago
Forks0

Languages

PHP

Trust signals

81/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

3 low
joke-mcp — MCP Server: Install & Safety Check | SkillAgent