Dad Jokes
liveEntertainmentRandom and searchable dad jokes via icanhazdadjoke.com
3tools
0msauth
free tier50 calls/day
Tools
random_jokeFetch one random dad joke from icanhazdadjoke.com. Returns joke text and alphanumeric ID.
No parameters required.
Try it
Response
search_jokesrequired: querySearch dad jokes by keyword or topic. Returns matching jokes with IDs and text.
Parameters
NameTypeDescription
queryreqstringTerm to search for within dad jokes.limitoptnumberMaximum number of jokes to return. Defaults to 10.Try it
Response
get_jokerequired: idRetrieve a specific dad joke by ID. Returns the full joke text.
Parameters
NameTypeDescription
idreqstringThe ID of the dad joke to retrieve.Try it
Response
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
List available tools
bash
curl -X POST https://gateway.pipeworx.io/dadjokes/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Call a tool
bash
curl -X POST https://gateway.pipeworx.io/dadjokes/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"random_joke","arguments":{}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("random_joke", {});ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("random and searchable dad jokes via icanhazdadjoke");