Specter Skills

io.github.dirtcubeinteractive由 GitHub 账号 dirtcubeinteractive 发布v0.11.1更新于 Oct 25, 2026

Configure a Specter game backend from chat: economy, progression, leaderboards, multiplayer.

已验证STDIO仅桌面效率与工作流开发者工具

概览

AI 生成的概览

Specter Skills 打包了 Claude 技能与 MCP 服务器,让助手编写 Specter 游戏后端集成代码,并在对话中配置 Specter 项目。

可以做什么
检查项目:验证配置,列出货币、物品、礼包、商店、事件、任务、排行榜、锦标赛、战斗通行证、等级系统与标记,并读取沙盒测试玩家的状态与奖励记录、领取即时奖励、触发自定义事件、端到端测试成就,以及生成 JavaScript 或 Unity C# 客户端代码。在启用变更后创建和编辑后端内容:货币、物品、礼包、商店、兑换与策略、事件、任务、任务链与其他成就类型、战斗通行证、等级系统、进度标记、对局模板、排行榜与竞赛、排期与运营活动,以及发放奖励。通过通用工具调用任意管理端或客户端接口。
适用场景
适用于基于 Specter 后端开发游戏时,希望助手写出正确的集成代码,并在不打开控制台的情况下配置经济、进度、竞赛或多人对战。只读检查与配置验证无需启用变更即可使用。
运行要求
通过 npx 在本机运行的进程,需要 Node.js 18 或更高版本。需要一个 Specter 项目及 Specter 控制台中的 API 密钥。创建内容需要一次性浏览器登录,并在本地保存可撤销的令牌;CI 场景可用 SPECTER_ADMIN_TOKEN 代替登录。可选变量:SPECTER_ENV(staging 或 production,默认 staging)、SPECTER_ALLOW_MUTATIONS、SPECTER_API_KEY、SPECTER_PROJECT_ID。
安装前请注意
变更类工具会修改线上游戏配置,仅在 SPECTER_ALLOW_MUTATIONS=true 时启用;包括创建、编辑、排期、停止和删除成就以及发放奖励,宿主会在每次执行前请求确认。请先在 staging 项目上试用。浏览器登录会在磁盘上保存可撤销令牌,SPECTER_ADMIN_TOKEN 与 SPECTER_API_KEY 属于机密。通用调用工具可访问任意管理端或客户端接口。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Specter Skills,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

specter-skills

[npm version] [node] [license]

Build your game backend by talking to Claude.

specter-skills teaches Claude everything about Specter — the game backend platform — so you can add player accounts, an in-game economy, daily quests, leaderboards, tournaments, battle passes, and real-time multiplayer to your game in plain English, and get correct, working code plus the ability to configure your backend without ever opening the dashboard.

No SDK to learn. No API docs to read. Install it, then ask.

You:    "Add Specter to my game — silent login, a coins wallet, and a daily         quest 'play 3 matches' that rewards 100 coins."Claude: ...writes the integration code, sets up the quest in your backend, done.

Contents


What's inside

This one package ships two halves of the same product:

What it isWhat it does
🧠 SkillsKnowledge Claude readsClaude writes correct Specter integration code — right endpoints, headers, response handling, and all the platform's gotchas baked in.
🛠️ MCP serverA tool Claude can runClaude acts on your backend — inspect a project, verify your setup, and create currencies, items, tasks, leaderboards, battle passes, and more, straight from chat.

Skills work in Claude Code, Claude Desktop, the Claude Agent SDK, and any other skills-aware host. The MCP server works in any MCP-compatible host (Claude Desktop, Claude Code, …).


Quickstart

1. Install the skills in your game project:

bash
npx specter-skills init

2. Get your API key from console.specterapp.xyz (Project → API Keys).

3. Ask Claude to build something:

"Add Specter email login and a gem currency to my Unity game."

The right skill activates automatically and Claude writes the integration. That's it.

💡 Want Claude to also set up the backend for you (create currencies, quests, leaderboards)? Add the MCP server and ask "create a gems currency and a daily login quest in my Specter project."


Installation

bash
# Interactive — choose skills and where to install themnpx specter-skills init
# Install everything into this project's .claude/skills/npx specter-skills install
# Install specific skillsnpx specter-skills install specter specter-economy
# Install globally (available in all your projects)npx specter-skills install --global
# Install into a custom directory (Agent SDK / other hosts)npx specter-skills install --dir ./skills
CommandWhat it does
npx specter-skills initInteractive: pick skills + target (project or global)
npx specter-skills install [names…]Install named skills (default: all). Flags: --global, --dir <path>
npx specter-skills updateRe-install your skills at the latest version
npx specter-skills listShow which skills are available and which you have installed

Skills are copied into .claude/skills/ (project) or ~/.claude/skills/ (global). They're plain files you can commit to your repo.


The skills

SkillWhat it covers
specterStart here — platform overview, the auth model, base URLs, the response envelope, and every error code.
specter-playersSign-up & login (email, username, silent device ID, Google, Apple, Steam, Discord, Facebook), tokens, account linking, player profiles & custom data, friends.
specter-economyCurrencies & wallets, items, bundles, stores & purchases, inventory, gacha / loot boxes with pity, and real-money gaming (deposits / withdrawals).
specter-progressionTasks, missions, achievements, daily quests & streaks, task-rule design, custom events, battle passes, XP & level systems.
specter-competitionsLeaderboards, tournaments, instant battles, prize distribution, and schedules.
specter-multiplayerSkill-based matchmaking, parties, match sessions, and the full real-time Socket.io event contract.
specter-adminConfigure the game via admin APIs — projects, currencies, items, tasks, live-ops, members. Used by the MCP server to set things up for you.

Each skill has a concise guide plus per-endpoint references (request fields, response examples) generated directly from Specter's API, and ready-to-paste JavaScript / Unity examples where useful — so the code Claude writes stays accurate.


The MCP server

The same package ships an MCP server, specter-mcp, that lets Claude inspect and configure a Specter backend directly. The skills teach Claude the API; the MCP server lets it use the API.

"What currencies does my project have?" · "Is my setup working?" · "Create a gems currency and a daily quest that rewards 100 coins."

Setup

The easy way — npx specter-skills init offers to set this up for you (it writes the config, no JSON editing). Or run it any time:

bash
# Claude Desktopnpx specter-skills mcp
# Claude Code (registers it for all your projects)npx specter-skills mcp --code

Then restart your MCP host and the specter tools appear. (Claude Desktop and Claude Code are different apps with separate configs — pick the one you actually use.)

Manual setup (if you prefer to edit the config yourself)

Add to your MCP host config (e.g. Claude Desktop's claude_desktop_config.json):

json
{  "mcpServers": {    "specter": {      "command": "npx",      "args": ["-y", "-p", "specter-skills", "specter-mcp"],      "env": {        "SPECTER_ENV": "staging",        "SPECTER_ALLOW_MUTATIONS": "true"      }    }  }}

Read-only tools work immediately; creating things needs a one-time sign-in — no api-key or project ID to configure.

Signing in (no password needed)

To create anything, Claude needs to act as you — so you authorize it once through your browser. The first time it's needed, Claude runs the specter_login tool (or run it yourself in a terminal):

bash
npx -y -p specter-skills specter-mcp login

What happens:

  1. Your browser opens the Specter dashboard.
  2. You sign in however you normally do — email/password, Google, or Apple.
  3. You approve a consent screen ("Allow specter-mcp to manage your projects").
  4. Done — a revocable token is saved locally (~/.specter/credentials.json). You stay signed in.

Your password and social credentials never touch the tool or Claude. Revoke access anytime from the dashboard. Manage the session with specter-mcp whoami and specter-mcp logout.

ℹ️ Run specter-mcp commands from any folder except the specter-skills source folder itself (npx gets confused there).

Tools

Read-only — always available, safe to run:

ToolPurpose
specter_verify_setupSmoke-test the project: auth, currencies, events, tasks
specter_list_currencies · _items · _bundles · _storesInspect economy content
specter_list_eventsList custom events (with their ids) that trigger tasks
specter_list_tasks · _leaderboards · _tournaments · _battlepassesInspect progression & competitions
specter_list_progression_systems · _markersInspect level systems & markers

Read tools use your browser sign-in (run specter_login once) — no separate api-key to configure.

Client / runtime — act as a sandboxed test player to exercise the game-facing /v2/client API and prove your config works:

ToolPurpose
specter_get_player_stateRead the test player's tasks, wallet, and inventory
specter_send_eventFire a custom event (the same call your game makes) to trigger achievements
specter_test_achievementEnd-to-end: read status → fire the event → re-read → report whether the task progressed
specter_get_reward_history · specter_claim_rewardList pending rewards, and claim on-claim task rewards (grant-reward-by-source)
specter_generate_client_codeGenerate ready-to-paste game code (JS or Unity C#) wired with your real api-key + event slug

Mutating — opt-in (SPECTER_ALLOW_MUTATIONS=true), gated behind your confirmation:

ToolCreates / does
specter_create_currency · _item · _bundle · _storeEconomy content
specter_create_currency_conversion · _currency_policyExchange rates + balance/decay/earning-cap policies
specter_create_eventA custom event that triggers achievements
specter_create_taskA single-objective achievement
specter_create_mission · _step_series · _time_seriesThe 3 grouped achievement types (pool / sequential / streak)
specter_schedule_achievement · _stop_achievement · _delete_achievementActivate / halt / delete an achievement (the create→schedule two-step)
specter_create_battlepass · _level_system · _progression_markerProgression content
specter_create_matchMultiplayer match template (format / outcome / game)
specter_create_leaderboard · _competitionCompetitions
specter_edit_currency · _edit_task · _update_entityEdit existing entities (rename, retune, disable, …)
specter_schedule_liveopsSchedule a leaderboard / competition live
specter_grant_rewardGrant items / currencies to a player
specter_admin_call · specter_client_callEscape hatches — call any /v1 admin or /v2/client endpoint that lacks a dedicated tool (match config, members, games, reward-sets, tags, friends, purchases, …), using the bundled API references for the shape
specter_loginBrowser sign-in (above)

The achievement tools resolve friendly names for you — pass event as an event slug/name, rewards as [{currency:"gems", quantity:50}] (or item/bundle/marker), and the tool resolves them to the right ids. Creating an achievement does not make it live — call specter_schedule_achievement to activate it.

Mutating tools change live game configuration, so they're flagged non-read-only and your MCP host asks for confirmation before each one. Point them at a staging project first.

Your project is auto-detected from your sign-in — there's no project ID to look up. (Only set SPECTER_PROJECT_ID if your organisation has several projects and you want to pin one.)

Configuration

All configuration is via env vars in your MCP host config:

VariableRequiredDefaultPurpose
SPECTER_ENV—stagingstaging or production
SPECTER_ALLOW_MUTATIONS—falsetrue enables the create / mutate tools
SPECTER_API_KEYoptional—Client api-key. Not needed after sign-in — the dev key from your login is reused. Set it only if you want read tools to work before signing in.
SPECTER_PROJECT_IDoptional—Auto-discovered from your sign-in. Only set it if your organisation has multiple projects and you want to pin one.
SPECTER_ADMIN_TOKENoptional—For CI / non-interactive use instead of browser sign-in

Things to ask Claude

Once installed, just describe what you want — the right skill (and MCP tool) kicks in automatically:

  • "Add silent device login and a coins wallet to my game."
  • "Set up a daily quest: play 5 matches → reward 200 coins. Create it in my Specter project and give me the client code."
  • "Create a premium gem currency and a starter store that sells a 'Sword' item for 100 gems."
  • "Add a weekly leaderboard with top-10 prize distribution."
  • "Build a battle pass with 30 tiers."
  • "Add skill-based matchmaking with parties — show me the WebSocket events to handle."
  • "Why am I getting a 429 from Specter?"
  • "Is my Specter project set up correctly?"

Checking the version & updating

bash
# Latest version published on npmnpm view specter-skills version
# Which skills you have installed (and their versions)npx specter-skills list
# Update your installed skills to the latestnpx specter-skills update

npx caches packages for ~24h. If update pulls an old version, force the latest with npx specter-skills@latest update. The MCP server (npx … specter-mcp) always fetches the latest published version the same way.


Requirements

  • Node.js 18+
  • A Specter project + API key (console.specterapp.xyz)
  • A skills-aware Claude host (Claude Code, Claude Desktop, or the Agent SDK) for the skills; an MCP-compatible host for the server

Troubleshooting

SymptomFix
specter-mcp: command not foundRun it from a folder other than the specter-skills source folder (e.g. cd ~ first).
No api-key availableSet SPECTER_API_KEY, or run specter-mcp login (its dev key is then reused).
Multiple projects on a create toolTell Claude which project (it's auto-detected when you have one).
Create tools don't appearSet SPECTER_ALLOW_MUTATIONS=true and restart your MCP host.
Browser login times outRe-run specter-mcp login; if the browser didn't open, use the printed URL.
Skills don't activateConfirm they're installed (npx specter-skills list) and your host loads .claude/skills/.
401 / 402 / 429 from the APISee the specter skill's error reference (auth, billing, rate limits).

Links


Maintenance (Specter team)
  • Endpoint references are generated. npm run generate regenerates skills/*/references/endpoints{,/-index}.md from gamestarz_dashboard_backend/docs/api/ (override the source dir with SPECTER_DOCS_DIR). Unmapped endpoint docs fail the build, so the skills can't silently drift from the API.
  • Secret linter. npm run lint:secrets (also runs on prepublishOnly) blocks secrets and internal hostnames from being published.
  • Hand-written content lives in each skill's SKILL.md and the non-generated references/*.md. The MCP server lives in mcp/src/.

Releasing

bash
npm version patch        # or minor / majornpm run generate         # refresh referencesnpm publish --access public

The files allowlist ships bin/, skills/, mcp/src/*.mjs, and README.md. Skills and the MCP server publish together as the single specter-skills package.

来源:README.md,提交 ceed3a5

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.11.1最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分