KotorMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| K1_PATH | No | Path to KOTOR 1 installation. Overrides automatic detection. | |
| K2_PATH | No | Path to KOTOR 2 installation. Overrides automatic detection. | |
| TSL_PATH | No | Alternative environment variable for KOTOR 2 (TSL) path. | |
| KOTOR_PATH | No | Alternative environment variable for KOTOR 1 path. | |
| KOTOR1_PATH | No | Alternative environment variable for KOTOR 1 path. | |
| KOTOR2_PATH | No | Alternative environment variable for KOTOR 2 path. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| detectInstallationsA | Use when you need to discover candidate K1/K2 installation paths (env vars and platform defaults). Read-only. |
| loadInstallationA | Use when you need to activate an installation in memory for subsequent tools. Read-only; does not modify disk. |
| openInstallationA | Build or reuse a compacted in-memory installation snapshot and return a handle for paged follow-up queries. Read-only; does not write to disk. |
| getInstallationSnapshotA | Page through a compacted in-memory installation snapshot created by openInstallation. Use includeData=true for compacted per-resource documents. |
| getInstallationGraphA | Page through canonical dependency edges extracted from an in-memory installation snapshot created by openInstallation. |
| kotor_installation_infoA | Use when you need installation summary: path, game, valid, errors, missing files, module/override counts. Loads installation if not cached. |
| listResourcesA | Use when exploring installation contents: list resources from override/modules/chitin with optional filters. Read-only. |
| describeResourceB | Use when you need a short summary of a resource (GFF, TLK, 2DA) using resolution order. Read-only. |
| kotor_find_resourceA | Use when you need the first match for a resref or to see all locations. Supports glob (e.g. 203tel*). Resolution order: Override -> MOD -> KEY/BIF. Read-only. |
| kotor_search_resourcesA | Use when you need to search resource names by regex. Paginated; prefer location/type filter on large installs. Read-only. |
| journalOverviewA | Use when you need a summary of global.jrl plot categories and entries for the installation. Read-only. |
| kotor_lookup_2daA | Use when you need to query a 2DA table by row index, column name, or value search. Read-only. |
| kotor_lookup_tlkA | Use when you need to resolve a strref to display text from dialog.tlk. Read-only. |
| kotor_list_archiveB | Use when you need to list contents of a KEY/BIF/RIM/ERF/MOD file with pagination. Read-only. |
| kotor_extract_resourceA | Use when you need to write a resolved resource to disk. Optional 'source' restricts to one location (OVERRIDE, CHITIN, MODULES). Writes to disk. [destructiveHint: writes to disk] |
| kotor_read_gffA | Use when you need the full GFF tree as JSON (DLG, UTC, ARE, etc.). Use field_paths or max_depth/max_fields to stay under response limits. Read-only. |
| kotor_read_2daB | Use when you need a 2DA table as JSON with optional row range and column filter. Read-only. |
| kotor_read_tlkA | Use when you need TLK (dialog.tlk) entries by strref range or text search. Read-only. |
| kotor_list_modulesA | Use when you need all modules with human-readable area names (from ARE + TalkTable). Read-only. |
| kotor_describe_moduleA | Use when you need full module analysis: ARE, LYT rooms, WOK list, resource counts, scripts. Read-only. |
| kotor_module_resourcesA | Use when you need a paginated list of all resources in a module (.rim + _s.rim + _dlg.erf). Read-only. |
| kotor_list_referencesB | Use when tracing what a resource references: list outbound refs (scripts, conversations, tags, template resrefs) by field path. Read-only. |
| kotor_find_referrersA | Use when you need to find which resources reference a script resref, tag, conversation, or resref. Use module_root to narrow; expensive over full install. Read-only. |
| kotor_find_strref_referrersA | Use when you need to find which resources use a TLK strref (TLK/2DA Find References parity). Read-only. |
| kotor_describe_dlgA | Use when you need DLG structure: entry/reply counts and script/condition refs. Read-only. |
| kotor_describe_jrlB | Use when you need a JRL (journal) summary: categories and entries. Read-only. |
| kotor_describe_resource_refsA | Use when you need a reference summary for any GFF resource (scripts, conversations, tags, template resrefs). Read-only. |
| kotor_walkmesh_validation_diagramA | Get a text validation diagram for a walkmesh (BWM/WOK): perimeter, transitions, outer boundary. Use when you need to understand an area's walkable layout, door links, or boundary for modding or debugging. Read-only; returns plain text (no ANSI). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| K1 Resource | Resolve resource by resref.ext (resolution order) |
| K2 Resource | Resolve resource by resref.ext (resolution order) |
| K1 2DA Table | 2DA table as JSON |
| K2 2DA Table | 2DA table as JSON |
| K1 TLK String | TLK string by strref |
| K2 TLK String | TLK string by strref |
| K1 Walkmesh validation diagram | Text validation diagram (perimeter, transitions) for area walkmesh |
| K2 Walkmesh validation diagram | Text validation diagram (perimeter, transitions) for area walkmesh |
| KotorMCP capabilities | Resolution order, tool index, and when to use each tool (agent onboarding) |
Latest Blog Posts
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/th3w1zard1/KotorMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server