Codex Pets Registry

Search, preview, install community Codex pet packs, and discover the pet request flow.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
86%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,883Tokens (tool definitions)
~900 BTypical response size
Moderate attention impact (1.47% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "codex-pets-ydb-qdrant": {
      "url": "https://pets.ydb-qdrant.tech/mcp"
    }
  }
}

Remote endpoints

https://pets.ydb-qdrant.tech/mcpstreamable-http

What it can do

Tool inventory

Tools (9)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_pets(query, kind, tags, author, compatibleWith, ...)

Use to discover one or more approved public Codex pet packs by query, kind, tags, author, or Codex compatibility. Prefer this over get_pet when you do not already have an exact slug or need multiple candidates. Do not use for private generation requests or known-slug install/share snippets; use get_pet_request_info or a slug-specific get_* tool instead.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional text matched against approved pet names, descriptions, tags, and authors."
    },
    "kind": {
      "type": "string",
      "enum": [
        "all",
        "creature",
        "object",
        "character"
      ],
      "description": "Optional pet kind filter. Use all or omit the field to include every kind."
    },
    "tags": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      ],
      "description": "Optional tag filter as a comma-separated string or array. All provided tags must match."
    },
    "author": {
      "type": "string",
      "description": "Optional author text matched against the public submitter name or verified public email."
    },
    "compatibleWith": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      ],
      "description": "Optional compatibility filter. Use codex for Codex-compatible pets; other values return no matches."
    },
    "limit": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "string"
        }
      ],
      "description": "Optional maximum result count. Defaults to 10 and is clamped to 1-60."
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_pet(slug)

Use when you already have an exact approved pet slug and need the sanitized public pet card, asset URLs, page URL, and install command for that one pet. Use search_pets first when you only have a name/query or need multiple results. Do not use for focused install, badge, embed, card, or request workflow details; use the matching get_* tool instead.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Exact slug of an approved public Codex pet."
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_install_instructions(slug)

Use for a known approved pet slug when the user wants CLI or manual install instructions. Do not use to search for pets or inspect general metadata; use search_pets or get_pet instead. This tool is read-only and does not increment install or download counters.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Exact slug of an approved public Codex pet."
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_badge_code(slug)

Use for a known approved pet slug when the user needs README badge Markdown, HTML, or SVG URL. Do not use for animated README cards, website iframe embeds, install instructions, or pet discovery; use get_card_code, get_embed_code, get_install_instructions, or search_pets instead.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Exact slug of an approved public Codex pet."
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_embed_code(slug)

Use for a known approved pet slug when the user needs website iframe embed HTML or an embed URL. Do not use for README badges/cards, install instructions, or pet discovery; use get_badge_code, get_card_code, get_install_instructions, or search_pets instead.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Exact slug of an approved public Codex pet."
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_card_code(slug)

Use for a known approved pet slug when the user needs animated README card Markdown, HTML, or GIF URL. Do not use for simple badges, website iframe embeds, install instructions, or pet discovery; use get_badge_code, get_embed_code, get_install_instructions, or search_pets instead.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Exact slug of an approved public Codex pet."
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_pet_request_info

Use when the user wants to request a new Codex pet or understand the public request form fields and reference image limits. Do not use to create, submit, update, or inspect private generation requests; these manual workflows are separate from generate_pet and get_pet_generation. Use search_pets or get_pet for existing approved pets.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡generate_pet(prompt, displayName, requestId)

Use only when the user requests a new animated pet from a text brief. Starts one server-paid pet generation task (twelve image stages, each with at most one delayed retry after a retryable provider failure, plus one text/vision request for an editable name, description and tags). Supply a fresh random UUID requestId; reuse it unchanged when retrying the same request. Limits: 200 accepted tasks/day globally, 10/IP by default, Moscow time. Admin IP allowances can add attempts until midnight; the global cap and budget still apply. Returns a task ID; poll get_pet_generation. The result is unlisted and expires after 24 hours. Do not use to publish a pet, edit an image, or create a manual administrator request. Experimental generation: animations and gaze directions may contain visual errors or look too similar. Review the preview before submitting your pet to moderation. Accepted tasks count toward the limit even if the result is unsuitable. A failed image stage may be retried once after a delay, which can incur an additional provider charge.

Input Schema

{
  "type": "object",
  "properties": {
    "prompt": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "displayName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80
    },
    "requestId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "prompt",
    "requestId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_pet_generation(generationId)

Use to read your generation task by its private generationId. Completed results include a preview, name/description/tags in metadata, and pet.json and spritesheet. An animationRevision without acceptedAt must be explicitly accepted on its private preview before ZIP download, metadata editing or gallery submission. Other completed results include the ZIP. Website jobs may return awaiting_confirmation: open their private preview for the user to confirm the character. Edit metadata on the private preview before submitting for moderation; this read tool never confirms, edits or starts a paid retry. Failed results include error.code, message, hint and automaticRetry=false: stop polling and explain the failure. Do not use to list other tasks, publish results, or start another paid generation; use generate_pet only for a new user-requested task.

Input Schema

{
  "type": "object",
  "properties": {
    "generationId": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    }
  },
  "required": [
    "generationId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Recommended Prompts

search_research
Search for information about [topic] using Codex Pets Registry
Expected tools: search_pets
find_specific
Find [specific item] using Codex Pets Registry
Expected tools: search_pets
retrieve_data
Get details about [item] from Codex Pets Registry
Expected tools: get_pet
fetch_info
Fetch [information type] using Codex Pets Registry
Expected tools: get_pet
research_workflow
Search for [topic], then get detailed information about the top results using Codex Pets Registry
Expected tools: search_petsget_pet

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded9 tools
verifiedversion not recorded9 tools
verifiedversion not recorded9 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools