Connecting to WisdomAI MCP Server (v7.1.2)

Metric Insights Concierge Service supports integration with WisdomAI via the Model Context Protocol (MCP) Server. Establishing this connection allows Users to interact with WisdomAI resources directly from the Concierge interface.

This article outlines the configuration steps required to set up WisdomAI and connect it to Concierge via MCP Server.

1. Collect Data from WisdomAI Account

To establish connection between Concierge and WisdomAI MCP Server you need to obtain a Token and an Account ID, as well as Domain Name, Domain Description and a Domain ID for every used Domain.

1.1. Get Token

To get an access Token, make a request to [email protected].

1.2. Get Account ID

For the Account ID, access the WisdomAI account.

Take a look at the page's URL. The Account ID is placed before "askwisdom.ai" part. Copy and save it.

1.3. Get Domain Name, Domain Description and Domain ID

In the WisdomAI account access Domains tab

Copy and save Domain Name and Domain Description. Click the Domain name to open its editor.

When on the Domain editor page, take a look at the URL. The Domain ID is placed at the end of the URL. Copy and save it for every Domain that will be used.

2. Configure External Resource

Go to Metric Insights, access Admin > Concierge Setup and open the Content Sources tab

  1. [+ Add External Resource Configuration]
  2. Name: Give the external resource a descriptive name.
  3. Add a block of JSON code.

It is recommended to use the following JSON code for WisdomAI External Resource configuration.

NOTE: Pay attention to the info in the {blue curly braces}. Those pieces of data are obtained in Step 1. For more details, check the table below.

Code Example

{
    "name": "wisdomai",
    "title": "Wisdom AI",
    "display": "raw",
    "data_transformer": "ai.scenarios.mcp_data_transformers.wisdom_ai.WisdomAITransformer.transform",
    "custom_handler": "ai.scenarios.mcp_custom_handlers.wisdom_ai.WisdomAICustomHandlers.register_all_handlers",
    "icon":"wisdomai",
    "scope": "Questions about the actual data to WisdomAI, 'talk to your data' solution.  \n Use this tool to answer questions about following:  \n Domain: {DOMAIN_NAME} \n Description of available content: {DOMAIN_DESCRIPTION}\n (! important): Pass only ONE most relevant domain ID to the API if user chooses multiple domains.\n(! important): user_email is required.\n Use streaming as true.",
    "scenario_type":"mcp_single_tool",
    "mcp_server": {
        "url": "https://{ACCOUNT_ID}.askwisdom.ai/mcp",
        "name": "wisdom_ai",
        "auth": {
                "Authorization": "Bearer {TOKEN}"
        } 
    },
    "tool": "chat",
    "require_user_email": "true",
    "display_progress": "{{title}} : {{progress | int}}/{{total | int}} {{message}}",
    "timeout": 600
}

WisdomAI Code Specifics

FieldDescription
nameThe value of this field should be unique and exactly match the Name field in the UI above the editor. It is allowed to use A-Z/a-z alphabetic symbols, digits, and underscore (_) when setting a name.
titleThe display name. This name is shown in the All Sources button and in Concierge responses.
displayDefines how data from the external agent is shown. The raw is the required option for this variable. It means that MCP tool execution results will be immediately displayed to the User as is. The data is then post-processed by the data_transformer.
data_transformer
This is the address of the data transformer that converts raw data from WisdomAI to the format compatible with MI Concierge.
custom_handler
The scope contains a "Use streaming as true" phrase, which enables streaming of the content from WisdomAI. This row contains the address of the custom handler, that processes streaming.
icon
This icon is shown in the All Sources button and in Concierge responses. Use the name of the icon from MI Development Icons Library: https://[hostname]/dev/icons
scenario_typeThe mcp_single_tool option is mandatory for this field.
scopeA prompt that instructs the LLM when to use this external resource. The prompt is unique for every environment. This field contains DOMAIN_NAME, DOMAIN_DESCRIPTION and DOMAIN_ID obtained in the Step 1.3.
mcp_serverurlThe URL to use is https://{ACCOUNT_ID}.askwisdom.ai/mcp where ACCOUNT_ID is obtained in the Step 1.2.
nameName of MCP Server. It should be unique and match the name above, but is an optional variable.
authThis field contains TOKEN obtained in the Step 1.1. It is recommended to put the TOKEN into an encrypted substitution variable for better security.
toolscenario_type variable is set to mcp_single_tool, so this field is required. The chat option is mandatory for this field.

require_user_email

This row has to be added if the scope contains "user_email is required." phrase. Available options: true or false. If this row is true, the email of the User who makes a request will be sent to WisdomAI. It is used for the row-level security.
display_progress
The template for displaying MCP execution progress status messages from the MCP server if available.
timeoutRecommended value is from 300 to 600 seconds.

2.1. Add Variables

For better security, it is recommended to place sensible information (like Token) into the encrypted substitution Variable. The Variable can then be used instead of the variable by adding its name in square brackets (like this: [TOKEN]).

Click[+ Create Variable]and add the Name and Value to the Variable.

Don't forget to [Save] the External Resource.

WisdomAI will appear in the All Sources menu after adding a Domain to its External Resource.