views operations
MCP tools and operation permissions for views.
Generated from the shared operation catalog. Use the JSON catalog for complete input schemas. Required dependency checks can be stricter than the resource permission listed below.
view_catalog
Read this before authoring views. Returns the shared component and field factories, complete examples, chart schema and types, binding examples, and sizing guidance used by the visual builder. Compose charts, tables, lists, metrics, details, forms and published-workflow triggers. Use fieldDefaults for form inputs and view_validate before saving.
- HTTP:
GET /api/views/catalog - SDK:
client.views.catalog(input) - Access: workspace; panel / read
- Effect annotation: Read-only
See the JSON schema for this input contract.
view_validate
Validate a draft before saving it. Uses the ordinary view parser, binding analyzer and authorized query/view/workflow reference checks. Optionally pass datasets with real columns and up to 100 sample records per dataset to catch missing fields and nonnumeric chart measures. Returns valid, normalized definition, issues with component IDs and paths, and warnings. Does not save, query databases or submit workflows. Use view_catalog for templates.
- HTTP:
POST /api/views/validate - SDK:
client.views.validate(input) - Access: workspace; panel / read
- Effect annotation: Read-only
| Input | Requirement | Description |
|---|---|---|
definition | Required | Complete version-1 definition from view_catalog, including datasets and components. Returns precise issues and a normalized definition without saving. |
datasets | Optional | Optional results keyed by dataset ID: columns and up to 100 sample records from view_data or query_run. Checks chart measures and displayed fields against actual results. Samples are used only for validation and are not saved. |
id | Optional | Existing view ID when validating an update; checks for recursive embedding. |
view_list
List reusable interactive views and folders visible to this workspace user, with permitted view counts and available organization actions. Folders organize views without granting access to their contents.
- HTTP:
GET /api/views - SDK:
client.views.list(input) - Access: workspace; panel / read
- Effect annotation: Read-only
| Input | Requirement | Description |
|---|---|---|
projectId | Optional | string |
view_folder_create
Create a folder for reusable views in a workspace or project. Use view_move for existing views, or folderId in view_create. Folders do not grant access to their contents.
- HTTP:
POST /api/views/folders - SDK:
client.views.createFolder(input) - Access: workspace; viewFolder / write
- Effect annotation: May change state or run effects
| Input | Requirement | Description |
|---|---|---|
name | Required | string |
projectId | Optional | See schema |
view_folder_rename
Rename a reusable-view folder without changing any view definitions, dashboards or permissions.
- HTTP:
PATCH /api/views/folders/:folderId - SDK:
client.views.renameFolder(input) - Access: workspace; viewFolder / write
- Effect annotation: May change state or run effects
| Input | Requirement | Description |
|---|---|---|
name | Required | string |
folderId | Required | string |
view_folder_remove
Delete a reusable-view folder and return its views to the root library. Preserves the views, their saved definitions and all dashboard references.
- HTTP:
DELETE /api/views/folders/:folderId - SDK:
client.views.removeFolder(input) - Access: workspace; viewFolder / admin
- Effect annotation: May change state or run effects; destructive operation
| Input | Requirement | Description |
|---|---|---|
folderId | Required | string |
view_move
Move reusable views together into a folder within the same project, or pass folderId: null to return them to the root library. Requires write access to all views and the destination folder. Preserves view definitions, execution and dashboard references.
- HTTP:
POST /api/views/move - SDK:
client.views.move(input) - Access: workspace; panel / write
- Effect annotation: May change state or run effects
| Input | Requirement | Description |
|---|---|---|
ids | Required | array |
folderId | Required | See schema |
view_get
Read a reusable view and its dataflow, component and event bindings. Does not execute queries or workflows.
- HTTP:
GET /api/views/:id - SDK:
client.views.get(input) - Access: workspace; panel / read
- Effect annotation: Read-only
| Input | Requirement | Description |
|---|---|---|
id | Required | string |
view_create
Save one reusable section with its end-to-end data, calculation and interaction flow using view_catalog defaults. Keep related metrics sharing a query and controls depending on local state together. Place independent sections separately in dashboard.layout; compose panel destinations with type:view components and explicit params. Call view_validate first; read each dataset with view_data after saving to verify actual fields and parameter bindings. Attach with {app: viewId, w: 12, h: 4, heightMode: "content"}. Saving does not run queries or workflows.
- HTTP:
POST /api/views - SDK:
client.views.create(input) - Access: workspace; panel / write
- Effect annotation: May change state or run effects
| Input | Requirement | Description |
|---|---|---|
definition | Required | See schema |
projectId | Optional | See schema |
folderId | Optional | See schema |
view_update
Edit a reusable view at its current version. Saving or previewing never submits workflow events.
- HTTP:
PATCH /api/views/:id - SDK:
client.views.update(input) - Access: workspace; panel / write
- Effect annotation: May change state or run effects
| Input | Requirement | Description |
|---|---|---|
definition | Required | See schema |
version | Required | integer |
id | Required | string |
view_remove
Remove a reusable view. Does not modify source database records.
- HTTP:
DELETE /api/views/:id - SDK:
client.views.remove(input) - Access: workspace; panel / admin
- Effect annotation: May change state or run effects; destructive operation
| Input | Requirement | Description |
|---|---|---|
id | Required | string |
view_cost
Inspect the source plans and recorded execution measurements for a view or component, with its current inputs, state and dataset controls. Includes embedded views, excludes unopened destinations and workflow actions. Does not execute data queries.
- HTTP:
POST /api/views/:id/cost - SDK:
client.views.estimate(input) - Access: workspace; panel / read
- Effect annotation: Read-only
| Input | Requirement | Description |
|---|---|---|
viewId | Optional | string |
viewPath | Optional | array |
viewParams | Optional | object |
version | Optional | integer |
state | Optional | object |
results | Optional | object |
params | Optional | object |
componentId | Optional | string |
controls | Optional | object |
id | Required | string |
view_data
Explicitly read a view dataset with its declared component bindings. Inline dataflows and reusable saved queries share the ordinary query executor and database run permissions. Never executes form or button workflows.
- HTTP:
POST /api/views/:id/data - SDK:
client.views.data(input) - Access: workspace; panel / read
- Effect annotation: Read-only
| Input | Requirement | Description |
|---|---|---|
datasetId | Required | string |
controls | Optional | object |
viewId | Optional | string |
viewPath | Optional | array |
viewParams | Optional | object |
version | Optional | integer |
state | Optional | object |
results | Optional | object |
params | Optional | object |
id | Required | string |
view_submit
Explicitly submit a configured component workflow. For a named selection action supply actionId; otherwise use the primary action. Resolves saved bindings in the authenticated user context and calls the authorized published workflow executor. Supply the current view version and reuse requestKey only for the same intent; never invoke on mount or refresh.
- HTTP:
POST /api/views/:id/submit - SDK:
client.views.submit(input) - Access: workspace; panel / read
- Effect annotation: May change state or run effects
| Input | Requirement | Description |
|---|---|---|
componentId | Required | string |
viewId | Optional | string |
viewPath | Optional | array |
viewParams | Optional | object |
actionId | Optional | string |
version | Required | integer |
requestKey | Required | string |
state | Required | object |
results | Required | object |
params | Optional | object |
id | Required | string |