Overview

What is Model Context Protocol (MCP)?

Model Context Protocol (MCP) is an open standard that allows AI assistants to securely connect to systems like Vena and work with your financial data using natural language.

For FP&A teams, this means you can ask questions about budgets, forecasts, actuals, variances and scenarios. AI can then retrieve and analyze that information directly from your Vena data models.

Instead of manually navigating dimensions, hierarchies and report structures, MCP enables AI to understand how your data is organized and uses that context to support common finance workflows, such as reporting, variance analysis, forecasting and scenario modeling.

MCP can also retrieve detailed data from Operational Tables and Transaction or Staging Tables. This lets you go beyond aggregated values in your data models to investigate the underlying data, such as transactions or operational records contributing to a value.

Before you begin

To use MCP, you must have access to Vena and permission to access data in your account and a license for the external AI system you want to use.

All existing Data Permissions and Application Permissions for each user in Vena will apply to external AI systems using MCP. For example, if you only have access to HR data in Vena, you can only use the external AI system for HR-related queries.

Supported Tools

ToolDescription
list_modelsLists all models available to the authenticated user, returning model IDs and names.
get_dimensionsReturns all dimension names for a model (e.g., Account, Period, Scenario, Year, Entity, Department).
get_hierarchyReturns all members for a dimension, including parent-child relationships, aliases, and rollup operators.
get_report_dataReturns a keyed index of report data (e.g., Revenue | Jan → 150000) by specifying row and column dimensions and page filters for report building.
list_operational_tables Lists the Operational Tables available to the current user, including each table’s ID, name, columns and data types. 
query_operational_table Retrieves rows from an Operational Table by table ID. You can choose which columns to return, filter the rows by specified criteria and limit the number of rows returned. 
list_transaction_tables Lists the drill-through tables available in a model, including each table’s name, columns and data types. A drill-through table is a Transaction or Staging Table with columns for each dimension in its assigned data model. 
query_transaction_table Retrieves rows from a drill-through table in a model. You can choose which columns to return, filter the rows by specified criteria and limit the number of rows returned. 

Did this page help you?