Last updated:
MCP
MCP lets you create and manage your own Model Context Protocol (MCP) configurations. Each configuration creates an MCP service that external MCP clients, such as AI applications and services from OpenAI, can connect to.
This is the reverse direction of the external MCP tools an agent can use: here, Any2Info is the one exposing capabilities, not consuming them.
An MCP configuration determines which Any2Info resources are exposed through capabilities. Two types are supported:
- Dataclip: exposes data through an existing dataclip.
- Dataflow: exposes functionality through an existing dataflow.
Each capability can be switched on or off individually, and shows its effects: whether it reads, writes, or deletes data.
You open the module through AI Studio → MCP. Access is controlled by the MCP authorization.
Designer overview
Section titled “Designer overview”The MCP designer has three main areas.
Configuration explorer
Section titled “Configuration explorer”On the left side of the designer, you can create, edit, delete, and organize MCP configurations into folders.
Configuration editor
Section titled “Configuration editor”The center section contains the editor for the selected configuration, with two tabs.
General shows basic information about the configuration:
| Property | Description |
|---|---|
| Name | Name of the MCP configuration. |
| Endpoint URL | URL that external MCP clients use to connect. It’s generated from the configuration’s GUID and can’t be changed, but you can copy it. |
Capabilities lists all capabilities of the configuration in a table:
| Property | Description |
|---|---|
| Name | Name inherited from the dataflow or dataclip. |
| Type | Whether the capability comes from a dataflow or a dataclip. |
| Description | Explanation of what the capability does. |
| Effects | Which data operations the capability can perform. See Capability effects. |
| Active | Whether the capability is available to MCP clients. |
A dataflow and a dataclip may share the same name, since they’re distinguished by their capability type. Capability ordering is managed internally and can’t be changed manually.
Properties
Section titled “Properties”The right-hand panel holds the high-level configuration settings:
| Property | Description |
|---|---|
| Explanatory note | Optional note describing the purpose of the configuration. |
| Disabled | Disables the entire configuration. |
Internal identifiers such as the configuration ID and GUID are shown for reference.
Managing capabilities
Section titled “Managing capabilities”Add a capability
Section titled “Add a capability”- Open an MCP configuration and go to the Capabilities tab.
- Select Add capability above the table.
- Select a dataflow or dataclip. It’s added to the table, with its name taken from the source object.
Edit the description
Section titled “Edit the description”Descriptions help MCP clients understand what a capability does. You can maintain the description in the dataflow or dataclip designer, or through the description option in the ellipsis menu of the capability row.
Write a clear description of what the capability does and which information or functionality it provides.
Remove a capability
Section titled “Remove a capability”Open the ellipsis menu of the capability row and select the remove option. This doesn’t delete the underlying dataflow or dataclip.
Enable or disable a capability
Section titled “Enable or disable a capability”An active capability is available through the MCP service. An inactive one is temporarily unavailable, but stays in the configuration. Use this when functionality must be switched off for a while without losing its setup.
Deleted source objects
Section titled “Deleted source objects”If a dataflow or dataclip is deleted after being added as a capability, it’s automatically filtered out when an MCP client retrieves the available capabilities, so it’s never exposed.
Capability effects
Section titled “Capability effects”Effects describe the types of data operations a capability can perform. The MCP designer shows the calculated effects of every capability. They’re inherited from the underlying dataflow or dataclip and can’t be overridden in the MCP designer.
| Effect | Description |
|---|---|
| Unknown | The effect could not be determined. |
| Read | Reads data in some way. |
| Write | Creates or updates data in some way. |
| Delete | Deletes data or marks data for deletion. |
A capability can have several effects at once, for example Read + Write. Unknown can’t be combined with other effects.
- Dataclips always have the effect
Read. This is assigned automatically. - Dataflows get their effects from the nodes they contain, calculated each time the dataflow is saved. Some nodes, such as REST API, database, and Execute Dataflow nodes, have effects you configure yourself. See Dataflow effects for how this works.
To change the effects of a dataflow capability, change the relevant nodes in the dataflow and save it.
MCP tool annotations
Section titled “MCP tool annotations”MCP supports tool annotations that tell clients how a tool behaves. Any2Info capability effects are intended to be translated into the standard annotations readOnlyHint and destructiveHint, so compatible clients can recognize whether a capability is read-only or may change data:
| Any2Info effects | readOnlyHint | destructiveHint |
|---|---|---|
| Read | true | false |
| Unknown | false | true |
| Any combination with Write or Delete | false | true |
The mapping is conservative on purpose: a Write can overwrite existing data, so it’s treated as potentially destructive, and Unknown is never assumed to be safe.
Other standard annotations, such as idempotentHint and openWorldHint, can’t be reliably determined from the effects and aren’t set.
Authentication
Section titled “Authentication”The generated MCP endpoint uses the standard Any2Info authentication: OAuth 2.0 with an Any2Info bearer token. Clients must authenticate successfully before they can access the MCP service.
Authentication and authorization decide whether a client may use the endpoint and its functionality. Capability effects don’t replace authorization.
- Go to AI Studio → MCP and create a new configuration in the configuration explorer.
- Enter an explanatory note if required.
- Open the Capabilities tab and select Add capability.
- Add the dataflows or dataclips to expose.
- Review the descriptions and calculated effects, and make sure the required capabilities are active.
- Open the General tab and copy the endpoint URL.
- Configure an external MCP client to use the endpoint with Any2Info OAuth 2.0 authentication.
Example: exposing customer information
Section titled “Example: exposing customer information”An AI application must retrieve customer information. A dataclip named CustomerOverview is available. After adding it as a capability, it automatically gets:
- Name: CustomerOverview
- Type: Dataclip
- Effects: Read
The description explains which customer information is available. An authenticated MCP client can then discover and use the capability.
Example: exposing a dataflow that changes data
Section titled “Example: exposing a dataflow that changes data”An AI application must update customer information. A dataflow named UpdateCustomer reads customer information and then updates customer records, so its calculated effects are Read + Write. When it’s added as a capability, these effects are inherited automatically, and an MCP client can recognize that the capability may change data.
Tips & best practices
Section titled “Tips & best practices”Capabilities
- Only expose dataflows and dataclips that are intended for external MCP clients.
- Use clear capability names and descriptions.
- Temporarily disable a capability using Active instead of removing it, when you may need it again.
- Organize configurations into folders.
- Review capabilities when their underlying dataflows or dataclips change.
Effects
- Make sure configurable nodes have effects that match their behavior, especially REST API, database, and Execute Dataflow nodes.
- Save a dataflow after changing nodes or effect settings, so its effects are recalculated.
- Treat
Unknownas a sign that the behavior couldn’t be determined. - Review capabilities with
WriteorDeletecarefully before exposing them to external AI clients.
Security
- Use valid Any2Info OAuth 2.0 authentication, and give external clients only the access they need.
- Don’t rely on capability effects as a security mechanism.
- Consider the consequences of exposing dataflows that can change or delete information.
Troubleshooting
Section titled “Troubleshooting”| Situation | Possible cause | Solution |
|---|---|---|
| The MCP endpoint can’t be accessed | Invalid or missing authentication. | Check the OAuth 2.0 authentication and bearer token. |
| A capability isn’t available | The capability is inactive. | Check the capability’s Active state. |
| A previously configured capability is missing | The underlying dataflow or dataclip was deleted. | Check that the source object still exists. |
| The entire MCP service is unavailable | The configuration is disabled. | Check Disabled in the properties panel. |
| Unexpected capability effects | One or more nodes have incorrect effect settings. | Review the nodes of the dataflow and their configured effects. |
| Effects don’t reflect recent dataflow changes | The dataflow hasn’t been saved since the changes. | Save the dataflow to recalculate its effects. |
| An Execute Dataflow node shows unexpected effects | The node has configured effects that differ from the called dataflow. | Review the effects property of the Execute Dataflow node. |
| A capability shows Unknown | The effects could not be determined. | Review the effects of the underlying nodes and configure them where supported. |