record
record 1-5 frames with 100-1000 ms delay between them
Let your agent see your Ebitengine game running — frames, logs and errors.
LABSCO SUMMARY
The server assembles your project and passes flags on launch that the embedded decorator picks up — the decorator executes the tool request and replies over a reverse connection, then closes. That is why an answer arrives with the application's own logs attached: the server appends them before handing the result back.
A Go MCP server that builds and launches your Ebitengine game, then captures what it does: frames from the running game plus build, launch and runtime output.
mcp.Wrap(NewGame()) inside ebiten.RunGameGo. Add the package with go get github.com/sedyh/ebitengine-mcp@v1.1.0, wrap your game, and register the server as go run github.com/sedyh/ebitengine-mcp/cmd/server@v1.1.0. DrawFinalScreen is supported; LayoutF is not.
One command — go run github.com/sedyh/ebitengine-mcp/cmd/server@v1.1.0
USE CASES
Capture a run of frames from the live game instead of describing what you saw.
Take several frames with a delay between them and compare what changed.
Build and launch output is captured too, so a crash at startup is visible.
One wrap call in ebiten.RunGame is the whole integration; nothing else in the project changes.
Listed in project code.
recordrecord 1-5 frames with 100-1000 ms delay between them
BEFORE YOU INSTALL
1 tool registered in the project's code.
All 3 documented clients run the server on your machine.
CONTEXT COST
Rated by the size of the one tool definition that rides along on every turn
INSTALLATION
go run github.com/sedyh/ebitengine-mcp/cmd/server@v1.1.0{
"mcpServers": {
"ebitengine-mcp": {
"command": "go run github.com/sedyh/ebitengine-mcp/cmd/server@v1.1.0"
}
}
}{
"servers": {
"ebitengine-mcp": {
"type": "stdio",
"command": "go",
"args": [
"run",
"github.com/sedyh/ebitengine-mcp/cmd/server@v1.1.0"
]
}
}
}{
"mcpServers": {
"ebitengine-mcp": {
"command": "go",
"args": [
"run",
"github.com/sedyh/ebitengine-mcp/cmd/server@v1.1.0"
]
}
}
}