{"ok":true,"site":{"host":"tabulaflow.jacobcalvyn.chatgpt.site","url":"https://tabulaflow.jacobcalvyn.chatgpt.site/","type":"live","desc":"TabulaFlow","tools":[{"name":"tabulaflow_get_workspace_state","kind":"answer","impl":"imperative","description":"Inspect the visible workspace, active IDs, filters, data summary, diagnostics, and runtime health before acting.","title":"Get TabulaFlow workspace state","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_get_capabilities","kind":"act","impl":"imperative","description":"Discover TabulaFlow WebMCP capabilities and safety boundaries. This tool is always available and does not require login or an open dataset.","title":"Get TabulaFlow AI capabilities","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_get_workflow_guide","kind":"act","impl":"imperative","description":"Explain Source, Prepare, Compose, collaboration revisions, and the actions that always remain under user control.","title":"Get the TabulaFlow workflow guide","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_get_available_actions","kind":"answer","impl":"imperative","description":"Return the actions currently valid for the visible workspace or one dataset/operation target.","title":"Get available TabulaFlow actions","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"targetId":{"type":"string","minLength":1}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_get_activity_log","kind":"answer","impl":"imperative","description":"Read the newest privacy-safe activity entries produced by both the user UI and AI agents. Use targetId or actor to narrow the result.","title":"Get shared TabulaFlow activity","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"limit":{"type":"integer","minimum":1,"maximum":100,"default":50},"targetId":{"type":"string","minLength":1},"actor":{"type":"string","enum":["user","agent","system"]}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_get_changes_since","kind":"answer","impl":"imperative","description":"Read ordered activity changes newer than a cursor. Use this before another mutation when the user may have changed the workspace.","title":"Get TabulaFlow changes since a cursor","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"cursor":{"type":"integer","minimum":0,"description":"The last activity cursor already observed."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":100}},"required":["cursor"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_get_operation_status","kind":"answer","impl":"imperative","description":"Poll an async mutation for status, progress, terminal result, or safe diagnostic.","title":"Get mutation operation status","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"operationId":{"type":"string","minLength":1}},"required":["operationId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_cancel_operation","kind":"transact","impl":"imperative","description":"Cancel an accepted or running mutation before commit, or dismiss an awaiting-user Source interaction. Mutation results explicitly report whether cancellation was accepted, already terminal, or past the commit boundary.","title":"Cancel pending TabulaFlow work","annotations":{"readOnlyHint":false,"destructiveHint":false},"inputSchema":{"type":"object","properties":{"operationId":{"type":"string","minLength":1},"interactionId":{"type":"string","minLength":1}},"oneOf":[{"required":["operationId"]},{"required":["interactionId"]}],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_get_pending_confirmations","kind":"answer","impl":"imperative","description":"List privacy-safe destructive requests waiting for a visible user decision. AI agents can inspect or reject a request, but can never confirm deletion.","title":"Get pending user confirmations","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_reject_confirmation","kind":"act","impl":"imperative","description":"Cancel one pending destructive request. This tool cannot confirm or perform deletion; approval remains a visible user-only action.","title":"Reject a pending destructive request","annotations":{"readOnlyHint":false,"destructiveHint":false},"inputSchema":{"type":"object","properties":{"confirmationId":{"type":"string","minLength":1}},"required":["confirmationId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_open_workspace","kind":"act","impl":"imperative","description":"Show Source, Prepare, Compose, or Account in the current TabulaFlow page. Prepare and Compose are available only when the current flow has the required data.","title":"Open a TabulaFlow workspace","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"workspace":{"type":"string","enum":["source","prepare","compose","account"],"description":"The TabulaFlow workspace to show."}},"required":["workspace"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_source","kind":"act","impl":"imperative","description":"Request local Source interactions or use signed-in cloud files through one stable Source dispatcher.","title":"Use TabulaFlow Source","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get_action_contract","request_source_file","request_source_relink","request_reset_all","list_cloud_files","open_cloud_file","request_cloud_upload","begin_agent_upload","get_agent_upload_status","commit_agent_upload","cancel_agent_upload"],"description":"The exact dispatcher action to run. Use get_action_contract to inspect another action's input contract."},"input":{"type":"object","description":"Action-specific input. For get_action_contract, pass { action: \"target_action\" }.","additionalProperties":true}},"required":["action"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_prepare_read","kind":"answer","impl":"imperative","description":"Inspect Prepare data, recipes, semantics, metrics, profiles, values, previews, and dry-runs without changing workspace data.","title":"Read TabulaFlow Prepare","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get_action_contract","get_calculation_catalog","get_recipe","get_semantic_model","list_metric_definitions","get_prepare_dataset","get_data_profile","query_column_values","get_prepare_preview","preview_recipe_change"],"description":"The exact dispatcher action to run. Use get_action_contract to inspect another action's input contract."},"input":{"type":"object","description":"Action-specific input. For get_action_contract, pass { action: \"target_action\" }.","additionalProperties":true}},"required":["action"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_prepare_mutate","kind":"act","impl":"imperative","description":"Run guarded Prepare selections, filters, recipe mutations, exports, duplication, semantic changes, metrics, and deletion requests.","title":"Change TabulaFlow Prepare","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get_action_contract","select_prepared_dataset","update_semantic_field","upsert_metric_definition","delete_metric_definition","replace_recipe","duplicate_prepared_dataset","set_aggregate_columns","set_preview_filter","remove_preview_filter","clear_preview_filters","export_prepare","add_recipe_step","request_delete_all_recipe_steps","update_recipe_step","set_recipe_step_enabled","move_recipe_step","undo_recipe","redo_recipe","apply_value_action","request_delete"],"description":"The exact dispatcher action to run. Use get_action_contract to inspect another action's input contract."},"input":{"type":"object","description":"Action-specific input. For get_action_contract, pass { action: \"target_action\" }.","additionalProperties":true}},"required":["action"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_compose_read","kind":"answer","impl":"imperative","description":"Inspect Compose operations, graph state, schemas, previews, quality, validation, semantics, metrics, and connection options.","title":"Read TabulaFlow Compose","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get_action_contract","describe_operation","get_semantic_model","list_metric_definitions","get_compose_graph","get_compose_node","get_node_schema","get_node_preview","get_compose_node_quality","validate_compose_operation","get_connection_options"],"description":"The exact dispatcher action to run. Use get_action_contract to inspect another action's input contract."},"input":{"type":"object","description":"Action-specific input. For get_action_contract, pass { action: \"target_action\" }.","additionalProperties":true}},"required":["action"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_compose_mutate","kind":"act","impl":"imperative","description":"Run guarded Compose selection, layout, export, operation, promotion, semantic, metric, and deletion-request actions.","title":"Change TabulaFlow Compose","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get_action_contract","update_semantic_field","upsert_metric_definition","delete_metric_definition","select_compose_node","auto_arrange_compose","move_compose_node","export_compose","create_compose_operation","update_compose_operation","promote_compose_result","request_delete"],"description":"The exact dispatcher action to run. Use get_action_contract to inspect another action's input contract."},"input":{"type":"object","description":"Action-specific input. For get_action_contract, pass { action: \"target_action\" }.","additionalProperties":true}},"required":["action"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"tabulaflow_qualitative_coding","kind":"act","impl":"imperative","description":"Read codebook, pseudonymized batches, or progress; submit suggestions. AI cannot approve them.","title":"Work with qualitative coding","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["get-project","get-batch","submit-batch","get-progress"]},"projectId":{"type":"string","minLength":1},"batchId":{"type":"string","minLength":1},"offset":{"type":"integer","minimum":0,"default":0},"limit":{"type":"integer","minimum":1,"maximum":50,"default":25},"submissions":{"type":"array","items":{"type":"object","properties":{"responseRef":{"type":"string","minLength":1},"codeIds":{"type":"array","items":{"type":"string","minLength":1},"uniqueItems":true},"evidence":{"type":"string","minLength":1,"maxLength":1000},"confidence":{"type":"number","minimum":0,"maximum":1},"uncertain":{"type":"boolean","default":false},"rationale":{"type":"string","maxLength":280}},"required":["responseRef","codeIds","evidence","confidence"],"additionalProperties":false},"minItems":1,"maxItems":100},"expectedRevision":{"type":"integer","minimum":0},"requestId":{"type":"string","minLength":8,"maxLength":160}},"required":["action"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Productivity & Business","favicon":"/favicons/tabulaflow.jacobcalvyn.chatgpt.site.png","apiSurface":"spec","toolCount":17}}