Public log

@fifth-door/mcp

Fifth Door MCP server — sign in and publish games to Fifth Door from any MCP client

npm · fingerprint 89de5fc20298be8f912c750b · repository · RSS

27tools
4recorded versions
24dtracked
changed 3d ago

What changed

Changed 2026-10-27 12:26 UTC

5 schema or annotation changes with the description left byte-identical.

--- pinned/animate_sprite
+++ observed/animate_sprite
  {
    "description": "Animate an existing image into a sprite sheet: a walk cycle, an attack, a spinning coin. First create the source image (a facing still from create_character, or a transparent cutout), then pass it as referenceImage; the animation opens on that exact image so identity and facing stay locked. One call is one motion; for a directional character, animate once per facing and motion. An animation is one packed sheet.png plus a frames.json beside it giving the frame grid (frameWidth, frameHeight, cols, rows, count, padding), timing, and a 'rest' box: the subject's visible bounds in its resting pose. Slice frames from the grid, and size and ground the sprite by the rest box rather than the frame rectangle. A still has a one-frame .json beside it carrying its rest box. Takes a few minutes. Costs 5 units.",
    "execution": {
-         "description": "The game's one camera projection, the same on every asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled).",
+         "description": "The game's one camera projection, the same on every world asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled). 'front' (straight-on, facing the viewer) is for interface art the game camera doesn't see — portraits, cards, splash art, item icons — and for games with no world camera (visual novel, card, quiz).",
          "enum": [
            "top-down",
            "side",
-           "isometric"
+           "isometric",
+           "front"
          ],
          "type": "string"
        },
--- pinned/create_character
+++ observed/create_character
  {
    "description": "Establish a character's look: draws one turnaround model sheet (the same character from every needed direction) and writes a standing reference still per facing at <dir>/<facing>.png, each with a one-frame .json carrying its rest box. It does not animate: pass a facing still to animate_sprite for each motion. Set directional:false for a sprite the game rotates in code (a car, an ant, a projectile). Costs 2 units.",
    "execution": {
-         "description": "Which facings to draw. Omit for the projection's defaults (top-down: all four; side: right, flipped in code for left; isometric: right and up).",
+         "description": "Which facings to draw. Omit for the projection's defaults (top-down: all four; side: right, flipped in code for left; isometric: right and up; front: down, facing the camera).",
          "items": {
            "enum": [
              "up",
-         "description": "The game's one camera projection, the same on every asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled).",
+         "description": "The game's one camera projection, the same on every world asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled). 'front' (straight-on, facing the viewer) is for interface art the game camera doesn't see — portraits, cards, splash art, item icons — and for games with no world camera (visual novel, card, quiz).",
          "enum": [
            "top-down",
            "side",
-           "isometric"
+           "isometric",
+           "front"
          ],
          "type": "string"
        },
--- pinned/create_image
+++ observed/create_image
  {
    "description": "Generate one static image: a prop, pickup, obstacle, or icon (transparent: true), a full-screen background (orientation 'tall'), or a seamless repeating texture (tileable: true) such as ground, a wall, or a parallax sky. A transparent cutout gets a .json beside it carrying its rest box; size it by that box, since the visible art is smaller than the image. Tile textures in code rather than stretching one copy. For several items that share a frame use create_image_set; for anything that animates or needs facings use create_character. Costs 1 unit.",
    "execution": {
-         "description": "The game's one camera projection, the same on every asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled).",
+         "description": "The game's one camera projection, the same on every world asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled). 'front' (straight-on, facing the viewer) is for interface art the game camera doesn't see — portraits, cards, splash art, item icons — and for games with no world camera (visual novel, card, quiz).",
          "enum": [
            "top-down",
            "side",
-           "isometric"
+           "isometric",
+           "front"
          ],
          "type": "string"
        },
--- pinned/create_image_set
+++ observed/create_image_set
  {
    "description": "Generate a set of related static images that share one frame or layout: a deck of cards, board tiles, matched HUD badges, collectible variants. One anchor image is drawn from sharedDescription and every item is matched to it, so the set shares one border, scale, and palette. Each item is written to <dir>/<name>.png. Not for unrelated subjects that merely share an art style (pass one styleReference to separate create_image calls for that). A new set needs at least two items; to add to an existing set, call again with the same dir and one or more items. Costs 1 unit per item plus 1 for a new set's anchor.",
    "execution": {
-         "description": "The game's one camera projection, the same on every asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled).",
+         "description": "The game's one camera projection, the same on every world asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled). 'front' (straight-on, facing the viewer) is for interface art the game camera doesn't see — portraits, cards, splash art, item icons — and for games with no world camera (visual novel, card, quiz).",
          "enum": [
            "top-down",
            "side",
-           "isometric"
+           "isometric",
+           "front"
          ],
          "type": "string"
        },
--- pinned/create_style_reference
+++ observed/create_style_reference
  {
    "description": "Generate a style reference: a sample screenshot drawn in the art style you describe. Pass its path as styleReference to the other asset tools to draw them in that style. Costs 1 unit of the daily asset budget.",
    "execution": {
-         "description": "The game's one camera projection, the same on every asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled).",
+         "description": "The game's one camera projection, the same on every world asset: 'top-down' (seen from above), 'side' (flat side-on, side-scroller), or 'isometric' (2:1 angled). 'front' (straight-on, facing the viewer) is for interface art the game camera doesn't see — portraits, cards, splash art, item icons — and for games with no world camera (visual novel, card, quiz).",
          "enum": [
            "top-down",
            "side",
-           "isometric"
+           "isometric",
+           "front"
          ],
          "type": "string"
        },

Changed 2026-10-22 11:59 UTC

1 description rewritten.

--- pinned/list_sdk_services
+++ observed/list_sdk_services
  {
-   "description": "List what the Fifth Door platform can do for a game, as the docs index of one SDK library release: saved progress and shared records (collections), play-time LLM and image generation, multiplayer (realtime, presence, claims), daily games, camera and microphone input, share and invite, background audio, notifying players after they leave (turn came round, results landed, a timer ran down), selling items to players (in-game purchases for keys), plus the setup guide for a project outside Studio. Each capability says when it applies and which distribution hosts lack it. Read-only: touches no files and needs no login. Call it when a game needs something the platform might provide — while adding a feature, not only at setup — then read the matching topic with get_sdk_docs. Always returns the concrete release it read.",
+   "description": "List what the Fifth Door platform can do for a game, as the docs index of one SDK library release: saved progress and shared records (collections), play-time LLM and image generation, multiplayer (realtime, presence, claims), game servers that run the rules once per room (real-time action, hidden information), daily games, camera and microphone input, share and invite, background audio, notifying players after they leave (turn came round, results landed, a timer ran down), selling items to players (in-game purchases for keys), plus the setup guide for a project outside Studio. Each capability says when it applies and which distribution hosts lack it. Read-only: touches no files and needs no login. Call it when a game needs something the platform might provide — while adding a feature, not only at setup — then read the matching topic with get_sdk_docs. Always returns the concrete release it read.",
    "execution": {
      "taskSupport": "forbidden"
    },

Changed 2026-10-09 13:28 UTC

1 description rewritten.

--- pinned/list_sdk_services
+++ observed/list_sdk_services
  {
-   "description": "List what the Fifth Door platform can do for a game, as the docs index of one SDK library release: saved progress and shared records (collections), play-time LLM and image generation, multiplayer (realtime, presence, claims), daily games, camera and microphone input, share and invite, background audio, notifying players after they leave (turn came round, results landed, a timer ran down), plus the setup guide for a project outside Studio. Each capability says when it applies and which distribution hosts lack it. Read-only: touches no files and needs no login. Call it when a game needs something the platform might provide — while adding a feature, not only at setup — then read the matching topic with get_sdk_docs. Always returns the concrete release it read.",
+   "description": "List what the Fifth Door platform can do for a game, as the docs index of one SDK library release: saved progress and shared records (collections), play-time LLM and image generation, multiplayer (realtime, presence, claims), daily games, camera and microphone input, share and invite, background audio, notifying players after they leave (turn came round, results landed, a timer ran down), selling items to players (in-game purchases for keys), plus the setup guide for a project outside Studio. Each capability says when it applies and which distribution hosts lack it. Read-only: touches no files and needs no login. Call it when a game needs something the platform might provide — while adding a feature, not only at setup — then read the matching topic with get_sdk_docs. Always returns the concrete release it read.",
    "execution": {
      "taskSupport": "forbidden"
    },

Current tools

Show all 27 tool fingerprints
animate_sprite
fd481e515dd42d40
clear_game_preview
76e05a767c76eb1f
create_character
a368ec4f56ee9804
create_dialogue
e378783005c13f06
create_image
1d80b4ae4651630d
create_image_set
40f26e3589f655ee
create_music
fd408357f6bd3af9
create_sound_effects
c198471d3d242fad
create_speech
5ec4902299391bec
create_style_reference
e6c06b4bfddfc45c
create_video
adff570f194a7995
edit_image
1f69b8bb48297938
enter_jam
76d1b7b6fd45f3c7
generate_game_preview
c9310876b432938d
get_asset_job
b71d701ce32ff6e6
get_game_preview_status
e4986ccee73dae83
get_sdk_docs
47f9baa599ee3cbd
list_jams
63bbbcf893b55cff
list_my_games
308361b9ff58753a
list_sdk_services
be304ce17611d2b9
login
ac77f0d0f9e279f6
logout
2070f60718f714ce
publish_game
9281e045704e91af
set_game_preview
cc70d8be97f0700d
set_game_visibility
e07cf3e20f859d1f
whoami
c08e6c2a3f87d315
withdraw_from_jam
89c4b60574058acc

Watch this server yourself

If you run this server, put the proxy in front of it. It pins these exact fingerprints on first connect and stops the session if they move.

npx -y mcp-pin@0.2.3 -- <your @fifth-door/mcp command>

Or subscribe to this page's RSS feed to be told when it changes.

Badge

mcp-pin status badge for @fifth-door/mcp

The badge states one fact about time and nothing else. It never claims a server is safe.

[![mcp-pin](https://mcp-pin.gautamkhosla.com/badge/f4c9a296b7aa591e.svg)](https://mcp-pin.gautamkhosla.com/servers/f4c9a296b7aa591e.html)