About
MCP server for Pyxel, a retro game engine for Python
Security Report
This MCP server provides a well-architected tool for observing Pyxel game engine programs through headless execution. The code demonstrates strong input validation, comprehensive error handling, and appropriate use of subprocess isolation for untrusted scripts. Permissions (file I/O, subprocess execution, environment variables) align well with the stated purpose of running local Python game scripts. Minor code quality observations exist around broad exception handling and logging practices, but these do not introduce security vulnerabilities. Supply chain analysis found 10 known vulnerabilities in dependencies (1 critical, 6 high severity). Package verification found 1 issue.
4 files analyzed · 15 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-kitao-pyxel-mcp": {
"args": [
"pyxel-mcp"
],
"command": "uvx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
pyxel-mcp
An MCP server for observing programs built with Pyxel. It runs trusted local scripts headlessly and returns structured state, pixels, assets, audio, and frame differences.
The server deliberately reports facts rather than a universal quality score. The agent using it chooses the checks that matter for the game.
Install
With Claude Code:
claude mcp add pyxel -- uvx pyxel-mcp
For another MCP client, run uvx pyxel-mcp install or add:
{
"mcpServers": {
"pyxel": {
"command": "uvx",
"args": ["pyxel-mcp"]
}
}
}
Restart the client after changing its configuration. The server writes this diagnostic to stderr:
[pyxel-mcp] starting - 8 tools
Python 3.11+ is required, and Pyxel >= 2.9.6 is installed as a dependency. Script tools execute local Python in subprocesses to isolate Pyxel state, but they do not sandbox untrusted code. See SECURITY.md.
Tools
Every script argument is a file path, not Python source.
| Tool | Returns |
|---|---|
validate | Syntax errors and recognizable Pyxel code patterns. |
run | Headless frames, scheduled input, logs, and state, screen_image, screen_grid, or video snapshots. |
pyxel_info | Installed versions, paths, examples, and resource URIs. |
read_palette | Palette colors and image-bank indices in use. |
read_image | Image-bank pixels and an optional PNG render. |
read_tilemap | Tile coordinates, source bank, usage counts, bounds, and an optional render. |
read_audio | A rendered sound or music WAV plus measurable audio data. |
diff_frames | Pixel differences between two PNG files. |
All tools declare input and output schemas. Every result includes ok and errors.
Example
Capture state and the screen when a condition first becomes true:
{
"script": "/absolute/path/game.py",
"frames": 600,
"until": "score >= 1",
"snapshots": [
{"kind": "state", "frame": "end", "attrs": ["score", "player.x"]},
{"kind": "screen_image", "frame": "end", "output": "/tmp/goal.png"}
]
}
Use absolute artifact paths. Read log even when ok is true, and inspect captured images directly when appearance matters.
Resources
pyxel://run-snapshots-schema— completerun.snapshotsgrammar.pyxel://validation-patterns— categories reported byvalidate.pyxel://palette/default— default palette table.pyxel://examples/{name}— source for an example bundled with the installed Pyxel package; discover names withpyxel_info.
Full game-building guidance lives in the separate pyxel-skill project; this package contains only the MCP server.
Update
uvx caches packages. Force a refresh with:
uvx --refresh-package pyxel-mcp pyxel-mcp install
Troubleshooting
- If tools do not appear, look for the
starting - 8 toolsdiagnostic and restart the client. - If
runfails, inspecterrors,exit_status, andlog. - If a validation category is unfamiliar, read
pyxel://validation-patterns.
MCP Registry
mcp-name: io.github.kitao/pyxel-mcp
License
MIT — see LICENSE.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
