satk
Provides tools for headless Blender import, render, and export of GTA San Andreas models and scenes, enabling automated model processing and conversion.
Integrates with Multi Theft Auto (MTA) to export maps and models, and supports building the MTA engine fork.
Locates GTA San Andreas installations via Steam libraries, supporting Steam versions of the game.
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., "@satkfind the Infernus model and show where it's placed on the map"
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.
satk — San Andreas ToolKit
Status: public preview (0.4.0). satk works and its checks pass, but commands, answers and file layouts may still change before 1.0. Bug reports and ideas are welcome on the Issues page.
satk is a toolkit for GTA San Andreas (PC) modders, reverse engineers and people who debug the game. It indexes your
game and lets you, or an AI assistant, find and inspect models, textures, map placements and crash addresses, build
texture and model mods, register add-on cars, peds and weapons, tune handling, write CLEO scripts, generate
collision, shrink textures, check mods for errors and conflicts, and convert maps. New in 0.4.0: asset authoring
through design, form, composition, detail, surface and finish gates, with rounded form tools, an inventory of
required parts, close-up previews and checks backed by independent review beside vanilla peers. The
AI asset pipeline explains how to repeat the method with your own agents. It is one
Python package with one command, satk, and one MCP server, also satk: both run the same operations and give
the same answers.
Security and privacy
Your game is only read. The game folder, the clean copy and the source clones are write-protected; satk writes only into its own
workfolder (indexes, caches, pictures, exports, logs).No network, no telemetry. satk opens no internet connections by itself; downloads happen only in commands you run on purpose (dependency setup,
satk engine setup,satk dev release).satk doctorshows it as a check.Bug reports stay local:
satk bug-reportwrites a redacted file on your computer and sends nothing.With a cloud AI assistant, what satk answers goes to that assistant's provider as part of the conversation; a fully local setup sends nothing. Details: docs/en/ai.md.
Related MCP server: ModWrench MCP Server
Works without AI
Every operation is a terminal command with readable tables: satk asset find, satk texture image,
satk crash analyze, satk mod conflicts, and so on. satk help shows the main tasks, satk help --all every
command, and satk catalog build makes an offline web page of all models, textures and zones. An AI assistant is an
option on top: satk mcp config --client <name> connects Claude Code, Codex, Cursor, VS Code, LM Studio and others.
Install in three steps
You need 64-bit Windows 10/11 and any GTA San Andreas (PC) folder: 1.0 US, Steam, with or without mods.
Get satk. The portable zip
satk-<version>-win64.zipfrom the Releases page needs no Python and no admin rights: unpack it into your own folder and double-clickStart satk.cmd. From a git checkout: clone github.com/qxlies/satk-gta into a folder namedtoolsand runscripts\bootstrap.ps1 -Deps, which creates a Python 3.12+ venv. The Releases page also has the wheelsatk_gta-<version>-py3-none-any.whl(not on PyPI yet) andSHA256SUMS.txtto check the downloads.Point it at your game:
satk initfinds the game itself (registry, Steam libraries, usual folders) or takes--game <folder>, and writessatk.toml.Index the game:
satk index build, then trysatk asset find infernusorsatk help.
git clone https://github.com/qxlies/satk-gta.git tools
powershell -ExecutionPolicy Bypass -File tools\scripts\bootstrap.ps1 -Deps
tools\satk.cmd init --game "<folder with gta_sa.exe>"
tools\satk.cmd index buildEverything about installing (zip, git, Python package, where work lives, Windows blocking unsigned files):
docs/en/install.md. From zero to the first screenshot: docs/en/quickstart.md.
What is inside
Commands | What they do | Page |
| verify, protect and reproduce a clean game copy | |
| parsers of IMG, DFF, TXD, COL, IDE, IPL, IFP, ZON, DAT | |
| SQLite index of all assets and placements: search, references, SQL | |
| texture sheets, the top-down map, GPU-free model previews, export to glTF/OBJ | |
| texture mods, DFF/COL/IMG writing without Blender | |
| mod checks, what a mod changes, Mod Loader conflicts, free model ids | |
| add-on vehicles, peds, weapons and objects as Mod Loader folders; handling and weapon data: read, explain, patch | |
| collision generated from models, collision checks; 2dEffect lights, particles and entry points as JSON | |
| smaller TXDs, a texture audit, the streaming memory budget | |
| CLEO and SCM scripts: disassemble, assemble, check, templates; MTA Lua and SA-MP Pawn API lookup | |
| one operation over many files, saved multi-step checks | |
| IFP animations: list, edit as JSON, write, merge into | |
| game text, zones, water, the time cycle, population and radar tiles: read, edit, write as Mod Loader folders | |
| the engine limits your game and mods need, with limit adjuster settings | |
|
| |
| MTA:SA resources: Lua lint with the server's own messages, starter resources, model packs, logs; shaders for world textures | |
| SA-MP/MTA/IPL map conversion, binary IPL, vehicle and ped paths | |
| crash dumps and logs, | |
| a viewer with a camera, frames with numbered objects, "what is this object" | |
| your own models, vehicles and peds next to the map in the viewer, reloaded when the files change | |
| a mod in the real game on the MTA fork: test spots, behaviour checks against vanilla with frames, hot reload | |
|
| |
| headless Blender import/render/export to MTA; build of the MTA fork | |
| San Andreas style guidance and class references; model and texture defects, coverage and strict completion | |
| new cars, props, buildings and other assets in a live Blender session: templates, blanks, generators, a game-like preview, export | |
| a third-party model brought to San Andreas scale, detail and textures; procedural SA-style textures | |
| overview, diagnostics with fixes, help, the MCP server |
Every page, by task: docs/en/README.md.
Some parts need tools that are not in the release zip: the viewer (an Ariane fork) for satk view, Blender 5.1 for
the Blender and authoring commands, the MTA fork for satk ingame and satk mta server-check (its client needs a
one-time administrator setup), and the Visual Studio C++ build tools to build satk_sp.asi. Everything else works
with the zip and your game folder.
Documentation
User guide: docs/en/README.md (Russian mirror: docs/ru/README.md), common tasks: docs/en/workflows.md, problems: docs/en/troubleshooting.md.
For AI agents: docs/agent/SKILL.md (installed as the
satkskill), docs/agent/workflows.md, docs/agent/errors.md and the generated tool reference docs/agent/tools.md.
Development
How to work on satk (setup, one worktree per task, tests, rules): CLAUDE.md, the contributor guide
for people and AI agents. The acceptance check before a merge is satk dev gate; the tests alone:
python -m pytest -q -p no:cacheprovider in the venv.
Acknowledgements
A special thank-you to Dryxio. His open projects are the foundation of a large part
of satk and of our research into the game and its engine: the satk viewer is a fork of his Ariane, satk paths runs
his gta-flow core, satk describe imports the gta-scout model descriptions, satk kb reads his plugin-sdk-sa and
cleo-ai, and his MTA Neon fork is where we learned how the engine works. Thank you! His GTA projects:
ariane: a modern map editor for GTA III, Vice City and San Andreas; the viewer of
satk viewis a local fork of it.mtasa-neon: an experimental MTA:SA engine fork with larger worlds, raised limits and new Lua features; studied in depth, the donor of our engine fork.
gta-scout: GTA-style models and scenes with AI and Blender;
satk describe importimports its model descriptions.gta-flow: traffic routes with AI and Blender; its core is vendored for
satk paths.plugin-sdk-sa: the Plugin SDK with extra layout fixes; read by
satk kbandsatk re.cleo-ai: CLEO modding with AI; its opcode reference feeds
satk kb opcode.reagent: AI reconstruction and validation of C/C++ code from binaries; studied when we designed
satk re.ghidra-bridge: AI access to Ghidra's analysis; the model for the agent-facing design of
satk re.samp-source: a byte-for-byte rebuild of SA-MP 0.3.7 R5; studied for our multiplayer research.
samp-r5-rebuild: the earlier from-scratch rebuild of the SA-MP 0.3.7-R5 client DLL.
wiki.mtasa-neon.com: the Neon documentation, based on the MTA wiki.
skygfx: his SkyGfx fork, the source of the MTA bridge that Neon builds.
gta-reversed: his fork of the gta_sa.exe reimplementation.
mtasa-blue: his fork of Multi Theft Auto (he also sends fixes upstream).
library: his fork of the Sanny Builder Library.
fastman92_limit_adjuster: his fork of the fastman92 Limit Adjuster source.
GTA-GPS-Redux: his fork of a GPS mod for San Andreas.
Radar-in-style-GTA-SA-The-Definitive-Edition: his fork of a Definitive Edition style radar.
dryxio: his profile with the list of projects.
gtastuff.com: 40+ browser tools for GTA modding, and Ariane's home page.
His other public projects are not about GTA: DockDrop, tamago-life, openclaw-lullabully and ppp-rescue.
Thanks also to the projects satk builds on or learned from:
gta-reversed (gta-reversed contributors): the reimplementation of gta_sa.exe 1.0 US; its function map is the backbone of
satk reandsatk kb.Plugin-SDK (DK22Pac and contributors, Zlib): class layouts and addresses.
Multi Theft Auto (the MTA team, GPL-3.0): the base of our engine fork, and the MTA wiki.
librw (MIT) and librwgta with euryopa (aap): the RenderWare reference behind
satk rwand the base of Ariane, which builds with the Southland-FR librw fork.DragonFF (Parik and contributors, GPL-3.0): DFF and COL in Blender for
satk blender.rwfury (Hancapo, MIT): vendored in
vendor/rwfury.CrashInfo (Junior_Djjr, MIT): the crash list in
data/crashlist.Mod Loader (LINK/2012, MIT): its loading rules are ported into
satk mod.Sanny Builder Library: the opcode data behind
satk kb opcode.Ghidra (NSA, Apache-2.0): function bounds for
satk re.GTAMods wiki (CC BY 4.0): file format and engine descriptions.
INU Tools and INU Check (INU, GPL-3.0): studied; INU Check is an optional engine of
satk mod check.SilentPatch (Silent), the Open Limit Adjuster, the fastman92 Limit Adjuster, Project2DFX (ThirteenAG) and SkyGfx (aap): engine mods whose patches and limits we cross-check.
open.mp (MPL-2.0): custom model ranges for
satk id; with the SA-MP reconstruction (dashr9230), Slipe Server and GameNetworkingSockets, part of our multiplayer research.Blender, Python, Pillow, numpy, the MCP Python SDK and pytest.
Licence notices of the code and data satk ships: NOTICE.md. Every source we used, grouped by topic and with notes: docs/en/credits.md.
License
MIT (LICENSE). The exception is the Blender add-on blender/satk_blender (GPL-3.0-or-later, its own
LICENSE). Third-party components and their notices: NOTICE.md.
This server cannot be deployed
Maintenance
Related MCP Connectors
Nifra docs, runnable examples, and API types as an MCP server for any AI assistant.
Savecraft serves real save game data and expert game knowledge to AI assistants.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceA Model Context Protocol server that gives AI assistants native access to Minecraft mod development tools — decompile, remap, search, and analyze Minecraft source code directly from your AI workflow.94 npm42MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to search, browse, and manage mods across Nexus Mods, mod.io, Thunderstore, and Modrinth, as well as perform local diagnostics like detecting games and parsing crash logs.MIT
- AlicenseNot gradedqualityCmaintenanceEnables natural-language-driven Arma Reforger modding, including API research, code generation, project scaffolding, Workbench control, and in-editor testing.52 npm1MIT
- AlicenseAqualityBmaintenanceEnables AI coding agents to build and audit Garry's Mod GLua addons with source-aware search, static linting, net security vulnerability scanning, performance profiling, and headless testing.9211 npmMIT