Servidor MCP

knack

io.usefulapi/knack

Qué hace este MCP

Manages Knack database records and exposes application schemas, objects, fields, filtering, and CRUD operations.

knack_create_record
Create a record
MUTATES Knack data — creates a new record in an object. Knack API: POST /objects/{object_key}/records. Provide `fields` as an object keyed by field key, e.g. { "field_1": "Acme", "field_2": 100 }. Auto Increment / Formula / Equation fields are read-only and cannot be set. Returns the created record.
Destructivo
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['objectKey', 'fields'], 'properties': {'fields': {'type': 'object', 'description': 'The record\'s field values keyed by field key, e.g. { "field_1": "Acme", "field_2": 100 }. Auto Increment / Formula / Equation fields are read-only and cannot be written.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'objectKey': {'type': 'string', 'description': 'The Knack object (table) key, e.g. "object_1".'}}}
knack_delete_record
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.
Destructivo
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['objectKey', 'recordId'], 'properties': {'recordId': {'type': 'string', 'description': 'The record id (a hex string returned by Knack).'}, 'objectKey': {'type': 'string', 'description': 'The Knack object (table) key, e.g. "object_1".'}}}
knack_get_application
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.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'appId': {'type': 'string', 'description': 'Optional Knack Application ID; defaults to the configured KNACK_APPLICATION_ID.'}}}
knack_get_record
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).
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['objectKey', 'recordId'], 'properties': {'recordId': {'type': 'string', 'description': 'The record id (a hex string returned by Knack).'}, 'objectKey': {'type': 'string', 'description': 'The Knack object (table) key, e.g. "object_1".'}}}
knack_list_fields
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.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['objectKey'], 'properties': {'appId': {'type': 'string', 'description': 'Optional Knack Application ID; defaults to the configured KNACK_APPLICATION_ID.'}, 'objectKey': {'type': 'string', 'description': 'The Knack object (table) key, e.g. "object_1".'}}}
knack_list_objects
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.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'appId': {'type': 'string', 'description': 'Optional Knack Application ID; defaults to the configured KNACK_APPLICATION_ID.'}}}
knack_list_records
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: [...] } as-is. Records carry both field_x (formatted) and field_x_raw (structured) values. Page with page / rows_per_page (max 1000), sort with sort_field / sort_order, and filter with the `filters` object.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['objectKey'], 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (default 1).'}, 'filters': {'type': 'object', 'description': 'Optional Knack filter object, JSON-stringified into the `filters` query param. Shape: { "match": "and"|"or", "rules": [{ "field": "field_1", "operator": "is", "value": "Acme" }] }. Common operators: contains, does not contain, is, is not, starts with, ends with, higher than, lower than, is blank, is not blank.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'objectKey': {'type': 'string', 'description': 'The Knack object (table) key, e.g. "object_1".'}, 'sort_field': {'type': 'string', 'description': 'Field key to sort by, e.g. "field_25".'}, 'sort_order': {'enum': ['asc', 'desc'], 'type': 'string', 'description': 'Sort direction: "asc" or "desc".'}, 'rows_per_page': {'type': 'integer', 'maximum': 1000, 'minimum': 1, 'description': 'Records per page (1-1000, default 25).'}}}
knack_request
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 API: GET {path}.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['path'], 'properties': {'path': {'type': 'string', 'description': 'API path starting with a slash, e.g. "/objects/object_1/records".'}, 'query': {'type': 'object', 'description': 'Optional query params object.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}}
knack_update_record
Update a record
MUTATES Knack data — updates a record. Knack API: PUT /objects/{object_key}/records/{record_id}. Provide `fields` as an object keyed by field key; only the included fields change, e.g. { "field_1": "Acme Inc" }. Auto Increment / Formula / Equation fields are read-only. Returns the updated record.
Destructivo
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['objectKey', 'recordId', 'fields'], 'properties': {'fields': {'type': 'object', 'description': 'The record\'s field values keyed by field key, e.g. { "field_1": "Acme", "field_2": 100 }. Auto Increment / Formula / Equation fields are read-only and cannot be written.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'recordId': {'type': 'string', 'description': 'The record id (a hex string returned by Knack).'}, 'objectKey': {'type': 'string', 'description': 'The Knack object (table) key, e.g. "object_1".'}}}
Modificado
knack_delete_record
1 de October de 2026 a las 02:42
Modificado
knack_update_record
1 de October de 2026 a las 02:42
Modificado
knack_create_record
1 de October de 2026 a las 02:42
Modificado
knack_request
1 de October de 2026 a las 02:42
Modificado
knack_get_record
1 de October de 2026 a las 02:42
Modificado
knack_list_records
1 de October de 2026 a las 02:42
Modificado
knack_list_fields
1 de October de 2026 a las 02:42
Modificado
knack_list_objects
1 de October de 2026 a las 02:42
Modificado
knack_get_application
1 de October de 2026 a las 02:42
Añadido
knack_delete_record
17 de September de 2026 a las 12:53
Añadido
knack_update_record
17 de September de 2026 a las 12:53
Añadido
knack_create_record
17 de September de 2026 a las 12:53
Añadido
knack_request
17 de September de 2026 a las 12:53
Añadido
knack_get_record
17 de September de 2026 a las 12:53
Añadido
knack_list_records
17 de September de 2026 a las 12:53
Añadido
knack_list_fields
17 de September de 2026 a las 12:53
Añadido
knack_list_objects
17 de September de 2026 a las 12:53
Añadido
knack_get_application
17 de September de 2026 a las 12:53