Agent Skills for MapleStory Universe — a SKILL.md catalog for MSU builders. Works with Claude Code, Codex CLI, Gemini CLI, Kimi CLI, and any LLM agent that reads SKILL.md. By NEXPACE.
Overview
Use MapleStory Universe resources with AI agents. — the same install steps and skill list as a web page. This repository provides installable MSU Resource Skills for AI agents. The skills help agents discover and use MSU game resources through Resource MCP while building Synergy Apps. Within the NEXPACE skills ecosystem, this repository is the msu-skills catalog — the home of MSU (≒ NEXPACE) common skills and shared modules. Product-specific skill sets live in their own repositories and depend on these. Choose the channel that matches your agent. All of them install the same SKILL.md sources; they differ in plugin selection and MCP setup. This repository is its own plugin marketplace, so it is added and installed directly. Install any of them. Later releases arrive with /plugin marketplace update msu-skills.
README
MSU Skills
Use MapleStory Universe resources with AI agents.
nexpace-limited.github.io/msu-skills — the same install steps and skill list as a web page.
This repository provides installable MSU Resource Skills for AI agents. The skills help agents discover and use MSU game resources through Resource MCP while building Synergy Apps.
Within the NEXPACE skills ecosystem, this repository is the msu-skills catalog
— the home of MSU (≒ NEXPACE) common skills and shared modules. Product-specific
skill sets live in their own repositories and depend on these.
Its plugins install independently:
| Plugin | For | Needs an MSU Builder OpenAPI key |
|---|---|---|
msu |
Building on MapleStory Universe resources | yes — bundles the maple-lookup MCP server |
game-tools |
Game production quality, on any engine or platform | no |
msu-statusline |
The newest MSU Builder notice in the Claude Code status line | no |
Installation
Choose the channel that matches your agent. All of them install the same
SKILL.md sources; they differ in plugin selection and MCP setup.
Claude Code — plugin
This repository is its own plugin marketplace, so it is added and installed directly.
/plugin marketplace add NEXPACE-Limited/msu-skills
/plugin install msu@msu-skills # Maple assets + maple-lookup MCP
/plugin install game-tools@msu-skills # game quality gates, no credential
/plugin install msu-statusline@msu-skills # MSU notices in the status line, no credential
Install any of them. Later releases arrive with
/plugin marketplace update msu-skills.
msu-statusline is the one plugin that also needs a step of its own: Claude Code
keeps statusLine in your own settings rather than in plugin config, so run
/msu-statusline:msu-statusline-install once and it is written there for you. A
status line you already use is kept and rendered above the MSU line, not replaced.
Installing the msu plugin registers the skills and the maple-lookup MCP
server together — the server definition is bundled as
plugins/msu/.mcp.json at that plugin’s root, so
Claude Code picks it up automatically. When the plugin is enabled, Claude Code
prompts for your MSU Builder OpenAPI key and stores it securely — no manual MCP
setup is needed.
Other agents — skills CLI
Requires Node.js 22.20+.
npx skills add NEXPACE-Limited/msu-skills
This installs the skills for your active coding agent, such as Cursor, Codex CLI, OpenCode, Windsurf, Continue, Cline, or Zed. (Claude Code users should prefer the plugin channel above.) The skills do not bundle a CLI helper or require shell utilities.
This offers the skills of every plugin in the repository at once. Name the ones you want to narrow it:
npx skills add NEXPACE-Limited/msu-skills --skill maple-make
With this channel, configure the maple-lookup MCP server manually — see the
next section.
Codex, Gemini, Kimi — installer
No Node.js or Git checkout is required. The installer downloads a temporary source snapshot, copies the selected skills, and removes the snapshot.
curl -fsSL https://raw.githubusercontent.com/NEXPACE-Limited/msu-skills/main/install.sh | bash
# Install one plugin only
curl -fsSL https://raw.githubusercontent.com/NEXPACE-Limited/msu-skills/main/install.sh \
| bash -s -- --plugin game-tools
The script auto-detects ~/.codex, ~/.gemini, and ~/.kimi. Download and
review install.sh first if you prefer not to pipe a remote script
into Bash. A cloned checkout uses the same interface without network access:
./install.sh # every plugin
./install.sh --plugin game-tools # one plugin only
./install.sh --target
The script copies every skill of the selected plugins — flat, by skill name,
because that is where these CLIs look — and helps register the MCP servers those
plugins bundle: Codex reads $MSU_OPENAPI_KEY from the environment at runtime,
while Gemini and Kimi need the key exported when the server is registered. See
the next section for fully manual MCP setup.
The remote command tracks protected main, which is the release in this
repository. Pin or inspect the source before running it when reproducibility or
a stricter supply-chain policy is required.
MCP Configuration
The maple-make skill expects the maple-lookup MCP tools to be available to
the agent. The server definition lives in
plugins/msu/.mcp.json — the single source of truth
for the server name and URL; the values below mirror it for manual setup.
Claude Code plugin users can skip this section — the msu plugin bundles
.mcp.json and prompts for the OpenAPI key when the plugin is enabled.
For every other channel, configure the remote maple-lookup MCP server
manually before first use.
First issue an MSU Builder OpenAPI Key, then keep it in a local environment variable or private agent config. Do not paste the key into chat or commit it to the repository.
export MSU_OPENAPI_KEY=""
MCP server values:
- Name:
maple-lookup - URL:
https://openapi.msu.io/v1rc1/resource/mcp - Transport: HTTP / streamable HTTP
- Header:
x-nxopen-api-key:
Claude Code (installed via skills CLI, without the plugin)
claude mcp add --transport http --header "x-nxopen-api-key: $MSU_OPENAPI_KEY" \
maple-lookup https://openapi.msu.io/v1rc1/resource/mcp
Codex CLI (.codex/config.toml or ~/.codex/config.toml)
Add the MCP server to your project config or user config:
[mcp_servers.maple-lookup]
url = "https://openapi.msu.io/v1rc1/resource/mcp"
env_http_headers = { "x-nxopen-api-key" = "MSU_OPENAPI_KEY" }
Cursor (.cursor/mcp.json or ~/.cursor/mcp.json)
{
"mcpServers": {
"maple-lookup": {
"url": "https://openapi.msu.io/v1rc1/resource/mcp",
"headers": {
"x-nxopen-api-key": "${env:MSU_OPENAPI_KEY}"
}
}
}
}
Gemini CLI
gemini mcp add --transport http --header "x-nxopen-api-key: $MSU_OPENAPI_KEY" \
maple-lookup https://openapi.msu.io/v1rc1/resource/mcp
Kimi CLI
kimi mcp add --transport http --header "x-nxopen-api-key: $MSU_OPENAPI_KEY" \
maple-lookup https://openapi.msu.io/v1rc1/resource/mcp
Official MCP setup docs: Claude Code, Codex CLI, Cursor, Gemini CLI, Kimi CLI.
Skills
| Plugin | Skill | Description |
|---|---|---|
msu |
maple-make |
MapleStory Universe game prototyping with Maple asset lookup and sprite rendering guidance |
msu |
maple-preview |
A local page for choosing between candidate Maple assets by eye — icons, animated sprites, and an outfit worn on a character |
game-tools |
audio-check |
Sound settings and playback across browsers — first-gesture unlock, iOS ringer switch and volume, formats, embeds, hidden tabs — checked and fixed, or set up when asked |
game-tools |
balance-tuning |
Difficulty and progression curves, session pacing, option trade-offs, reward economies |
game-tools |
cross-device-check |
UI and interaction across viewports, aspect ratios, pixel densities, orientations, inputs |
game-tools |
debug-visualization |
Live in-game debug/tuning panel shipped with every web game — builders tune values themselves and paste the result back |
game-tools |
determinism-audit |
Nondeterministic behaviour and flaky execution — randomness, timing, ordering, numeric drift |
game-tools |
game-feel |
Input and movement feel — coyote time, jump buffering, variable jump, gravity shaping, corner correction, acceleration, action buffering, hurtboxes — audited and proposed, applied on confirmation |
game-tools |
game-tutorial |
First-time-player onboarding: what to teach, when, and how to verify it |
game-tools |
i18n-setup |
Localization: string extraction, locale catalogs, fallback, plurals, glyphs, safe layouts |
msu-statusline |
msu-statusline-install |
Puts the newest MSU Builder notice under your prompt as a clickable link, wrapping any status line you already use |
msu-statusline |
msu-statusline-config |
Turns status-line segments on and off and sets the polling interval, label, and title width |
msu-statusline |
msu-statusline-uninstall |
Takes the line back out, restores the status line you had before it, and uninstalls the plugin when that is what you meant |
Any row above installs on its own with
npx skills add NEXPACE-Limited/msu-skills --skill . The msu-statusline
rows are the exception worth knowing: a status line is a Claude Code concept, so those
skills install on every channel but only do anything on the Claude Code one.
MCP Requirement
The target agent environment must have the maple-lookup MCP server configured
with the URL and OpenAPI key header above. The Claude Code plugin channel
registers this configuration automatically; every other channel documents the
setup here for manual configuration.
Repository Layout
.claude-plugin/marketplace.json # the catalog — lists every plugin below
plugins/msu/ # the msu plugin
.claude-plugin/plugin.json # manifest: name, version, OpenAPI key prompt
.mcp.json # maple-lookup MCP server definition
skills/ # the only source of truth (Agent Skills open standard)
plugins/game-tools/ # the game-tools plugin — no manifest key, no MCP server
.claude-plugin/plugin.json
skills/
plugins/msu-statusline/ # the msu-statusline plugin — no manifest key, no MCP server
.claude-plugin/plugin.json
scripts/ # the status line itself, run by Claude Code, not by an agent
tests/ # parser checks against a captured page; no network
skills/
install.sh # manual installer for Codex / Gemini / Kimi
web/ # the landing page — a Next.js app built from the files above
Each plugin owns a directory under plugins/ so that its skills, MCP servers,
and credential prompts stay its own. Installing one plugin never brings in
another’s configuration.
Try It
After installing the Skill and connecting Resource MCP, ask your AI agent to use MapleStory Universe resources while building a game.
Example prompt:
Please build a web view featuring three moving Orange Mushrooms.
Contributing
Have a skill worth publishing here? CONTRIBUTING.md covers where the file goes, which plugin it belongs in, how to write it, and how to open the pull request.
Important Notes
- MSU Resource Skills are reference instructions for using MSU game resources supplied through the MSU Open API. They do not provide the resources, operate your AI agent, or generate outputs themselves.
- Use of MSU Resource Skills, Resource MCP, and the MSU Open API is subject to the MSU API Terms, Builder Terms, EULA, applicable policies, and applicable laws.
- AI-generated outputs may be inaccurate, incomplete, non-compliant, or infringing. Review, test, and validate generated code, resource selections, API calls, and final app behavior before use.
- Keep MSU Builder OpenAPI keys, MCP connections, wallet or account access, and user data secure. Do not expose credentials in prompts, logs, repositories, or untrusted tools.
- Do not redistribute, resell, sublicense, reverse engineer, extract, scrape, or use Resource Skills or accessed MSU resources to train, fine-tune, develop, improve, or benchmark AI or machine-learning models or competing services, except as expressly permitted.
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add nexpace-limited/msu-skills