MCP tools
Current Rowly MCP catalog across core tools, Thai accounting, and extensions.
Rowly exposes a current MCP catalog shared with admin documentation and API tests. The
catalog stays docs-first: schema discovery lets the AI inspect a doc
before constructing payloads, so it can self-correct instead of hallucinating
fields.
App management
Create, list, and archive named workspaces.
- •list_apps — List apps the caller can access. [read-only]
- •create_app — Create a new named workspace.
- •get_app — Fetch one app with its member list. [read-only]
- •archive_app — Two-step destructive archive with confirm_token. [destructive]
Bulk + async tasks
Large bulk jobs return a task id immediately; poll until done or failed.
{
"async": true,
"task_id": "tsk_01HXYZ...",
"poll_tool": "get_task_status"
}
- •bulk_update / bulk_delete — Sync up to 100 matched rows; larger jobs run through TaskRunner.
-
•export_records — Sync up to 1,000 matched
rows; larger exports write the body to R2 and return
result.storageKeyin the completed task for authenticated/files/getdownload. - •get_task_status — Returns status, timestamps, result, result_sha256, and error_code for the current tenant/app scope.
Membership
Invite, list, promote, and remove members inside an app.
- •list_members — List members + roles for the app. [read-only]
- •invite_member — Send an email invite with a role.
- •update_role — Change a member's role.
- •remove_member — Two-step removal with confirm_token. [destructive]
Discovery
Introspect docs so AI can self-correct payloads.
- •list_docs — List docs in the current app. [read-only]
- •get_doc_schema — Fetch the compiled schema + meta for a doc. [read-only]
- •list_workflows — List workflows attached to a doc. [read-only]
CRUD
Generic create / read / query / update / delete against any doc — not per-doc tools.
- •create_record — Create a record; supports idempotency_key.
- •get_record — Fetch one record by id. [read-only]
- •query_records — Cursor-paginated query with filters and response_format modes. [read-only]
- •update_record — Optimistic-lock update using version. [idempotent]
- •delete_record — Two-step destructive delete with confirm_token. [destructive]
Workflow + admin
Drive state transitions and define new docs.
- •run_workflow_action — Run a named action on a record, enforcing role + CEL condition.
- •define_doc — Create / update a doc schema. dry_run defaults to true in production. [destructive]
Tool annotations
Hints the server sets so MCP clients can render safer UX.
-
•
openWorldHint: falseon every tool — Rowly is a closed D1 world, not a web fetcher. -
•
readOnlyHint: trueon all list_*, get_*, plus search + fetch. -
•
destructiveHint: trueon delete_record, archive_app, and other two-step mutations. -
•
idempotentHint: trueon update_record.