# Cities2 MCP and Modding Toolkit

A local MCP server for Cities: Skylines II questions and mod projects. It gives agents searchable game references and tools for building mods.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 10
- Author: mayor-modder
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/mayor-modder/Cities2-MCP
- Updated: 2026-09-18
- HTML: https://affpapa.org/en/nevibecode/mcp/cities2-mcp-and-modding-toolkit

## What it does

The server lets an agent search a prepared Cities: Skylines II wiki, attributed research reports, and the encyclopedia extracted from a local game install. It can explain game systems, discuss update details, and return source context with its answers.

Five skills cover game knowledge, mod development, review, debugging, and release checks. Local workflow tools can generate C# or UI project skeletons, edit files in trusted workspaces, run builds and analyzers, and package the output. The bundle is aimed at CS2 mod projects.

The game encyclopedia needs a local installation and the file `Cities2_Data/Content/Game/Locale.cok` to be found. Mod and game locations are supplied through environment variables. A mod is not treated as ready to share until it has been playtested locally.

## Requirements
- Needs: Python and uv (commands run via uvx)
- Environment variables: `CITIES2_MODS_DIR`, `CITIES2_GAME_DIR`, `CITIES2_LOCALE_COK` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env CITIES2_MODS_DIR=<CITIES2_MODS_DIR> --env CITIES2_GAME_DIR=<CITIES2_GAME_DIR> --env CITIES2_LOCALE_COK=<CITIES2_LOCALE_COK> --transport stdio cities2-mcp-and-modding-toolkit -- uvx cities2-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from cities2-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add cities2-mcp-and-modding-toolkit --env CITIES2_MODS_DIR=<CITIES2_MODS_DIR> --env CITIES2_GAME_DIR=<CITIES2_GAME_DIR> --env CITIES2_LOCALE_COK=<CITIES2_LOCALE_COK> -- uvx cities2-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from cities2-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "cities2-mcp-and-modding-toolkit": {
            "command": "uvx",
            "args": [
                "cities2-mcp"
            ],
            "env": {
                "CITIES2_MODS_DIR": "<CITIES2_MODS_DIR>",
                "CITIES2_GAME_DIR": "<CITIES2_GAME_DIR>",
                "CITIES2_LOCALE_COK": "<CITIES2_LOCALE_COK>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from cities2-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "cities2-mcp-and-modding-toolkit": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "cities2-mcp"
            ],
            "env": {
                "CITIES2_MODS_DIR": "<CITIES2_MODS_DIR>",
                "CITIES2_GAME_DIR": "<CITIES2_GAME_DIR>",
                "CITIES2_LOCALE_COK": "<CITIES2_LOCALE_COK>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from cities2-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e CITIES2_MODS_DIR=<CITIES2_MODS_DIR> -e CITIES2_GAME_DIR=<CITIES2_GAME_DIR> -e CITIES2_LOCALE_COK=<CITIES2_LOCALE_COK> cities2-mcp-and-modding-toolkit uvx cities2-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from cities2-mcp <command>

## When to use it
- look up Cities: Skylines II game mechanics
- summarize patch and update changes
- scaffold a C# or UI mod project
- build and package mod output
- review a mod before sharing

## Example prompts
- Search the wiki for how public transport works in Cities: Skylines II.
- Create a C# mod skeleton in the configured workspace and run its build.
- Review this mod for packaging issues and release readiness.

## Similar
- [audio-setup-mixers](https://affpapa.org/en/nevibecode/skills/audio-setup-mixers.md) — skill · 3500 installs
- [generate-editor-search-query](https://affpapa.org/en/nevibecode/skills/generate-editor-search-query.md) — skill · 3400 installs
- [godot-csharp](https://affpapa.org/en/nevibecode/skills/godot-csharp.md) — skill · 6100 installs
- [minecraft-modding](https://affpapa.org/en/nevibecode/skills/minecraft-modding.md) — skill · 737 installs
- [reverse-engineering](https://affpapa.org/en/nevibecode/skills/rehan-remade-reverse-engineering.md) — skill · 1600 installs
- [mod-any-game](https://affpapa.org/en/nevibecode/skills/mod-any-game.md) — skill · 1600 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
