Connect

MCP tools reference

Once connected (see Connect an AI agent), your agent has these tools. They all operate on your project's schema — entities, fields, and inspection — never on your app's end-user data directly; that happens over the REST API your agent (or your app) calls once the schema exists.

Orientation

whoami — call this first in any new session. Resolves your identity, lists your projects, and returns a default_project_id when your key was minted with one — so most other tools don't need project_id passed explicitly.

list_projects, describe_project — list every project, or get one project's full picture in a single call: its tenancy model, every entity with its fields, the relationships between them, and which query parameters actually filter today.

Projects

create_project — name is the only required field. slug auto-derives from it if omitted. multiTenant and publicSignup default to false — see Multi-tenancy for what that means in practice. The project's data table provisions asynchronously (~30 seconds).

update_project — change name, description, multiTenant, or publicSignup. Doesn't touch the schema or data.

Entities

create_entity — name (the URL slug, e.g. orders) and key (a unique 3-character uppercase prefix, e.g. ORD → record IDs ORD1, ORD2) are required. REST endpoints activate immediately once the entity exists.

list_entities, update_entity — list schemas project-wide or filtered; update an entity's label, description, or allowed HTTP methods. Doesn't touch field definitions.

delete_entity — soft-deletes the schema. Existing data records are not deleted.

Fields

create_field — the one that matters most to get right the first time. Required: entity_id, name (camelCase), type. For any relationship, use type: "reference" with targets — never text or list for a link to another record. multiple: true on a reference models a one-to-many. list is only for arrays of primitives (strings/numbers/booleans), set alongside valueType.

list_fields — every field on an entity, with its validation rules.

update_field — label, description, default_value, required, hidden, min, max, pattern, and values are mutable at any time. type, unique, search, multiple, targets, and valueType are not — the call is rejected atomically if it touches any of them, even mixed with mutable attributes in the same call. See Concepts for the migration path when you need to change one anyway.

delete_field — soft-deletes the field. Existing records keep the data; it's excluded from new validation and from responses going forward.

Spec generation

generate_openapi_spec — generates the OpenAPI 3.0 spec for every entity in a project and returns a presigned S3 URL. Its servers[0].url is your project's real REST base URL — this is how you get it, rather than guessing the slug pattern. Generate it again after adding fields; the spec reflects the schema at the moment you call it.