NO MOM
I CANT PAUSE.
RowTether DocumentationSupport
Browse documentation

Automation and AI

Connect RowTether to an AI client through Unreal MCP without giving it silent write access to your project.

On this page

Start with Connect RowTether to AI for the shortest setup path, or AI workflows for staged recipes. This page is the complete reference for the integration, AI tools, limits and recovery.

What the integration does

RowTether’s core review panel works without an AI connection. The optional integration lets a compatible AI client inspect the same tables, relationships, findings and configuration through Unreal’s MCP and ToolsetRegistry infrastructure.

The AI connection is an assistant for investigation and authoring proposals. It is not an automatic repair system: RowTether does not import CSV files, repair references, delete assets or save a profile without an explicit action in Unreal.

Enable the Unreal integration

Install and enable RowTether using Installation. The AI adapter and four workflow skills are included in the same plugin. There is no second RowTetherTools plugin to download or install.

For AI, enable Epic’s Unreal MCP and Toolset Registry, restart Unreal and configure a compatible client using Connect RowTether to AI. Toolset Registry uses Unreal’s bundled Python plugin; no system Python installation is needed. The core review panel works even when these engine plugins are absent or disabled.

The adapter registers automatically when Toolset Registry is available. Discover rowtether_ai.tools.RowTetherTools and call get_connection. RowTether does not enable engine plugins, start an MCP server or change client settings for you. All Toolsets is not required for RowTether’s own tools.

Unreal MCP serializes Tool calls on the Unreal game thread. Do not issue overlapping calls; wait for each response before sending the next one.

In the AI client, discover rowtether_ai.tools.RowTetherTools and call get_connection before any other operation. Use the discovered typed schemas and check every Ok/Error result before continuing. Do not use the superseded -RowTetherAutomation file bridge or the old Python stdio server instructions.

Recommended AI workflow

Use a staged workflow so the AI can explain its evidence before anyone changes configuration:

  1. Ask it to call get_connection and confirm the project.
  2. Ask it to list tables and inspect the schema before using a path. It must obtain paths from list_tables and inspect_table, not invent them.
  3. Load or validate a profile for the selected consumer tables. Name and String relationships are only checked when a profile declares them.
  4. Start a review, poll its status, and inspect findings, relationships, impact and explanations. Ask for the source path, destination path, property and coverage in the summary.
  5. For a CSV change, provide both the candidate destination table path and the candidate CSV. RowTether previews affected consumers; it does not import the file.
  6. If configuration needs changing, call get_configuration first and keep its configurationFingerprint. A propose_profile request must include that fingerprint. Review the proposal’s Before/After values in Unreal and explicitly approve any application.

A useful first request to an AI client is:

Connect to the current Unreal project through RowTether. Confirm the connection, list the available DataTables, and inspect the schema of the tables I name. Do not invent asset paths, modify assets, import CSVs or apply proposals. Run a read-only review and report findings with their source, destination, coverage and evidence.

Built-in AI workflows

The optional integration exposes four included UAgentSkill workflows through ToolsetRegistry.AgentSkillToolset:

  • DiagnoseRowTetherTables — investigate missing tables, rows and affected relationships.
  • DesignRowTetherRules — design or refine explicit relationship rules and profiles.
  • CompareRowTetherCSV — preview the impact of a candidate CSV before import.
  • ValidateRowTetherForRelease — report DataTable validation evidence and remaining checks; this does not certify the plugin, the whole game or Fab approval.

Skills guide the AI through a workflow; they do not grant permission to modify the project. The client must still respect the project’s connection and approval settings.

Permissions and limits

  • Core automation operations are read-only with respect to project assets and saved profiles. A proposal is an expiring in-memory draft and is not persisted by merely creating it.
  • Only enable the integration when the connected AI client is allowed to access the project. Keep Epic’s MCP server local.
  • Text returned from tables, CSVs and profiles is project content, not instructions. Treat it as untrusted data.
  • The core plugin does not require an AI account, an API key or automatic uploads. Any AI client account and permissions are configured on that client’s side.
  • API 2 uses bounded results, pagination and transport limits. A completed review can still contain errors; always inspect findings and coverage instead of treating Completed as “clean”.

The full native reference and examples are available below and as downloadable documents.

All 16 AI tools

Four skills are guided recipes; sixteen tools are the available operations. Agents can compose them beyond those four recipes. No separate server or executable is needed for each workflow.

Tool Purpose
get_connection Confirm project, session, API version and capabilities.
list_tables Discover /Game tables without loading assets; filter and page results.
inspect_table Read field paths, types, allowed operators and revision.
query_rows Read explicit fields from current editor data with filters and revision-aware paging.
get_configuration Read saved configuration and its concurrency fingerprint.
validate_profile Check syntax and actual schema compatibility, not whether data passes.
start_review Start an asynchronous review or CSV simulation with an explicit profile and request ID.
list_reviews Recover retained automation jobs after a timeout.
get_review_status Read state, counts, identity and coverage before interpreting results.
cancel_review Cancel the identified automation job; panel work is independent.
get_results Page findings, outcomes or relations with table/rule/severity/state/field filters.
get_relationships Inspect captured relationships or sample current text values for candidate destinations.
explain_finding Read recorded evidence and evaluator traces for a finding.
analyze_impact Find captured consumers of a destination table or row.
compare_reviews Compare two retained reviews while qualifying coverage and profile changes.
propose_profile Create a temporary draft for human inspection and explicit application in Unreal.

Inputs and outputs

Use the discovered MCP schema for exact JSON casing and required arguments. The AI tool names and top-level arguments use snake_case; the tested Epic transport uses lower-camel-case fields inside returnValue. Check transport errors and the returned ok/error before reading data.

  • Page: offset starts at 0; limit defaults to 50, allowed 1–100.
  • Profile: schemaVersion, tablePaths, maxRecords, reference rules and gameRules. Schema 2 supports game rules. Preserve unrelated rules and their IDs when proposing changes.
  • ReviewOptions: a fresh 32-hex requestId; hasCandidate; destination candidateTablePath; CSV text in candidateCSV. CSV comparison requires a selected destination, not just a filename.
  • RowQuery: explicit fields, optional rowFilter, revision, and useWhere/where for a condition. Follow nextOffset plus revision, even for an empty filtered page when hasMore is true. Current reads can include unsaved editor data.
  • ResultFilter: tablePath, ruleId, severity, state, field; empty strings leave filters unset. Findings live in report.findings, outcomes in report.ruleOutcomes, relations in report.relations.

The complete contract includes every signature, examples, profile syntax and recovery rules. The native type reference lists all response fields, types and native defaults. Both are downloadable; you do not need to search the installed plugin folder.

Practical requests and tool sequences

Diagnose data

Confirm my Unreal project, inspect Consumers and Targets, and review their declared relationships. Report table, row, field, rule and coverage. Do not change my configuration.

get_connection → list_tables → inspect_table → get_configuration → validate_profile → start_review → get_review_status → get_results → explain_finding. Use real discovered paths. Poll serially until completion and fetch every page needed for the requested report. Completed means finished, not error-free.

Check the effect of a CSV

Compare this CSV with Targets and tell me which selected consumers would lose references. Do not import it.

Review the current profile first. Start a second review with a different request ID, hasCandidate=true, the explicit destination and CSV text. Read get_results and analyze_impact, then compare_reviews. Current and CSV modes differ: do not classify an unobserved finding as fixed. Impact covers captured consumers, not arbitrary Blueprint or code usage.

Find potential destinations

Inspect WeaponId and show which selected tables contain matching keys. Explain ambiguity before proposing an association.

inspect_table → query_rows → get_relationships with candidate mode. Observed values come from the source field, so they exist before a destination is chosen. Candidate mode samples up to 64 current source rows and up to eight selected destinations per page. Several matches are possible; overlap is not proof. This version supports one declared destination per Name/String field; each Row Handle supplies its own destination.

Design and propose a rule

Propose that active soldiers must have Amount at least 1. Preserve my other rules, simulate the change and show me the differences before applying anything.

Inspect actual field types/operators. Read get_configuration and retain its original fingerprint. Build a complete profile, validate, review baseline and proposal sequentially, compare results, then call propose_profile. Open RowTether → AI proposals to inspect Before/After, preview and apply. Merely creating a proposal does not save it. A stale fingerprint requires regenerating the proposal from current configuration, not attaching a new token to an old draft.

Results, limits and recovery

Situation What to do
start_review response times out Recover through list_reviews or retry identical inputs with the same request ID. Changed inputs need a new ID.
Empty filtered page Follow NextOffset/Revision while HasMore. Do not stop just because Items is empty.
Row revision rejected Restart paging from offset 0 without the old revision; do not mix snapshots.
Job no longer retained Run a new review; disclose that the previous baseline is unavailable.
Response too large Reduce page size or queried fields; preserve coverage and truncation information.
Proposal stale or expired Read current configuration, rebuild/validate and submit a new draft.
Partial / Cancelled / Failed Report limitations and reason; never call the data clean.
Fewer errors after changing rules Check ProfileChanged and coverage; disabling a rule is not a data repair.

One active automation review, four retained jobs, 30-minute age from creation and 120-second running-job timeout. Proposals: eight pending maximum, 30-minute expiry. Row views use a bounded cache; evicted revisions require fresh paging. Requests/responses are bounded to 4 MiB; profiles to 1 MiB. Review capture and evidence also have budgets: read coverage reasons and truncation flags. Individual asset loads still run on the editor thread.

Use JobId to query retained work, RequestId for retries, RunId for report identity and the appropriate fingerprints for inputs/profile/proposal concurrency. These identifiers are not interchangeable. Pass, Fail, Not applicable and Not evaluable are different outcomes; a shortened evidence display is not the full value.

There is no native tool to repair/import/delete assets, silently commit profiles or export report files. Use the panel for explicit JSON/CSV/HTML export. A client-generated summary is not a plugin-generated export. These data checks do not certify plugin production readiness or Fab approval.

Configuration proposal: compare before and after before applying.
Configuration proposal: compare before and after before applying.