MCP Server
The Flogo MCP Server trigger is an implementation that facilitates connections between Large Language Model (LLM) applications (MCP Clients) and various data sources through tools, prompts, and resources. This section covers the essential configuration settings for the MCP Server, including limitations, trigger settings, handler settings, and output configurations.
Scope-based access control for JWT authentication: The Required Scope field on MCP Server handlers enables per-tool, per-prompt, and per-resource authorization based on JWT token scopes.
Structured content support for tool responses: The Reply Settings tab with Tool Output Schema and a structuredContent field in Map from Flow Outputs enable MCP tools to return structured, schema-validated responses alongside text responses.
Enhanced tokenInfo claims: The tokenInfo object in Map to Flow Inputs now exposes additional standard JWT claims (iss, sub, aud, name, email, given_name, family_name, preferred_username) for richer authorization and audit logging.
OAuth 2.0 authentication support.
Trigger Settings
| Field | Required | Description |
|---|---|---|
| Trigger Settings | ||
| Server Name | Yes | The MCP server name. |
| Server Version | Yes | The MCP Server version. |
| Server Type | The following server types are supported:
|
|
| HTTP Server Port | The port for HTTP Server. The default port is 8080. | |
| Stateless Server |
Specifies whether the server operates in stateless mode. Set to True for containerized deployments with a load balancer, where each request is treated independently. Note: In stateless mode, the elicitation, sampling, and logging activities are not supported, as they require a stateful connection to the client.
|
|
| HTTP Server Endpoint Path | Endpoint path for HTTP Server. Default is /mcp. |
|
| Enable TLS |
Enable TLS for HTTP Server. Default is Note: When deploying an MCP server trigger application on TIBCO® Control Plane, set TLS to
False and rely on the secure connection managed by the ingress controller.
|
|
| Authentication Type |
The following Authentication Types are supported:
Note: When configuring JWT tokens, ensure the following requirements:
|
|
| Secret | The secret for authentication. The secret can be used for authentication when the Authentication Type is "API Key" or "JWT Token". | |
| OAuth Issuer |
Authorization server issuer URL. This value must match the
Example: |
|
| JWKS URL |
JSON Web Key Set endpoint URL. The trigger fetches signing keys from this URL to verify incoming JWT signatures and automatically refreshes the key set when keys rotate. |
|
| Audience |
Expected |
|
| Authorization Servers |
Optional comma-separated list of authorization server issuer URLs advertised at /.well-known/oauth-protected-resource. Defaults to the OAuth Issuer value. |
|
| Required Scopes |
Optional space-separated list of scopes required on every request. Per-handler scopes set on individual MCP primitives still apply. |
|
| Resource URL |
Optional canonical resource URL advertised in the protected resource metadata document and used as the WWW-Authenticate resource_metadata target. Defaults to the public URL of this MCP server. |
|
| Handler Settings | ||
| MCP Primitive Type | The following MCP primitive types are supported:
These primitives use a JSON Schema data model. You can define input arguments as JSON Schema on the Output Settings tab. |
|
| MCP Primitive Name | Yes | Name of the MCP primitive. |
| MCP Primitive Description | No | Description of the MCP primitive. |
| Tool Title | No | Human-readable display title for the tool, separate from the tool name. |
| ReadOnly Tool | Specifies whether the tool can modify its environment. Set to True if the tool is read-only. | |
| Destructive Tool | Specifies the nature of updates. Set to True if the tool may perform destructive actions (for example, deleting data). If False, it only performs additive updates. | |
| Idempotent Tool | Specifies if repeated calls with the same arguments have additional effects. If True, subsequent identical calls will not change the environment further. | |
| Open World Tool | Specifies if the tool can interact with external entities. If True, it can interact with an "open world" of external entities. If False, its interactions are limited to a closed domain. | |
| Required Scope | No |
Specifies the scope that must be present in the JWT token’s scp claim for the client to be authorized to invoke this MCP primitive (tool, prompt, or resource). The value is matched exactly and is case-sensitive against the list of scopes extracted from the token. When left empty, no scope check is performed, and any authenticated client with a valid JWT token can invoke this primitive. Example values: orders:read, inventory:write, admin:manage. Note: This field is applicable only when the trigger’s Authentication Type is set to JWT Token.
|
| Resource URI | Yes | Set Resource URI when the primitive type is configured to Resource. You can set a static resource name (docs://readme) or a dynamic resource name (users://{id}/profile). When configuring a dynamic resource path, ensure that the corresponding JSON Schema defining path parameters are configured on the Output Settings tab.When configuring a dynamic resource path, the path parameter is automatically generated in the corresponding JSON Schema on the Output Settings tab. |
Output Settings
The Output Settings tab has the following fields:
| Field | Description |
|---|---|
| Schema for Arguments | The JSON schema for the tool, prompt, or resource arguments. |
| Schema for HTTP headers | The JSON schema for the HTTP headers. Configure only if you want to handle HTTP headers from tool/prompt/resource request. |
Map to Flow Inputs
Use the Map to Flow Inputs tab to map the trigger output to the flow input based on the arguments JSON schema.
| Flow Input | Description |
|---|---|
arguments
|
The arguments from the trigger that you can map to flow inputs. |
httpHeaders
|
The HTTP headers from the trigger that you can map to flow inputs |
tokenInfo
|
The token information from the trigger, which includes scopes and expiration details from the JWT token, that you can map to flow inputs. The |
Reply Settings
The Reply Settings tab has the following field:
| Field | Description |
|---|---|
| Tool Output Schema | A JSON Schema that defines the structure of the tool’s structured response. When configured, MCP clients can discover the expected output structure at design time. The schema follows the standard JSON Schema specification and defines the properties, types, and descriptions of each field in the structured response. When no schema is configured, the tool returns only a text response via the response field. When configured, the tool can additionally return a structuredContent object in the trigger reply. |
Map from Flow Outputs
Use the Map from Flow Outputs tab to map the flow output to the trigger reply.
| Trigger Reply Field | Type | Description |
|---|---|---|
| response | Object |
The primary tool response. Map the flow output to the text content returned to the MCP client. This field is required and acts as the fallback response for clients that do not support structured content. The response object includes the following fields:
|
| structuredContent | Object | The structured data response. Maps the flow output to a structured content object returned to the MCP client alongside the text response. The structure of this object should conform to the Tool Output Schema defined in the Reply Settings tab. When both response and structuredContent are mapped, MCP clients receive both. Clients that support structured content can use the structuredContent object; others fall back to the response text. |