TM1 cube tools
Explore cube structures, dimensions, members, and data with natural-language or structured queries.
This tool set contains Model Context Protocol (MCP) tools for exploring the data and metadata in TM1® models. Each tool includes input arguments, outputs, and example usage in natural language.
Overview
These tools are accessible through the /agentic-ai/cube/mcp endpoint.
For REST-based authorization, this should follow the pattern
https://{{PAW_HOST}}/api/{{PAW_TENANT_ID}}/v0/agentic-ai/cube/mcp otherwise select
the resource through applicable Planning Analytics Workspace
REST API base path.
Quick Reference – All Tools
| Tool | Input Arguments | Output | Notes |
|---|---|---|---|
| Discovery and metadata | |||
| get_available_tm1_servers | None | results: list[str] | Retrieves a list of available TM1 server names that can be accessed. |
| get_tm1_cubes | server: string | results: list[object] | Lists all cubes on a TM1 server including metadata. |
| list_cube_views | server: string, cube: string | results: list[object] | Lists all views that are defined for a specified cube, including basic metadata for each view. |
| list_cubes_with_ai_analysis_metadata | server: string, only_analyzed: boolean (optional), return_summaries: boolean (optional) | results: list[object] | Lists cubes on a TM1 server along with metadata that is related to AI-assisted analysis. |
| get_cube_dimensions_with_metadata | server: string, cube: string | results: list[object] | Lists the dimensions of a TM1 cube along with detailed metadata for each dimension. |
| Dimensions and members | |||
| get_cube_dimensions | server: string, cube: string | results: list[string] | Retrieves the list of dimension names that define a TM1 cube's structure. |
| get_cube_sample_members | server: string, cube: string | results: list[object] | Retrieves a list of sample members from each dimension of a specified TM1 cube. |
| lookup_potential_members | server: string, cube: string, search_term: string, dimension: string (optional) | results: list[object] | Retrieves dimension members that might correspond to a specified search term within a TM1 cube. |
| Candidate selection and guidance | |||
| get_cubes_that_may_answer_query | server: string, query: string | results: list[object] | Retrieves a list of cubes from a TM1 server that might contain data that is relevant to a natural language query. |
| Data retrieval and execution | |||
| get_mdx_for_recommended_view | server: string, query: string, cube: string (optional) | cube_name: string, mdx: string, alternative_cubes: list[string], state: string | Converts a natural language query into a corresponding TM1 MDX query. Works only with pre-analyzed cubes. |
| execute_mdx_and_get_view | server: string, cube: string, mdx: string, max_rows: int (optional), max_columns: int (optional) | data: string, state: string | Runs a TM1 MDX query and retrieves the resulting data as a formatted markdown table. |
| get_data_from_data_explorer | server: string, query: string, cube: string (optional), max_rows: int (optional), max_columns: int (optional) | cube_name: string, filters: string, data: string, explanation: string, alternative_cubes: list[string], state: string | Retrieves data from a pre-analyzed TM1 cube based on a natural language query. |
| View lifecycle | |||
| save_mdx_view | server: string, name: string, mdx or state | result: string, state: string | Saves a view to a cube that uses either an MDX definition or a view state, enabling reuse of analytical context in subsequent workflows. |
| get_saved_view | server: string, cube: string, view: string | data: string, state: string | Retrieves a saved view from a cube and returns its data and analytical state for further exploration or analysis. |
| Cube lifecycle | |||
| create_tm1_cube | server: string, cube_name: string, dimensions: list[string] | result: string | Creates a new TM1 cube with the specified dimensions on a server. |
| delete_tm1_cube | server: string, cube_name: string | result: string | Deletes an existing TM1 cube from a server. |
| Scenarios and sandboxes | |||
| get_tm1_sandboxes | server: string | results: list[object] | Lists all sandboxes on a TM1 server along with associated metadata. |
| create_tm1_sandbox | server: string, name: string, source: string (optional) | result: string | Creates a new TM1 sandbox on a server, optionally by using an existing sandbox as a source. |
| publish_sandbox | server: string, name: string, clean_after: boolean (optional) | result: string | Publishes changes from a TM1 sandbox to base data on a server. |
| discard_sandbox_changes | server: string, name: string | result: string | Discards all changes in a TM1 sandbox and restores it to its original state. |
| delete_tm1_sandbox | server: string, name: string | result: string | Deletes a TM1 sandbox from a server. |
| Annotations | |||
| get_cube_annotations | server: string, cube: string, skip: int (optional), top: int (optional) | results: list[object], total_count: int, skip: int, top: int | Retrieves annotations that are associated with a TM1 cube, with support for pagination. |
| Insights and analysis | |||
| perform_impact_analysis | server: string, state: string | results: list[object], status_info | Performs impact analysis on cube data to identify key drivers that influence values within a specified analytical context. |
| get_impact_analysis_summary | key_drivers: list[object] | result: string | Generates a natural-language summary of impact analysis results to explain key drivers and their relative influence. |
| perform_outlier_detection | server: string, state: string | results: list[object], status_info | Detects anomalous values in cube data to identify rows or cells that deviate significantly from expected patterns within a specified analytical context. |
| get_outlier_summary | outliers: list[object], algorithm: string | result: string | Generates a natural-language summary of detected outliers to explain unusual values or patterns that are identified in cube data. |
| generate_exploration_analysis_report | server: string, state: string, row_range_start: int, column_range_start: int, row_range_span: int, column_range_span: int, generate_summary: boolean (optional) | result: string | Generates a PDF analysis report for a TM1 cube view based on a provided state and selected data ranges. |