specter-skills

specter-skills

Configure a Specter game backend from chat — economy, progression, leaderboards, tournaments, battle passes, and real-time multiplayer — via your AI assistant.

Category
Visit Server

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 is What it does
🧠 Skills Knowledge Claude reads Claude writes correct Specter integration code — right endpoints, headers, response handling, and all the platform's gotchas baked in.
🛠️ MCP server A tool Claude can run Claude 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:

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

# Interactive — choose skills and where to install them
npx specter-skills init

# Install everything into this project's .claude/skills/
npx specter-skills install

# Install specific skills
npx 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
Command What it does
npx specter-skills init Interactive: pick skills + target (project or global)
npx specter-skills install [names…] Install named skills (default: all). Flags: --global, --dir <path>
npx specter-skills update Re-install your skills at the latest version
npx specter-skills list Show 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

Skill What it covers
specter Start here — platform overview, the auth model, base URLs, the response envelope, and every error code.
specter-players Sign-up & login (email, username, silent device ID, Google, Apple, Steam, Discord, Facebook), tokens, account linking, player profiles & custom data, friends.
specter-economy Currencies & wallets, items, bundles, stores & purchases, inventory, gacha / loot boxes with pity, and real-money gaming (deposits / withdrawals).
specter-progression Tasks, missions, achievements, daily quests & streaks, task-rule design, custom events, battle passes, XP & level systems.
specter-competitions Leaderboards, tournaments, instant battles, prize distribution, and schedules.
specter-multiplayer Skill-based matchmaking, parties, match sessions, and the full real-time Socket.io event contract.
specter-admin Configure 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 waynpx specter-skills init offers to set this up for you (it writes the config, no JSON editing). Or run it any time:

# Claude Desktop
npx 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.)

<details> <summary>Manual setup (if you prefer to edit the config yourself)</summary>

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

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

</details>

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):

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:

Tool Purpose
specter_verify_setup Smoke-test the project: auth, currencies, events, tasks
specter_list_currencies · _items · _bundles · _stores Inspect economy content
specter_list_events List custom events (with their ids) that trigger tasks
specter_list_tasks · _leaderboards · _tournaments · _battlepasses Inspect progression & competitions
specter_list_progression_systems · _markers Inspect 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:

Tool Purpose
specter_get_player_state Read the test player's tasks, wallet, and inventory
specter_send_event Fire a custom event (the same call your game makes) to trigger achievements
specter_test_achievement End-to-end: read status → fire the event → re-read → report whether the task progressed
specter_get_reward_history · specter_claim_reward List pending rewards, and claim on-claim task rewards (grant-reward-by-source)
specter_generate_client_code Generate 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:

Tool Creates / does
specter_create_currency · _item · _bundle · _store Economy content
specter_create_currency_conversion · _currency_policy Exchange rates + balance/decay/earning-cap policies
specter_create_event A custom event that triggers achievements
specter_create_task A single-objective achievement
specter_create_mission · _step_series · _time_series The 3 grouped achievement types (pool / sequential / streak)
specter_schedule_achievement · _stop_achievement · _delete_achievement Activate / halt / delete an achievement (the create→schedule two-step)
specter_create_battlepass · _level_system · _progression_marker Progression content
specter_create_match Multiplayer match template (format / outcome / game)
specter_create_leaderboard · _competition Competitions
specter_edit_currency · _edit_task · _update_entity Edit existing entities (rename, retune, disable, …)
specter_schedule_liveops Schedule a leaderboard / competition live
specter_grant_reward Grant items / currencies to a player
specter_admin_call · specter_client_call Escape 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_login Browser 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:

Variable Required Default Purpose
SPECTER_ENV staging staging or production
SPECTER_ALLOW_MUTATIONS false true enables the create / mutate tools
SPECTER_API_KEY optional 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_ID optional Auto-discovered from your sign-in. Only set it if your organisation has multiple projects and you want to pin one.
SPECTER_ADMIN_TOKEN optional 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

# Latest version published on npm
npm view specter-skills version

# Which skills you have installed (and their versions)
npx specter-skills list

# Update your installed skills to the latest
npx 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

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

Links


<details> <summary><b>Maintenance (Specter team)</b></summary>

  • 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

npm version patch        # or minor / major
npm run generate         # refresh references
npm 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.

</details>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured