Skip to main content

Setup and Configuration

Prerequisites

Before running the FlowOn AI MCP Server, ensure the following are in place:

RequirementDetails
FlowOn LogicInstalled and licensed in the target Dataverse environment
Dataverse ConnectionConnection string or service principal credentials for the target environment
.NET Runtime.NET 8 or later
AI ClientAn MCP-compatible AI assistant (Claude, GitHub Copilot, etc.)

Configuration

The server is configured through appsettings.json. At minimum, provide your Dataverse connection string and specify which FlowOn products are active in your environment:

{
"ConnectionStrings": {
"Dataverse": "AuthType=ClientSecret;Url=https://yourorg.crm.dynamics.com;..."
},
"FlowOn": {
"Products": ["FlowOnLogic", "FlowOnBpm"]
}
}

Product Values

ValueFlowOn Product
FlowOnLogicEnables Logic Block, Logic Flow, Logic Recipe, and Project tools
FlowOnBpmEnables Business Process tools

Only include products that are installed and licensed in the connected environment. Tools for unlicensed products will not be registered.


Running with Docker

The MCP Server ships with a Dockerfile for containerised deployments:

docker build -t flowon-mcp-server .
docker run -e ConnectionStrings__Dataverse="AuthType=ClientSecret;..." flowon-mcp-server

Environment Variable Overrides

Any appsettings.json value can be overridden using environment variables following the standard .NET configuration pattern (__ as section separator):

appsettings.json KeyEnvironment Variable
ConnectionStrings:DataverseConnectionStrings__Dataverse
FlowOn:ProductsFlowOn__Products

Connecting to Your AI Client

Once the server is running, connect it to your AI client by pointing the client's MCP configuration at the server's endpoint. The server supports both stdio and HTTP/SSE transport modes.

stdio Mode

Suitable for local development and desktop AI clients:

{
"mcpServers": {
"flowon": {
"command": "dotnet",
"args": ["run", "--project", "FlowOn.Xrm.AI.McpServer"]
}
}
}

HTTP/SSE Mode

Suitable for server-hosted deployments and team-shared MCP configurations:

{
"mcpServers": {
"flowon": {
"url": "http://your-mcp-server-host:port/sse"
}
}
}

Refer to your AI client's documentation for the exact configuration format and file location.


One MCP Server Per Environment

┌─────────────────────────────────────────────────────────────────────┐
│ ENVIRONMENT ISOLATION PATTERN │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ MCP Server │ │ MCP Server │ │ MCP Server │ │
│ │ (Dev) │ │ (UAT) │ │ (Prod) │ │
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Dataverse │ │ Dataverse │ │ Dataverse │ │
│ │ Dev Env │ │ UAT Env │ │ Prod Env │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ AI agents connect to the environment-specific instance. │
│ Managed solution protection prevents accidental production edits. │
│ │
└─────────────────────────────────────────────────────────────────────┘

Configure a separate MCP Server instance for each Dynamics 365 environment. This ensures AI agents operate only in the intended environment and that Managed Solution Protection guards production correctly.