Knack MCP server. Read, create, update and delete records; inspect objects, fields and schema in your Knack database.
Add to your MCP config, then reload & authorize:
{
"mcpServers": {
"knack": {
"url": "https://knack.usefulapi.io/mcp"
}
}
}| Tool | Type | What it does |
|---|---|---|
knack_get_application | read | Get application schema Fetch a Knack application's full schema/metadata — its objects (tables), fields, and scenes. Knack API: GET /applications/{app_id}. Returns the raw JSON as-is. app_id defaults to the configured KNACK_APPLICATION_ID. |
knack_list_objects | read | List objects (tables) List an application's objects (tables) as a compact array [{ key, name, fieldCount }]. Convenience over GET /applications/{app_id}. app_id defaults to the configured KNACK_APPLICATION_ID. |
knack_list_fields | read | List fields for an object List the fields of ONE object as [{ key, name, type, required }]. Fetches GET /applications/{app_id} and returns the fields of the object whose key === objectKey (e.g. object_1). app_id defaults to the configured KNACK_APPLICATION_ID. |
knack_list_records | read | List records List an object's records. Knack API: GET /objects/{object_key}/records. Returns the paged envelope { total_pages, current_page, total_records, records }. Page with page / rows_per_page (max 1000), sort with sort_field / sort_order, and filter with the filters object. |
knack_get_record | read | Get a record Fetch a single record by id. Knack API: GET /objects/{object_key}/records/{record_id}. Returns the bare record (with both field_x and field_x_raw values). |
knack_request | read | Raw Knack API GET Power-user escape hatch: GET any Knack API path not wrapped by a dedicated tool (e.g. view-based reads). READ-ONLY — only GET is allowed. Path starts with a slash (e.g. /objects/object_1/records). |
knack_create_record | write | Create a record MUTATES Knack data — creates a new record in an object. Knack API: POST /objects/{object_key}/records. Provide fields keyed by field key. Auto Increment / Formula / Equation fields are read-only. Returns the created record. |
knack_update_record | write | Update a record MUTATES Knack data — updates a record. Knack API: PUT /objects/{object_key}/records/{record_id}. Provide fields keyed by field key; only included fields change. Auto Increment / Formula / Equation fields are read-only. Returns the updated record. |
knack_delete_record | write | Delete a record MUTATES Knack data — permanently DELETES a record (irreversible). Knack API: DELETE /objects/{object_key}/records/{record_id}. Knack returns { delete: true } on success. |
knack_usage_status | Usage status (free-tier meter) Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter. | |
knack_upgrade | Upgrade to Pro (unlimited) Subscribe to the Pro plan for UNLIMITED Knack tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter. |
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 100 tool calls / month |
| Pro | $9/mo · $90/yr | Unlimited |
This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.