Upsertcatalogpage
upsertCatalogPageCreate a catalog page, or replace the existing one with the same slug. A replace overwrites every field. Name, slug and iconTag are required. Choose the page's entities with a filter (FILTER catalog) or a relationshipTypeTag (RELATIONSHIP_TYPE catalog). A DOMAIN catalog must set type=DOMAIN explicitly. Catalogs managed by Cortex cannot be changed (403). Requires the Edit catalogs permission.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the catalog | |
| slug | Yes | Unique identifier for the catalog | |
| type | No | What the catalog is built from. Optional: inferred as `FILTER` when `filter` is set and `RELATIONSHIP_TYPE` when `relationshipTypeTag` is set. Must be set explicitly to `DOMAIN` for a domain catalog | |
| filter | No | Filter that selects the entities in the catalog, for `FILTER` catalogs | |
| context | Yes | Explain why you're invoking this tool now and how its output will be used. Then state how this call supports your *overall objective* and fits into your broader plan across all tool calls (e.g., why this tool vs. others, and what step it unblocks). Never share any personal details or sensitive information. | |
| iconTag | Yes | Tag of the icon shown for the catalog | |
| isDraft | Yes | Whether the catalog is a draft | |
| session_id | Yes | Session continuity handle, one of two values: the ses_ ID issued for the task underway, or start. This server cannot link your calls between requests on its own, so session continuity travels in this parameter instead. If you were handed a session_id for this task — for example by the agent that spawned you — send that exact value from your first call. Otherwise send start on your first call; the server will issue an opaque correlation ID in the mcp_session field of the result, or in a text block at the start of the result beginning [session_id issued. Then send that exact ses_ value on every later call and hand it to any subagents working the same task. start always begins a new, unrelated task — never send it mid-task. If you send a value this server does not recognize, the result reports it: mcp_session.status of unrecognized, or a text block beginning [session_id unrecognized; re-send the ID issued for this task, or start if none was issued yet. Never invent a ses_ value. | |
| description | No | Optional description of the catalog | |
| relationshipTypeTag | No | Tag of the relationship type the catalog is built from, for a `RELATIONSHIP_TYPE` catalog |