GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者による説明(英語の原文)
Generate LPC pixel-art character spritesheets and export them to Godot, Unity and the web.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
LPC_OUTPUT_DIR, LPC_LANG必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"lpc-character": {
"command": "uvx",
"args": [
"lpc-character-mcp"
],
"env": {
"LPC_OUTPUT_DIR": "your-value",
"LPC_LANG": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add lpc-character --env LPC_OUTPUT_DIR=your-value --env LPC_LANG=your-value -- uvx lpc-character-mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"lpc-character": {
"command": "uvx",
"args": [
"lpc-character-mcp"
],
"env": {
"LPC_OUTPUT_DIR": "your-value",
"LPC_LANG": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"lpc-character": {
"type": "stdio",
"command": "uvx",
"args": [
"lpc-character-mcp"
],
"env": {
"LPC_OUTPUT_DIR": "your-value",
"LPC_LANG": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
LPC_OUTPUT_DIR envLPC_LANG envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月10日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント kyuza1 で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.5.0)がレジストリに届いたのは42 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:GitHub, Desktop Commander, Cloudflare MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
*English · Português*
An MCP server that builds LPC pixel-art character spritesheets — the same parts as the Universal LPC Spritesheet Character Generator — and exports them ready for Godot, Unity and the web (Phaser/PixiJS).
Ask in plain language ("make a tanned blacksmith with a leather apron and a hammer") and your assistant assembles the character, shows an animated preview in the chat and saves the files.
*Every character above was generated by this MCP — themed ones (knight, viking, wizard, skeleton, orc, legionary, pirate, king...) and random ones.*
The in-chat preview (preview_character) is an animated GIF — here a blacksmith hammering:
You need [uv](https://docs.astral.sh/uv/getting-started/installation/) and Git. uv fetches the right Python and the package by itself — nothing to clone, no dependencies to install.
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"curl -LsSf https://astral.sh/uv/install.sh | sh uvx lpc-character-mcp --setup
uvx lpc-character-mcp.To run the latest code straight from GitHub, replace uvx lpc-character-mcp with uvx --from git+https://github.com/kyuza1/lpc-character-mcp lpc-character-mcp in any example.
Characters are saved to ~/lpc-characters (on Windows, C:\Users\ \lpc-characters). Set LPC_OUTPUT_DIR to change it — for example, to your Godot/Unity sprites folder. lpc-character-mcp --where prints every folder in use. Messages are in English; set LPC_LANG=pt for Portuguese.
claude mcp add lpc --scope user -- uvx lpc-character-mcp
One click: download lpc-character-mcp.mcpb from the latest release and open it (or drag it into Settings → Extensions). You can pick the output folder and language during install.
Or add it by hand in Settings → Developer → Edit config (claude_desktop_config.json):
{
"mcpServers": { "lpc": { "command": "uvx", "args": ["lpc-character-mcp"] } } }
codex mcp add lpc -- uvx lpc-character-mcp
Or edit ~/.codex/config.toml (on Windows, %USERPROFILE%\.codex\config.toml):
[mcp_servers.lpc]
command = "uvx" args = ["lpc-character-mcp"] startup_timeout_sec = 60
Check with `codex mcp list`. The same file is used by the Codex VS Code extension.
In the agent panel click … → MCP Servers → Manage MCP Servers → View raw config and add to mcp_config.json (~/.gemini/config/mcp_config.json; on Windows, %USERPROFILE%\.gemini\config\mcp_config.json):
{
"mcpServers": { "lpc": { "command": "uvx", "args": ["lpc-character-mcp"] } } }
Save and click **Refresh** on the MCP Servers page. In the Antigravity CLI, use `/mcp`.
Listed on Smithery, Glama and the official MCP Registry as io.github.kyuza1/lpc-character-mcp, which clients and directories that read the registry pick up automatically.
Any client that runs stdio servers works with the same uvx lpc-character-mcp command.
pip install lpc-character-mcp
lpc-character-mcp --setup
Then register the `lpc-character-mcp` command (no arguments) in your assistant.
lpc-character-mcp --clear-cache deletes cached images (--clear-cache 30 only those unused for 30 days).uvx lpc-character-mcp@latest --versionwhere uvx on Windows, which uvx elsewhere).| Tool | What it does |
|---|---|
generate_character(items, body_type, animations, filename, layout, split, export, prefer_complete, output_dir) | Builds the PNG, the credits, the animation report and (optionally) engine files |
preview_character(items, body_type, animation, animated) | In-chat preview: animated GIF with the 4 directions |
search_items(query, category, body_type, animation, type_name, complete_only) | Searches items with filters; complete items first |
get_item(item_id) | Colors, variants, multi-color parts and the animations available per body |
list_categories | Lists item categories |
random_character(body_type, seed, fixed_items) | Rolls a random character |
generate_batch(count, body_types, seed, prefix, fixed_items, ..., output_dir) | Generates many random NPCs at once |
from_site_url(url) / to_site_url(items, body_type) | Reads / builds generator site links (including old links); from_site_url also takes the site's "Export to Clipboard (JSON)" |
update_definitions(clear_image_cache) | Pulls new items and palettes from the official repository |
clear_cache(older_than_days, dry_run) | Deletes cached images (or only those unused for N days) |
Example items:
[
{"id": "body/body", "color": "bronze"}, {"id": "head/heads/human/heads_human_male"}, {"id": "hair/short/hair_plain", "color": "dark_brown"}, {"id": "torso/shirts/longsleeve/torso_clothes_longsleeve", "color": "white"}, {"id": "torso/aprons/torso_aprons_overalls", "variant": "leather"}, {"id": "legs/pants/legs_cuffed", "color": "white"}, {"id": "feet/boots/feet_boots_basic", "color": "brown"}, {"id": "tools/tool_hammer", "color": ["steel", "walnut"]} ]
"color": "blonde" — one color (see colors in get_item)."color": ["steel", "walnut"] — multi-part items (head and handle, armor and belt...). Parts are listed in color_parts from get_item; null keeps a part's default.warnings).output_dir saves straight into a folder — e.g. your game's sprites folder: "generate the blacksmith in C:/my-game/art/npcs and export for Godot". Otherwise files go to LPC_OUTPUT_DIR or ~/lpc-characters.
layout: "standard" (default) — same as the site: 832px wide, every animation always on the same row (walk at y=512, slash at y=768...). Oversized animations go below y=3456.layout: "compact" — only the requested animations, stacked.split — also saves pieces: "animation" (one PNG per animation), "frame" (one PNG per frame in _frames/ / _NN.png) and/or "item" (one sheet per item, for swapping outfits in-game). Accepts a list: ["animation", "frame"].Big weapons and tools (swords, spears, hammer, axe, bow...) use 128 or 192px frames. They are added automatically when their base animation is requested (asking for slash with the hammer also produces tool_hammer).
Not every LPC item has art for all 15 animations (e.g. the apron has no idle, run, jump...). In those animations the item simply disappears. To avoid surprises:
generate_character always returns animation_check: "animation_check": {
"complete": false, "incomplete_items": { "torso/aprons/torso_aprons_apron": { "missing": ["climb", "idle", "jump", "sit", "emote", "run", ...], "complete_alternatives": ["torso/aprons/torso_aprons_overalls", ...] } }, "summary": "ATENÇÃO: nem todas as animações ficaram completas: Apron não tem ..." }
The preview, batches and the web demo warn too.
replaced. The assistant is told to ask you first.search_items lists them first, shows missing_animations for the others and accepts complete_only: true. get_item shows what is missing and suggests complete_alternatives.Not counted as missing: face, nose, beard, glasses and necklaces in climb (the character faces away), expressions in hurt, weapons/tools/shields — which by nature only appear in their own animations (listed in equipment_only_in) — and animations the body itself lacks (listed in body_missing).
LPC art comes under several licenses. For stores with DRM (Steam, App Store...) only CC0 and OGA-BY art is safe. Pass licenses: ["CC0", "OGA-BY"] to search_items, random_character, generate_batch or generate_character to stick to them — every art part of the chosen body must offer one of those licenses (stricter than the site, which accepts an item if any part does). Every result also has license_check:
"license_check": {"drm_safe": true, "share_alike_required": false, "summary": "..."}
Pass export to generate_character (you can combine them). Animations play in the same frame order as the official generator (walk skips the standing frame, idle/sit/emote hold frames...), and the site's extra animations are included: 1h_slash (one-handed slash) and watering (with the watering can). zip: true packs everything into .zip.
export | Files | How to use |
|---|---|---|
"godot" | .tres (SpriteFrames) | Generate with output_dir inside your project (the res:// path is filled in automatically) or copy .png and .tres to res://characters/. Use the .tres as Sprite Frames of an AnimatedSprite2D. Animations: walk_down, idle_left, tool_hammer_right... Tested on Godot 4.6. |
| "unity" | .png.meta, .controller + _unity_anims/*.anim | Generate with output_dir inside Assets/ (or copy everything there). Sprites come pre-sliced (Multiple, Point filter, no compression) and the .controller has one state per animation (starts at idle_down): put it in the Animator of a SpriteRenderer object and call `animator.Play("wal
冒頭だけを表示しています。続きはリポジトリで読めます