spawnpop

Roblox game assets for your agent: free kit plan, then GUI, icons, thumbnails, 3D props and music.

사용해야 할까요

품질 및 안전성

A
설명 품질
96%
스키마 완전성
81%
이름 품질
96%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,899토큰 (도구 정의)
~1.4 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.48%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "spawnpop": {
      "url": "https://spawnpop.com/mcp"
    }
  }
}

원격 엔드포인트

https://spawnpop.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (9)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢plan_kit(description, genre, style)

No charge. Turns a one-sentence game idea into a priced kit (GUI, icons, thumbnail, 3D props, music). With an API key the plan is saved as a project; without one you get the same plan and price plus a link for the user to connect.

입력 스키마

{
  "type": "object",
  "properties": {
    "description": {
      "type": "string",
      "minLength": 3,
      "maxLength": 500,
      "description": "The game idea in plain words."
    },
    "genre": {
      "type": "string",
      "enum": [
        "simulator",
        "tycoon",
        "tower_defense",
        "obby",
        "rng",
        "horror",
        "roleplay",
        "fighting"
      ]
    },
    "style": {
      "description": "Art direction, e.g. \"chunky pastel cartoon\".",
      "type": "string",
      "maxLength": 300
    }
  },
  "required": [
    "description"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢draft(projectId, itemIds, variants, confirmCredits, requestId)

Costs 10 credits per draft image. Makes low-cost previews with an AI fit check so finals are only bought for what works. confirmCredits must equal the price (items x copies x variants); requestId makes a retry free.

입력 스키마

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64
    },
    "itemIds": {
      "minItems": 1,
      "maxItems": 40,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 64
      }
    },
    "variants": {
      "default": 1,
      "anyOf": [
        {
          "type": "number",
          "const": 1
        },
        {
          "type": "number",
          "const": 4
        }
      ]
    },
    "confirmCredits": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "requestId": {
      "type": "string",
      "minLength": 8,
      "maxLength": 64,
      "pattern": "^[\\w-]+$"
    }
  },
  "required": [
    "projectId",
    "itemIds",
    "confirmCredits",
    "requestId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢approve(projectId, approvals)

No charge. Marks one draft per item copy as the reference its final is made from. Use the outputId shown by get_status.

입력 스키마

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64
    },
    "approvals": {
      "minItems": 1,
      "maxItems": 40,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "itemId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64
          },
          "copy": {
            "default": 0,
            "type": "integer",
            "minimum": 0,
            "maximum": 49
          },
          "outputId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64
          }
        },
        "required": [
          "itemId",
          "outputId"
        ]
      }
    }
  },
  "required": [
    "projectId",
    "approvals"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪generate(projectId, itemIds, confirmCredits, requestId, options)

Spends credits. confirmCredits must equal the price of the items; if the price changed nothing is charged and price_changed comes back. The same requestId returns the same jobs and charges nothing. itemIds may be "approved".

입력 스키마

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64
    },
    "itemIds": {
      "anyOf": [
        {
          "minItems": 1,
          "maxItems": 40,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64
          }
        },
        {
          "type": "string",
          "const": "approved"
        }
      ]
    },
    "confirmCredits": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "requestId": {
      "type": "string",
      "minLength": 8,
      "maxLength": 64,
      "pattern": "^[\\w-]+$"
    },
    "options": {
      "description": "iconStyle: the game icon look when plan_kit listed styles.gameIcon. includePreview: add the optional preview sheet to \"approved\".",
      "type": "object",
      "properties": {
        "iconStyle": {
          "type": "string",
          "enum": [
            "avatar_3d",
            "cartoon"
          ]
        },
        "includePreview": {
          "description": "With itemIds \"approved\": also buy the optional themed preview sheet (its price is in plan_kit). Without it, \"approved\" never includes the preview.",
          "type": "boolean"
        }
      }
    }
  },
  "required": [
    "projectId",
    "itemIds",
    "confirmCredits",
    "requestId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_status(projectId, waitSeconds)

No charge. One row per plan item, drafts with the AI fit verdict (fit, misfit, unjudged or pending; unjudged never blocks approve), approvals and balance. waitSeconds (0-25) returns as soon as something changes, so a call can come back earlier than that.

입력 스키마

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64
    },
    "waitSeconds": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 25
    }
  },
  "required": [
    "projectId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_files(projectId)

No charge. Finished files with one-hour signed download URLs, sizes, triangle counts and stud sizes, plus a ready next-step block for Roblox Studio MCP and Open Cloud.

입력 스키마

{
  "type": "object",
  "properties": {
    "projectId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64
    }
  },
  "required": [
    "projectId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢list_projects(limit)

No charge. Your recent projects, newest first.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 20,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢generate_sprite_sheet(description, style, extras, confirmCredits, requestId, ...)

Spends credits (150, plus 50 for each extra animation, at most 2). Draws one character from a description in a chosen style with idle, run and attack animations and delivers the sheet, GIFs, frames and JSON via get_sprite_status. confirmCredits must equal the price; the same requestId returns the same order and charges nothing. Only one paid sprite order is open per account at a time. Without an API key nothing is spent: you get the price and links for the user.

입력 스키마

{
  "type": "object",
  "properties": {
    "description": {
      "type": "string",
      "minLength": 3,
      "maxLength": 300
    },
    "style": {
      "type": "string",
      "enum": [
        "pixel",
        "cartoon",
        "painted"
      ]
    },
    "extras": {
      "default": [],
      "maxItems": 2,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "walk",
          "jump",
          "hurt",
          "death"
        ]
      }
    },
    "confirmCredits": {
      "description": "The exact price you showed the user. Required with an API key.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "requestId": {
      "description": "Required with an API key. A new one for each new purchase, the same one to retry.",
      "type": "string",
      "minLength": 8,
      "maxLength": 64,
      "pattern": "^[\\w-]+$"
    },
    "fromRunId": {
      "description": "A finished web preview of the same character: keeps its character and idle sheet, so only the rest is drawn.",
      "type": "string",
      "minLength": 1,
      "maxLength": 64
    }
  },
  "required": [
    "description",
    "style"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_sprite_status(runId, waitSeconds)

No charge. Progress of a sprite sheet order. When it is done: signed one-hour download links for the sprite sheet PNG, one GIF per animation, a frames zip, the sheet JSON and the character. waitSeconds (0-25) returns as soon as something changes, so a call can come back earlier than that.

입력 스키마

{
  "type": "object",
  "properties": {
    "runId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64
    },
    "waitSeconds": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 25
    }
  },
  "required": [
    "runId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 9개