Lutris MCP Server
lutris-mcp
MCP server for managing your Lutris game library. Gives AI assistants direct access to browse, search, organize, launch, and install games in your Linux gaming collection.
Examples
Here are some things you can ask your AI assistant once this server is connected:
"What games do I have installed?"
"Show me my most played games"
"Search my Steam library for Hades"
"Launch Balatro"
"Install this game from
/path/to/setup.exe""Add all my roguelike games to a 'Roguelike' category"
"Are there any duplicate games in my library?"
"Show me the log for my last Hades II session"
"Export my installed games as JSON"
"Set the cover art for Timberborn from this image"
Installation
Quick Start (npx)
No install needed — just add to your MCP client config:
{
"mcpServers": {
"lutris": {
"command": "npx",
"args": ["-y", "lutris-mcp"]
}
}
}Global Install
npm install -g lutris-mcpThen configure your MCP client:
{
"mcpServers": {
"lutris": {
"command": "lutris-mcp"
}
}
}From Source
git clone https://github.com/Praeses0/lutris-mcp.git
cd lutris-mcp
npm install
npm run build{
"mcpServers": {
"lutris": {
"command": "node",
"args": ["/path/to/lutris-mcp/dist/index.js"]
}
}
}Requirements
Lutris installed and set up
Node.js 20+
Tools
Library
Tool | Description |
| List and filter games with pagination, sorting, and smart search |
| Get full game details including categories, config, and media paths |
| Add a new game to the library |
| Update fields on an existing game |
| Remove a game from the database (does not delete files) |
| Aggregate stats: totals, playtime, breakdowns by runner/platform/service |
| Find potential duplicate games (same directory or similar slugs) |
| Export full library as JSON with optional filters (category, runner, installed) |
Categories
Tool | Description |
| List all categories with game counts |
| Create a new category |
| Add a game to a category |
| Remove a game from a category |
| Add multiple games to a category at once |
Services
Tool | Description |
| Search games synced from Steam, GOG, etc. |
| Import a service game into your Lutris library |
Launch & Install
Tool | Description |
| Launch an installed game via Lutris |
| Install a game from a Lutris installer slug or local setup executable |
| Check if a game is currently running (multi-strategy detection) |
Configuration
Tool | Description |
| Read a game's YAML configuration file |
| Update or create a game's YAML configuration (deep-merged) |
Media
Tool | Description |
| Set a game's cover art, banner, or icon from a local file |
| Get all media paths for a game with existence check |
System
Tool | Description |
| List available Lutris runners or Wine versions |
| Read the last launch log for a game (for troubleshooting) |
Bulk Operations
Tool | Description |
| Update a field on multiple games at once |
Environment Variables
Variable | Default | Description |
|
| Path to Lutris SQLite database |
|
| Path to game YAML configs |
|
| Path to Lutris data directory (media, logs) |
Development
npm install # install dependencies
npm run build # compile TypeScript
npm test # run tests (219 tests)
npm run dev # run with tsx (hot reload)License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Praeses0/lutris-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server