Skip to content

Discovery Tools

Discovery tools let you explore what is available — registered sites, supported platforms, their visual catalogs, and assets on a live BI platform. All discovery tools are read-only.


list_sites

Lists all sites registered in the MCP server (from sites/*.json). Use this to choose id_site for site-scoped tools.

Parameters

None.

Response

{
  "sites": [
    {
      "idSite": "my-bi-site",
      "siteName": "My BI Platform Production",
      "idPlatform": "my-platform",
      "platformName": "My BI Platform",
      "siteConnectionFactoryName": "MyOrg.Connectors.MyPlatform.MyConnectionFactory, MyOrg.Connectors.MyPlatform",
      "siteConverterFactoryName": "MyOrg.Converters.MyPlatform.MyConverterFactory, MyOrg.Converters.MyPlatform"
    }
  ]
}

list_bi_platforms

Lists BI platforms registered under platforms/*/info.json. Use list_bi_platform_visual_types with a platform id for the visual catalog.

Parameters

None.

Response

[
  { "id": "my-platform", "name": "My BI Platform" }
]

list_bi_platform_visual_types

Returns the visual type catalog for one BI platform (platforms/{platform_id}/visualtypes.json).

Parameters

Name Type Required Description
platform_id string Platform id from list_bi_platforms

Response

{
  "platformId": "my-platform",
  "platformName": "My BI Platform",
  "visualTypes": [
    {
      "objectType": "Chart",
      "visualType": "barChart",
      "openBIVisualType": "Bar Chart",
      "visualDescription": "Bar / column chart",
      "visualTypeProjection": "Category",
      "projectionDescription": "Category axis field",
      "order": 1,
      "projectionAllowsMultipleValues": false,
      "platformId": "my-platform"
    }
  ]
}

Each entry in visualTypes describes one (visual, projection-role) pair. A visual with multiple roles (e.g. X Axis, Y Axis, Legend) appears as multiple rows.


list_bi_platform_asset_types

Lists asset types available for a platform, each with an authoring instruction document.

Required before authoring

After the user selects an asset type, you MUST call get_bi_platform_asset_type_instructions before taking any OpenBI action.

Parameters

Name Type Required Description
platform_id string Platform id from list_bi_platforms

Response

{
  "platformId": "my-platform",
  "platformName": "My BI Platform",
  "assetTypes": [
    { "id": "Report", "title": "Report" },
    { "id": "DataModel", "title": "Data Model" }
  ]
}

get_bi_platform_asset_type_instructions

Returns the full Markdown authoring instructions for one asset type/platform combination. These instructions define the rules, step order, and constraints an AI agent must follow when building that type of asset.

Parameters

Name Type Required Description
platform_id string Platform id from list_bi_platforms
asset_type_id string Asset type id from list_bi_platform_asset_types

Response

{
  "platformId": "my-platform",
  "assetTypeId": "Report",
  "instructionsMarkdown": "# Report authoring rules\n...",
  "contentEncoding": "utf-8"
}

query_site_assets

Queries the live BI site for available assets. Requires a configured siteConnectionFactoryName in the site JSON.

Parameters

Name Type Required Description
session_id string Session id from create_session
id_site string Site id from list_sites
asset_type string Optional platform asset type filter (e.g. "Report", "DataModel")
folder_id string Optional folder id filter

Response

{
  "status": "Success",
  "assets": [
    {
      "externalId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "name": "Sales Dashboard",
      "type": "Report",
      "folderId": "folder-guid"
    }
  ]
}

get_folders

Lists folders for the specified BI site. The ExternalID of each folder is used as folder_id in upload_asset and as the filter in query_site_assets.

Parameters

Name Type Required Description
session_id string Session id from create_session
id_site string Site id from list_sites

Response

{
  "status": "Success",
  "folders": [
    { "name": "Finance Team", "externalId": "folder-guid" }
  ]
}

create_folder

Creates a new folder on the specified BI site.

Parameters

Name Type Required Description
session_id string Session id from create_session
id_site string Site id from list_sites
name string Display name for the new folder
description string Optional description

Response

{
  "status": "Success",
  "folder": { "name": "New Folder", "externalId": "new-folder-guid" }
}