Skip to main content
The MCP server includes tools for querying Omni data and searching the official Omni docs for product and “How do I…”-type questions.

Tool availability

To use the MCP server tools, the following settings must be enabled:
  • The top-level MCP server setting in AI Hub > MCP. Enabled by default.
  • The Enable AI and Omni Agent settings in AI Hub > Features. The MCP querying and docs search tools use the same AI pipeline as the Omni Agent, so disabling Omni Agent disables every MCP tool except pickModel. The tools will still appear in your MCP client, but calls will return 403 Feature is not enabled errors.
Organization Admins can also individually enable or disable tool capabilities in the MCP settings page. If certain tools are not available in your MCP client, check with an Organization Admin to confirm which capabilities are enabled for your organization.

Querying

The MCP server uses the tools in this section to process the queries it receives.

pickModel

Returns a list of available models and their IDs, which the MCP client uses to select which model to query. You can also provide a model ID in the MCP configuration to skip this step. This tool is available if the Agentic capabilities or Single shot query generation setting is enabled.

pickTopic

Returns available topics in the model selected by pickModel and selects the most relevant topic for the query. If the AI is allowed to query any view in the model (enabled with the X-MCP-Query-All-Views header during setup), this step becomes optional: the AI can query any view in the model directly, not just topics. This tool is available if the Agentic capabilities or Single shot query generation setting is enabled.

getData

The Single shot query generation setting must be enabled to use this tool.
Executes the query against the selected model and topic (or view, if the AI can query outside of topics) and returns the results.

runQuery

The Single shot query generation setting must be enabled to use this tool.
Accepts a JSON query definition and executes it directly against the Run query API, without requiring the AI to construct a query from a model and topic selection. Use this tool when the query JSON is already known — for example, you paste a query definition or the query definition was produced earlier in the conversation. When using this tool, note that:
  • Results default to a limit of 500 rows and cap at 10,000
  • Keys such as userEditedSQL that would cause the query to run raw SQL against the connection will be refused
  • If a model is provided with the X-MCP-Topic-Name header during setup and query.modelId is also provided, they must match or the request will fail

Advanced agentic queries

The Agentic capabilities setting must be enabled to use the tools in this section.
For complex, multi-step questions that require deeper analysis beyond what a single query can provide, the MCP server includes two additional tools that expose Omni’s full agentic AI assistant: askOmni and checkStatus. Using these tools together prevents timeout issues that could occur if waiting for long-running agentic jobs to complete in a single request.

askOmni

Submits an agentic analysis job to Omni and returns immediately without waiting for completion. Designed for open-ended questions that may require multiple steps, data exploration, or iterative analysis. When a branchId is provided, the agentic job runs its queries against that model branch and any model edits the agent makes are saved to that branch rather than creating a new one. This tool can also:
  • Create and edit dashboards. - When you ask the agent to edit an existing dashboard, the changes land in a draft. The changes won’t be live until you review and manually publish the changes. Brand new dashboards created by the agent are published immediately.
  • Create and find routines. Ask for something recurring (“every Monday at 9am, email me a summary of last week’s signups”) and the agent sets up a scheduled prompt that runs with your permissions and delivers by email or Slack. You can also find or list your existing routines (“what do I have scheduled?”) and the agent returns matches as edit links.

checkStatus

Polls the status of a previously submitted job using its jobId.

listBranches

Lists existing branches of a given base model. Use this tool alongside askOmni’s branchId parameter to target an existing branch instead of creating a new one. This tool does not honor the X-MCP-User-ID impersonation header. When using an Organization API key, the results reflect the API key owner’s permissions rather than the impersonated user’s permissions.

listSkills

To use these tools, the Skills and Chat settings in AI Hub > Features must be enabled and the calling user must have AI access.
Finds a saved skill by name, identifier, or description and reads its instructions. This tool does not run a skill. If you’re an Organization Admin, all skills in the organization will be returned; otherwise, only skills you created will be returned. This tool honors the X-MCP-User-ID impersonation header, resolving visibility for the impersonated member.

Content access

The Content access setting must be enabled to use the tools in this section.
Allows the MCP server to search your organization’s saved content, like dashboards and apps, see the queries a dashboard contains, and run them.

searchContent

Searches your Omni organization for existing dashboards and apps that match a provided name, folder, or tile name. This helps prevent generating new queries for data that already exists in a saved dashboard or app. Each result includes a type indicating whether it’s a dashboard or an app. Search results are scoped using the calling user’s API key or the X-MCP-User-ID impersonation header (if provided), ensuring that results reflect what the user can access according to their content and model permissions.

listDocumentQueries

Lists the saved queries in a document, such as a workbook or app. This tool is designed to pair with searchContent — search finds the document, this tool shows the queries it contains. This tool does not honor the X-MCP-User-ID impersonation header. When using an Organization API key, the results reflect the API key owner’s permissions rather than the impersonated user’s permissions.

runSavedQuery

Executes a saved query by ID and returns the current results as JSON. This tool is designed for pulling consistent, model-aware data from a known query rather than generating a new query. If an invalid or inaccessible queryId is provided, the tool returns an error without listing tile names to prevent information disclosure beyond impersonation scope. Use listDocumentQueries to retrieve valid queryId values for a document. Query results are scoped using the calling user’s API key or the X-MCP-User-ID impersonation header (if provided), ensuring that data access safeguards such as row-level security (RLS) and access grants are respected.

startDashboardDownload

Starts an asynchronous job to download a dashboard as a PNG file, using the Initiate dashboard download API. The tool only accepts a dashboard identifier — none of the other options in the UI’s download dialog (such as row limits or paper size) are exposed to the model, since a PNG is the only format the tool requests. This tool honors the X-MCP-User-ID impersonation header: the download job is created as the impersonated user. Only one download job can run per user per dashboard at a time. If a download is already in progress, the tool returns an error that names the existing job’s ID and points to checkDashboardDownload and fetchDashboardDownload.

checkDashboardDownload

Polls the status of a dashboard download job started by startDashboardDownload, using its jobId. This tool honors the X-MCP-User-ID impersonation header.

fetchDashboardDownload

Retrieves the finished PNG file for a completed dashboard download job, using its jobId. Files larger than 10 MB are refused. When this happens, the tool explains how to download the file directly from the API instead. This tool honors the X-MCP-User-ID impersonation header.

Apps

The Content access setting must be enabled to use the tools in this section. putApp, patchApp, and publishDraft also require Agentic capabilities to be enabled.
Allows the MCP Server to read and write the HTML behind an app’s draft, then publish the draft so viewers see the change. Changes made with putApp or patchApp land on the document’s shared main draft and are invisible to other viewers until publishDraft runs. The recommended flow is to read the draft with getAppDraft, falling back to getApp only when no draft exists yet, then write, then publish. App settings cannot be changed using these tools. Use the Omni UI to modify app settings.

getApp

Reads a published app document’s complete HTML source and sandbox settings, given a document identifier. Draft edits are not included in the response; use getAppDraft instead. Very large apps may not be retrievable, since the returned HTML has a size cap. This tool does not honor the X-MCP-User-ID impersonation header. When using an Organization API key, the results reflect the API key owner’s permissions rather than the impersonated user’s permissions.

getAppDraft

Reads the main draft’s app HTML and settings.

putApp

Replaces the app’s HTML on the document’s shared main draft. The draft is created automatically on the first write and reused on subsequent writes. This tool does not honor the X-MCP-User-ID impersonation header. Providing it returns an error instead of running the request as the impersonated user.

patchApp

Applies htmlEdits to the app on the document’s shared main draft, instead of replacing the whole HTML. Like putApp, the draft is created automatically on the first write and reused on subsequent writes. This tool does not honor the X-MCP-User-ID impersonation header. Providing it returns an error instead of running the request as the impersonated user.

publishDraft

Publishing a draft publishes all the changes it contains, including any other editors’ unpublished changes to the same document.
Publishes the main draft so its changes become visible to viewers. Before publishing, this tool reads the draft to confirm it contains an app, and refuses if it doesn’t. This tool does not honor the X-MCP-User-ID impersonation header. Providing it returns an error instead of running the request as the impersonated user.

Search Omni docs (searchOmniDocs)

The Omni documentation search setting must be enabled to use this tool.
Searches the Omni documentation and synthesizes answers in response to prompts that ask questions about how to use Omni. Responses include citations to documentation pages used to construct the answer to the prompt. This tool uses the same AI-powered search pipeline as the Omni Agent, ensuring accurate and contextually relevant responses. For example, you could ask “How do I create a calculated field in Omni?” and the searchOmniDocs tool will search the documentation, analyze the relevant pages, and return a comprehensive answer with links to the source documentation.

Tool and setting comparison

The following table shows what MCP tools are available if a specific MCP setting is enabled.
A icon indicates that additional settings must be enabled to use a tool - hover over the icon to view the names of the additional settings.
  • Skills - Build reusable, AI-powered processes that your team can trigger with a single click or mention
  • AI MCP settings - Enable and disable MCP server tool capabilities
  • AI feature settings - Enable and disable individual AI features in your Omni organization
  • AI Hub - Monitor how your organization uses Omni AI