addFields
ChatGPTAppend one or more new fields to the end of a form. Existing fields are not modified.
addForm
ChatGPTAdd a new form to the database.
addPivotsToReport
ChatGPTAppend one or more pivot analyses to an existing report. Existing components are preserved. Returns the same shape as addReport, with the updated pivot count and a URL pointing at the updated report.
addRecords
ChatGPTAdd one or more records to a form. Provide an array of record objects, each mapping field codes to values.
addReport
ChatGPTCreate a new notebook-layout report in a database, with one pivot analysis per entry in pivots. Returns the report's id, name, pivot count, and an absolute web URL the user can open to view or edit it.
deleteFields
ChatGPTDelete fields from a form by their codes. This also deletes any data already entered in those fields. Fails without changing the form if any code does not match an existing field.
getRecords
ChatGPTRetrieve all records of a form as a JSON array; each object maps field codes to values, plus an '_id' key for the record ID.
getReport
ChatGPTRead back an existing report: its id, name, layout, URL, and the components currently in it. Pivot components are returned in the same shape they would be passed to addReport, so the LLM can inspect what's already there before deciding to append.
getTranslations
ChatGPTReturn the translatable strings of a dictionary for the given language. Each entry has key, original, and translation; untranslated strings have an empty translation. Pass these entries back unchanged (except for the translation) to updateTranslations. Use listTranslationDictionaries first to discover the dictionaryId.
insertFields
ChatGPTInsert one or more new fields into a form, immediately after an existing field identified by its code, or at the start of the form if afterFieldCode is omitted. Existing fields are not modified.
listDatabases
ChatGPTList the ActivityInfo databases the user can access. Call this first to discover the databaseId that every other tool requires. Each entry has an mcpServerEnabled flag: when it is false, every other tool will refuse the database and the owner must enable the MCP server in the database's Security section first.
listFields
ChatGPTList all fields (columns) of a form, including subform references. Returns each field's code, name, type and other properties.
listResources
ChatGPTList the forms and reports in an ActivityInfo database. Each entry has a type of FORM or REPORT; forms carry their name and folder path, reports carry their id, name, and an absolute web URL the user can open. Use this to discover what's in the database before drilling in with listFields, getReport, addPivotsToReport, etc.
listTranslationDictionaries
ChatGPTList the translation dictionaries in a database: one for the database tree (database/folder/form/role labels) and one per form (field labels, descriptions, units, enum options). Each entry has an opaque id to pass to getTranslations / updateTranslations, plus a description naming what the dictionary contains.
pivot
ChatGPTRun a pivot-table analysis to answer an analytical question about the data, and return the aggregated result. Provide one or more measures (what to aggregate, e.g. SUM of a quantity field, or COUNT of records) and optional row/column dimensions (how to group, e.g. by a category field or by month). Each measure and dimension names its own form; a dimension may use a related form and the relationship is resolved automatically. Returns CSV by default, or a flat list of row objects with format=JSON.
updateFields
ChatGPTUpdate existing fields of a form, matched by code: changes name, description, required, options, formula or reference target in place, preserving the field and its data. The field type cannot be changed (delete and re-add the field for that).
updateRecords
ChatGPTUpdate existing records of a form. Each record object must include the _id returned by getRecords; other keys are field codes whose values should change. Fields not present in the record object keep their existing values; pass JSON null to clear a field. Read-only field types (calculated, serial, attachment, subform, section header, reverse reference) are silently ignored.
updateTranslations
ChatGPTSave translations for a dictionary. The server validates each entry against the current schema: entries with an unknown key or a drifted original are silently dropped, so always send back the rows you just received from getTranslations with only the translation filled in. Form labels are mirrored between the database-tree dictionary and the form's own dictionary automatically.
addFields
ClaudeaddForm
ClaudeaddPivotsToReport
ClaudeaddRecords
ClaudeaddReport
ClaudedeleteFields
ClaudegetRecords
ClaudegetReport
ClaudegetTranslations
ClaudeinsertFields
ClaudelistDatabases
ClaudelistFields
ClaudelistResources
ClaudelistTranslationDictionaries
Claudepivot
ClaudeupdateFields
ClaudeupdateRecords
ClaudeupdateTranslations
Claude