ck3agent
Integrates with Crusader Kings III by reading and writing the game's memory to expose state to an AI agent. It enables controlling rulers, setting strategies, observing campaigns, playing against AI-controlled rivals, and running unattended sessions, with the game's own AI executing actions.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ck3agentTake the Byzantine emperor and play toward a Mediterranean empire"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ck3agent
Let Claude play Crusader Kings III. A library loaded into the game exposes its state to Claude through MCP, the protocol Claude uses to call tools. Claude sets a ruler's strategy. The game's own AI carries it out.
What you get
Watch Claude rule. Load an observer save; Claude takes a ruler, plays it and explains each move. You interrupt and redirect it in plain language.
Play against Claude. Load your own campaign; Claude takes a rival or a neighbour while you keep playing your character. Claude can never take your character.
Run it unattended.
ck3agent runplays a goal for N cycles and records a transcript and a manifest.Several rulers at once. One Claude, one session, one posture per ruler; the same game clock.
Related MCP server: civ6-mcp
What you need
Linux x86_64 with glibc 2.34 or newer: Ubuntu 22.04 or later, Debian 12 or later, Fedora (tested on 44), Arch.
Crusader Kings III 1.18.3.1, the native Linux build from Steam.
Python 3.11 or newer.
Claude Code and a Claude plan or API key. Every round of play (a cycle: observe, decide, act, let a game month pass) is a paid model call, about $0.20 to $2 at API prices depending on how much Claude reads; an evening of play is a few dollars, and a subscription plan counts it against your usage limit.
Will it work for me?
You have | Works? |
Linux, native Steam package, CK3 1.18.3.1 | Yes |
CK3 updated past 1.18.3.1 | Not until a matching release. See Your game updated. |
Flatpak or Snap Steam | No. See troubleshooting. |
Steam Deck | Untested. |
Windows or macOS | Not yet. See the port plan. |
Ironman, achievements, multiplayer | No. Single-player, non-Ironman saves only. |
Install
sha256sum -c SHA256SUMS --ignore-missing # in the download directory
tar xzf ck3agent-2026.10.0-linux-x86_64.tar.gz && cd ck3agent-2026.10.0-linux-x86_64
./install.sh # installs the bridge and the ck3agent commandBefore you launch: have a non-Ironman single-player save ready, and copy any
campaign you care about out of ~/.local/share/Paradox Interactive/Crusader Kings III/save games/. ck3agent never writes into the game folder, but once
the clock runs the game's own autosave rotation does. Claude cannot play your
character: use an observer save (start a new game, choose Observe, save),
or let Claude take an AI ruler in your own campaign.
Getting started covers both.
ck3agent launch --continue # loads the save CK3 played last; --save PATH loads a specific one
cd ~/ck3agent-play && claudeDocumentation
Page | For |
install, launch, choose the ruler, first session | |
interactive play, time and cost, stopping | |
Desktop instead of Claude Code | |
unattended runs with a recorded manifest | |
symptom, then fix | |
reference, research, architecture, glossary |
Help and contributing
Something broke: troubleshooting, then an
issue; the forms ask
for ck3agent doctor output. Questions and show-and-tell:
Discussions. Security
problems: SECURITY.md, never a public issue.
Contributions are welcome under the DCO: CONTRIBUTING.md, CODE_OF_CONDUCT.md. Windows and macOS: port plan. Built on Zydis, RapidJSON, stb_image and the MCP Python SDK (THIRD_PARTY_LICENSES.md).
Status and license
Alpha, versioned by date (CHANGELOG.md). Each release supports one game build and refuses all others. Code Apache-2.0, docs CC BY 4.0, third party THIRD_PARTY_LICENSES.md, SECURITY.md, CITATION.cff.
Crusader Kings® and Paradox Interactive® are registered trademarks of Paradox
Interactive AB; Claude is a trademark of Anthropic, PBC. ck3agent is not
affiliated with or endorsed by either. It ships no game assets and no game
code beyond the short byte patterns in re/offsets/signatures.h that locate
functions at load; it works by reading and writing the memory of a copy of the
game you own, with offsets found by reverse engineering its Linux binary.
Paradox's EULA and Steam's terms are between you and them: single-player
only, never Ironman, achievement or multiplayer games.
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted Web Crawler MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Build, run and publish 3D games in the Zero engine from Claude Code, Cursor or Codex, over MCP.
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
Hosted X (Twitter) MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables Claude to access real-time Civilization VI game data for strategic analysis, diplomatic intelligence, military assessments, and more via MCP.215MIT
- AlicenseAqualityFmaintenanceAn MCP server that lets LLM agents play full games of Civilization VI. It connects to a running game and provides tools for unit movement, city management, diplomacy, and more, all through the game's rule-enforcing APIs.76220MIT
- AlicenseAqualityCmaintenanceEnables Claude to read Crusader Kings III save files and retrieve strategic game information such as realm overview, military, succession, diplomacy, vassals, factions, and expansion options.113MIT
- AlicenseAqualityCmaintenanceAn MCP server for Paradox Clausewitz/Jomini modding (EU5, EU4, Victoria 3, HOI4, CK3, Stellaris) that grounds AI assistants in the game's generated documentation and vanilla script tree, enabling accurate script lookup, parsing, and validation without running the game.133MIT