Giphy
liveEntertainmentMediaSearch, browse trending, and fetch random GIFs from the Giphy library
3tools
0msauth
free tier50 calls/day
Tools
search_gifsrequired: querySearch Giphy for GIFs by keyword. Returns title, URL, rating, and multiple image sizes.
Parameters
NameTypeDescription
queryreqstringSearch query, e.g. "funny cats" or "celebration"limitoptnumberNumber of results to return (1–25, default 10)Try it
Response
trending_gifsGet currently trending GIFs on Giphy. Returns title, URL, rating, and multiple image sizes.
Parameters
NameTypeDescription
limitoptnumberNumber of results to return (1–25, default 10)Try it
Response
random_gifGet a random GIF, optionally filtered by tag (e.g., "cats"). Returns title, URL, rating, and image URLs.
Parameters
NameTypeDescription
tagoptstringOptional tag to filter by, e.g. "dogs" or "anime"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/giphy/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/giphy/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_gifs","arguments":{"query": "hello"}}}'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("search_gifs", {"query":"example"});ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("search, browse trending, and fetch random gifs from the giphy library");