mcpField
A
aamangeldi-dad-jokes-mcp

aamangeldi-dad-jokes-mcp

Remote
github.com/aamangeldiGames & Entertainment0Updated 56w ago
Repository

About aamangeldi-dad-jokes-mcp

A lightweight MCP server that provides dad jokes from icanhazdadjoke.com. It supports random retrieval, keyword search, and lookup by joke ID for applications or agents that need joke content.

Key features

  1. 01Get a random dad joke
  2. 02Search jokes by keyword
  3. 03Retrieve a joke by ID
  4. 04No API key required

Use cases

  1. 01Requesting a joke for a casual exchange
  2. 02Finding jokes related to a keyword
  3. 03Retrieving a known joke by ID

MCP support

Exposes tools to MCP clients for fetching random jokes, searching by term, and retrieving a joke by ID. Joke content comes from icanhazdadjoke.com.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

All endpoints
Streamable HTTPhttps://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcpAuth required

Tools

Details

From the project README

Dad Jokes MCP Server

smithery badge

A lightweight Model Context Protocol (MCP) server that provides dad jokes from icanhazdadjoke.com.

Features

  • 🎭 Get random dad jokes
  • 🔍 Search jokes by keyword
  • 🆔 Retrieve specific jokes by ID
  • ⚡ Fast and lightweight
  • 🚀 Ready for Smithery deployment

Tools

get_random_joke_tool

Get a random dad joke.

Example:

{}
search_jokes_tool

Search for dad jokes containing a specific term.

Parameters:

  • term (string, required): Search term to find jokes
  • limit (integer, optional): Number of jokes to return (default: 5, max: 30)

Example:

{
  "term": "pizza",
  "limit": 3
}
get_joke_by_id_tool

Retrieve a specific joke by its ID.

Parameters:

  • joke_id (string, required): The ID of the joke to retrieve

Example:

{
  "joke_id": "R7UfaahVfFd"
}

Local Development

Prerequisites
  • Python 3.11+
  • pip
Setup
  1. Clone the repository:
git clone https://github.com/aamangeldi/dad-jokes-mcp.git
cd dad-jokes-mcp
  1. Create a virtual environment and install dependencies:
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install fastmcp smithery httpx
  1. Run the server locally:
fastmcp run server.py

Deployment to Smithery

  1. Push your code to GitHub
  2. Connect your repository to Smithery
  3. Smithery will automatically detect the configuration and deploy your server

The server uses:

  • runtime: python in smithery.yaml
  • FastMCP for the server implementation
  • @smithery.server() decorator for configuration

Configuration

The server requires no authentication or configuration. It uses the free icanhazdadjoke.com API with the following defaults:

  • API: https://icanhazdadjoke.com
  • No API key required
  • Rate limiting follows icanhazdadjoke.com policies

Credits

Dad jokes provided by icanhazdadjoke.com

License

MIT License - see LICENSE file for details

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.