Skip to content

Essbase Connector — Tool Reference

The Essbase connector exposes 9 tools for querying Oracle Essbase 21c.


mcp_connector_status

Returns connector health, version, uptime, backend connectivity, SDK version, and authentication mode.

Parameters: None

Example Response:

{
  "status": "healthy",
  "version": "2.2.7",
  "uptime_seconds": 12345.67,
  "backend_connected": true,
  "backend_system": "Oracle Essbase",
  "connector_id": "agentcube-essbase",
  "sdk_version": "1.3.0",
  "auth_mode": "basic"
}


test_datasource

Tests connectivity to the configured Essbase server. Returns connection status, server URL, Essbase version, and build number.

Parameters: None


list_applications

Lists all Essbase applications the authenticated user can access. Returns application names and descriptions.

Parameters: None

Example Response:

[
  {"name": "Sample", "description": "Sample application"},
  {"name": "Finance", "description": "Financial reporting"}
]


list_cubes

Lists all cubes (databases) within an Essbase application. Returns cube names and storage type (BSO/ASO).

Parameters:

Parameter Type Required Description
application_name string Yes Name of the Essbase application

Example:

{
  "application_name": "Sample"
}


get_cube_schema

Returns the dimension schema for a cube, including attribute dimensions. Shows dimension names, types (accounts, time, standard, attribute), member counts, max levels, and attribute type for attribute dimensions.

Parameters:

Parameter Type Required Description
application_name string Yes Name of the Essbase application
cube_name string Yes Name of the cube (database)

Example:

{
  "application_name": "Sample",
  "cube_name": "Basic"
}


list_dimension_members

Lists members of a dimension with optional parent filter and pagination. The level filter requires parent_member to be set. Without it, an MDX alternative is suggested.

Parameters:

Parameter Type Required Default Description
application_name string Yes Name of the application
cube_name string Yes Name of the cube
dimension_name string Yes Name of the dimension to explore
parent_member string No null Parent member to get children of
level integer No null Level filter (0=leaf). Requires parent_member
max_results integer No 100 Maximum members to return per page
offset integer No 0 Members to skip for pagination

Example — List children of a member:

{
  "application_name": "Sample",
  "cube_name": "Basic",
  "dimension_name": "Product",
  "parent_member": "100"
}

Pagination: The response includes total_count, offset, limit, and has_more to support paging through large dimensions.


get_member_info

Returns detailed information about a specific dimension member, including level, parent, children, alias, storage type, consolidation operator, time balance, skip option, variance reporting, two-pass calc flag, solve order, UDAs (User Defined Attributes), formula, and all alias table values.

Parameters:

Parameter Type Required Description
application_name string Yes Name of the application
cube_name string Yes Name of the cube
dimension_name string Yes Name of the dimension containing the member
member_name string Yes Name of the member to look up

Example:

{
  "application_name": "Sample",
  "cube_name": "Basic",
  "dimension_name": "Product",
  "member_name": "100-10"
}


query_cube_data

Queries a single data cell by specifying one member per dimension. Every dimension in the cube must have a member specified — omitted dimensions silently default to the dimension top, which may return aggregated values.

Parameters:

Parameter Type Required Default Description
application_name string Yes Name of the application
cube_name string Yes Name of the cube
dimensions object Yes Mapping of dimension name to member name
suppress_zeros boolean No false If true, return null for zero or missing values

Example:

{
  "application_name": "Sample",
  "cube_name": "Basic",
  "dimensions": {
    "Product": "Cola",
    "Market": "East",
    "Year": "Jan",
    "Scenario": "Actual",
    "Measures": "Sales"
  }
}

Specify all dimensions

Omitted dimensions default to the dimension top member. Always specify a member for every dimension to avoid unintended aggregated values.


execute_mdx

Executes an MDX query against an Essbase cube. Used for multi-cell retrievals, set functions (CHILDREN, DESCENDANTS, CROSSJOIN), and complex data queries.

The Essbase REST API requires at least one member on both COLUMNS and ROWS. Dimensions not placed on COLUMNS or ROWS go in the WHERE clause as fixed POV members.

Parameters:

Parameter Type Required Description
application_name string Yes Name of the application
cube_name string Yes Name of the cube
mdx_query string Yes MDX query string

Example — Children of a member across time:

{
  "application_name": "Sample",
  "cube_name": "Basic",
  "mdx_query": "SELECT {[Year].[Qtr1].CHILDREN} ON COLUMNS, {[Product].[100].CHILDREN} ON ROWS FROM [Sample].[Basic]"
}

Example — Crossjoin with WHERE clause:

{
  "application_name": "Sample",
  "cube_name": "Basic",
  "mdx_query": "SELECT {[Measures].[Sales], [Measures].[COGS]} ON COLUMNS, {[Product].[100].CHILDREN} ON ROWS FROM [Sample].[Basic] WHERE ([Year].[Jan], [Scenario].[Actual], [Market].[East])"
}

MDX tips

  • Use CHILDREN to expand a member's direct children
  • Use DESCENDANTS for multi-level expansion
  • Use CROSSJOIN to combine members from different dimensions on the same axis
  • Dimensions not on COLUMNS or ROWS should go in the WHERE clause