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
- 01Get a random dad joke
- 02Search jokes by keyword
- 03Retrieve a joke by ID
- 04No API key required
Use cases
- 01Requesting a joke for a casual exchange
- 02Finding jokes related to a keyword
- 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.
https://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcpclaude mcp add --transport http ai-smithery-aamangeldi-dad-jokes https://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcp{"mcpServers":{"ai-smithery-aamangeldi-dad-jokes":{"type":"http","url":"https://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcp"}}}Open in Cursor{"servers":{"ai-smithery-aamangeldi-dad-jokes":{"type":"http","url":"https://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcp"}}}Open in VS Code{"mcpServers":{"ai-smithery-aamangeldi-dad-jokes":{"type":"http","url":"https://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcp"}}}{"mcpServers":{"ai-smithery-aamangeldi-dad-jokes":{"serverUrl":"https://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcp"}}}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.
https://server.smithery.ai/@aamangeldi/dad-jokes-mcp/mcpAuth requiredTools
Details
From the project READMEDad Jokes MCP Server
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 jokeslimit(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
- Clone the repository:
git clone https://github.com/aamangeldi/dad-jokes-mcp.git
cd dad-jokes-mcp
- 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
- Run the server locally:
fastmcp run server.py
Deployment to Smithery
- Push your code to GitHub
- Connect your repository to Smithery
- Smithery will automatically detect the configuration and deploy your server
The server uses:
runtime: pythoninsmithery.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
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.