# Giphy — how to use (mcp.ai)

Connect your Giphy account and use 23 tools for images and design straight from your AI agent. Connect with your own API key. GIPHY is the first and largest GIF search engine, offering an extensive library of GIFs and Stickers for integration into applications.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_giphy?ms=1787293560000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `giphy_action_register`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/giphy`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/giphy/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/giphy/action/register` — Tool to register user interactions (view, click, send) with a GIF for analytics. Use when you have the analytics payload, timestamp, and user ID to record the event.
  - body: { ts: integer, gif_id: string, random_id: string, action_type: string, analytics_response_payload: string }
- `POST https://api.mcp.ai/api/giphy/categories` — Tool to fetch a list of GIF categories on GIPHY. Use when you need to browse available categories before selecting one.
- `POST https://api.mcp.ai/api/giphy/category/by/id` — Tool to fetch metadata for a GIF category by its unique ID. Use when you need details for a specific category identifier.
  - body: { category_id: string }
- `POST https://api.mcp.ai/api/giphy/category/gifs` — Tool to fetch GIFs associated with a specific GIF category. Use after retrieving category_id from the categories endpoint to get curated GIFs.
  - body: { limit?: integer, bundle?: string, offset?: integer, rating?: string, region?: string, random_id?: string, category_id: string, country_code?: string, remove_low_contrast?: boolean }
- `POST https://api.mcp.ai/api/giphy/emoji` — Tool to fetch GIPHY emoji GIF objects. Use when you need a paginated list of GIPHY emojis.
  - body: { limit?: integer, offset?: integer }
- `POST https://api.mcp.ai/api/giphy/emoji/variations` — Tool to fetch variations for a specific emoji. Use when you have an emoji's GIF ID and want its variations.
  - body: { gif_id: string }
- `POST https://api.mcp.ai/api/giphy/get/content/by/id` — Tool to fetch content metadata by its unique ID. Generalizes the Get GIF by ID endpoint for all content types (GIFs, Stickers, and Clips).
  - body: { rating?: string, region?: string, random_id?: string, content_id: string, country_code?: string }
- `POST https://api.mcp.ai/api/giphy/get/content/by/ids` — Tool to fetch metadata for multiple pieces of content (GIFs, Stickers, or Clips) by their IDs. Use when you need information on up to 100 known content IDs across any GIPHY content type.
  - body: { ids: string, rating?: string, region?: string, random_id?: string, country_code?: string }
- `POST https://api.mcp.ai/api/giphy/get/random/id` — Tool to generate a unique random ID from Giphy. Use when you need to create a unique identifier for a new user that can be used with other Giphy endpoints to personalize API responses.
- `POST https://api.mcp.ai/api/giphy/random/gif` — Tool to fetch a random GIF from Giphy. Use when you need a single random GIF, optionally filtered by tag or rating. Example: 'Get a random cat GIF rated G.'
  - body: { tag?: string, rating?: string, random_id?: string }
- `POST https://api.mcp.ai/api/giphy/random/sticker` — Tool to fetch a single random sticker. Use when you need a random sticker, optionally filtered by tag or rating.
  - body: { tag?: string, rating?: string, region?: string, random_id?: string, country_code?: string }
- `POST https://api.mcp.ai/api/giphy/search/channels` — Tool to search for GIPHY channels by query term. Use when you need to find channels matching a specific topic or keyword.
  - body: { q: string, limit?: integer, offset?: integer }
- `POST https://api.mcp.ai/api/giphy/search/gifs` — Tool to search GIPHY's GIF library. Use when you need to find GIFs by keyword or phrase.
  - body: { q: string, lang?: string, limit?: integer, bundle?: string, fields?: string, offset?: integer, rating?: string, region?: string, random_id?: string, country_code?: string, remove_low_contrast?: boolean }
- `POST https://api.mcp.ai/api/giphy/search/stickers` — Tool to search GIPHY's sticker library. Use when you need to find stickers by keyword or phrase.
  - body: { q: string, lang?: string, limit?: integer, bundle?: string, offset?: integer, rating?: string, region?: string, random_id?: string, country_code?: string, remove_low_contrast?: boolean }
- `POST https://api.mcp.ai/api/giphy/tag/random` — Tool to fetch a single random tag from Giphy. Use when you need a random search term tag, optionally filtered by a query term.
  - body: { tag?: string, random_id?: string }
- `POST https://api.mcp.ai/api/giphy/tag/related` — Tool to fetch tags related to a specified tag. Use when you want to find semantically related tags for improved search suggestion.
  - body: { term: string }
- `POST https://api.mcp.ai/api/giphy/tag/search` — Tool to search GIPHY's tag library for autocomplete suggestions. Use when you need to generate tag suggestions for a user query.
  - body: { q: string, limit?: integer, offset?: integer }
- `POST https://api.mcp.ai/api/giphy/tag/trending` — Tool to fetch the most popular search terms (tags) on GIPHY. Use when you need trending tags for content discovery.
- `POST https://api.mcp.ai/api/giphy/translate/gif` — Tool to translate a term or phrase into a single GIF using GIPHY's special algorithm. Use when you need to convert words into the perfect GIF representation.
  - body: { s: string, rating?: string, region?: string, random_id?: string, country_code?: string }
- `POST https://api.mcp.ai/api/giphy/translate/sticker` — Tool to translate a term or phrase into a single sticker using GIPHY’s translation algorithm. Use after confirming the exact phrase to visualize as a sticker.
  - body: { s: string, rating?: string, region?: string, random_id?: string, country_code?: string }
- `POST https://api.mcp.ai/api/giphy/trending/gifs` — Tool to fetch trending GIFs from GIPHY. Use when you need the most relevant and engaging GIFs currently trending.
  - body: { limit?: integer, bundle?: string, offset?: integer, rating?: string, region?: string, random_id?: string, country_code?: string, remove_low_contrast?: boolean }
- `POST https://api.mcp.ai/api/giphy/trending/stickers` — Tool to fetch trending stickers. Use when you need the most relevant and engaging sticker GIFs currently trending.
  - body: { limit?: integer, bundle?: string, offset?: integer, rating?: string, region?: string, random_id?: string, country_code?: string, remove_low_contrast?: boolean }
- `POST https://api.mcp.ai/api/giphy/upload/gif` — Tool to upload a GIF or video file to GIPHY. Use when you need to create a new GIPHY entry from a local file or public URL. Requires developer API key and supports optional metadata.
  - body: { file?: string, tags?: string, region?: string, country_code?: string, source_post_url?: string, source_image_url?: string }

## Example prompts
- "What can I do in Giphy?"
- "Show me a summary of my Giphy account"

## More
- Page: https://mcp.ai/giphy
- Agent spec (llms.txt): https://mcp.ai/giphy/llms.txt
- Postman collection: https://mcp.ai/giphy/postman.json
