One of:
-
Sse Client (Deprecated)
Anypoint Connector for MCP (MCP Connector) allows Mule applications to act as both MCP servers and clients. When acting as an MCP client, MuleSoft facilitates the creation of integrations and orchestrations where AI agents are integrated as just another system in the workflow.
Configuration element that acts as a client and connects to an MCP server.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Name |
String |
Name for this configuration. Connectors reference the configuration with this name. |
Yes |
|
Connection |
One of:
|
The connection types to provide to this configuration. |
Yes |
|
Client Name |
String |
Name the client uses to identify itself during the protocol initialization phase. This isn’t the same as the name given to this config element (which is later referenced through config-ref parameters). This name doesn’t need to be unique. |
Yes |
|
Client Version |
String |
Version the client uses to identify itself during the protocol initialization phase. This doesn’t need to match the connector or Mule application version. |
Yes |
|
Name |
String |
ID used to reference this configuration. |
Yes |
|
Expiration Policy |
Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. |
Streamable HTTP transport is recommended.
The SSE (Server-Sent Events) Client connection type enables MCP Connector to establish a persistent, one-way (server-sent) connection to an MCP server using the SSE standard. This type of connection allows the MCP server to push real-time updates and messages to the client without the need for the client to constantly poll for new information.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Request Timeout |
Number |
Sets the duration to wait for server responses before timing out requests. |
30 |
|
Request Timeout Unit |
Enumeration, one of:
|
Time Unit for the requestTimeout parameter |
SECONDS |
|
Authentication |
HttpRequestAuthentication |
|||
Server Url |
String |
The base URL for the target MCP server |
Yes |
|
Sse Endpoint Path |
String |
/sse |
||
Reconnection Delay |
Number |
Specifies how long to wait before reinitializing the SSE connection when it times out or closes. |
500 |
|
Reconnection Delay Unit |
Enumeration, one of:
|
Time Unit for the reconnectionDelay |
MILLISECONDS |
|
Tls Context |
||||
Reconnection |
When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy. |
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Request Timeout |
Number |
Sets the duration to wait for server responses before timing out requests. |
30 |
|
Request Timeout Unit |
Enumeration, one of:
|
Time Unit for the requestTimeout parameter |
SECONDS |
|
Authentication |
HttpRequestAuthentication |
|||
Server Url |
String |
The base URL for the target MCP server |
Yes |
|
Mcp Endpoint Path |
String |
/mcp |
||
Tls Context |
||||
Reconnection |
When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn’t pass after exhausting the associated reconnection strategy |
Configuration element to act as an MCP server.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Name |
String |
Name for this configuration. Connectors reference the configuration with this name. |
Yes |
|
Connection |
The connection types to provide to this configuration. |
Yes |
||
Server Name |
String |
Name this server uses to identify itself during the protocol initialization phase. This isn’t the same as the name given to this config element (which is later referenced through config-ref parameters). This name doesn’t need to be unique. |
Yes |
|
Server Version |
String |
Version this server uses to identify itself during the protocol initialization phase. This doesn’t need to match the connector or Mule application version. |
Yes |
|
Name |
String |
ID used to reference this configuration. |
Yes |
Exposes the MCP server using the SSE transport, as defined in HTTP with SSE.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Request Timeout |
Number |
Request timeout |
10 |
|
Request Timeout Unit |
Enumeration, one of:
|
Request Timeout unit |
SECONDS |
|
Listener Config |
String |
Reference to the HTT Listener config used to expose the SSE and messaging endpoints. |
Yes |
|
Sse Endpoint Path |
String |
The endpoint path clients use to initiate the SSE connection. |
/sse |
|
Messages Path |
String |
The path to send the messaging endpoint request to. |
/message |
|
Default Sse Response Headers |
Object |
|||
Default Message Response Headers |
Object |
|||
Reconnection |
When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn’t pass after exhausting the associated reconnection strategy |
Exposes the MCP server using the Streamable HTTP transport, as defined in Streamable HTTP.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Request Timeout |
Number |
Request timeout |
10 |
|
Request Timeout Unit |
Enumeration, one of:
|
Request Timeout unit |
SECONDS |
|
Listener Config |
String |
Reference to the http:listener-config used to expose the SSE and messaging endpoints. |
Yes |
|
Mcp Endpoint Path |
String |
The endpoint path clients will use to initiate the SSE connection |
|
|
Response Content Type |
Enumeration, one of:
|
Whether responses should be sent by initiating a SSE stream or returning a single application/json body. |
SSE |
|
Default Response Headers |
Object |
Custom headers to include on all valid responses (not including rejected invalid requests). |
||
Session Idle Timeout |
Number |
Timeout for idle sessions |
5 |
|
Session Idle Timeout Unit |
Enumeration, one of:
|
Time unit qualifying the sessionIdleTimeout |
MINUTES |
|
Sessions Object Store |
ObjectStore |
An ObjectStore used to store session information. When deploying to multiple replicas, it is recommended to define a specific object store that will be distributed across all of them, either through Hazelcast or OSv2. If not specified, a default transient instance will be created. |
||
Reconnection |
When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn’t pass after exhausting the associated reconnection strategy |
<mcp:call-tool>
Invokes a tool in a remote MCP server.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Tool Name |
String |
Name of the tool to invoke. |
Yes |
|
Arguments |
Object |
The tool’s input arguments. |
#[payload] |
|
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Additional Properties |
Object |
#[null] |
||
Target Variable |
String |
Name of the variable that stores the operation’s output. |
||
Target Value |
String |
Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field. |
#[payload] |
|
Error Mappings |
Array of Error Mapping |
Set of error mappings |
||
Reconnection Strategy |
Retry strategy in case of connectivity errors. |
<mcp:list-resources>
Lists all the available resources in the remote MCP server.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Streaming Strategy |
|
Configures how Mule processes streams. Repeatable streams are the default behavior. |
||
Target Variable |
String |
Name of the variable that stores the operation’s output. |
||
Target Value |
String |
Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field. |
#[payload] |
|
Error Mappings |
Array of Error Mapping |
Set of error mappings |
||
Reconnection Strategy |
Retry strategy in case of connectivity errors. |
Type |
Array of Resource Metadata |
<mcp:list-tools>
Lists all the available tools in the remote MCP server.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Streaming Strategy |
|
Configures how Mule processes streams. Repeatable streams are the default behavior. |
||
Target Variable |
String |
Name of the variable that stores the operation’s output. |
||
Target Value |
String |
Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field. |
#[payload] |
|
Error Mappings |
Array of Error Mapping |
Set of error mappings |
||
Reconnection Strategy |
Retry strategy in case of connectivity errors. |
Type |
Array of Tool Metadata |
<mcp:ping>
Pings the remote server.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Error Mappings |
Array of Error Mapping |
Set of error mappings. |
||
Reconnection Strategy |
Retry strategy in case of connectivity errors. |
<mcp:read-resource>
Reads a resource referenced by its URI.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Uri |
String |
Yes |
||
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Additional Properties |
Object |
#[null] |
||
Target Variable |
String |
Name of the variable that stores the operation’s output. |
||
Target Value |
String |
Expression that evaluates the operation’s output. The outcome of the expression is stored in the Target Variable field. |
#[payload] |
|
Error Mappings |
Array of Error Mapping |
Set of error mappings |
||
Reconnection Strategy |
Retry strategy in case of connectivity errors. |
<mcp:on-new-session-listener>
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Primary Node Only |
Boolean |
Determines whether to execute this source on only the primary node when running Mule instances in a cluster. |
||
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Redelivery Policy |
Defines a policy for processing the redelivery of the same message. |
|||
Reject With Status Code |
Number |
|||
Reject With Message |
String |
<mcp:resource-listener>
Exposes a resource whose content is generated by the execution of the owning flow. The flow is executed for every received resources/read request. The user can choose to implement the flow so that the resource content is static or to make it dynamic. For instance, a dynamic resource could be a expenses.csv file, that is actually the result of executing a live DB query. Or a static resource could be a file obtained through Amazon S3 and locally cached using the ee:cache
component.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Name |
String |
Name of the resource. |
Yes |
|
Description |
String |
Detailed enough description for an LLM to determine when to read this resource. |
Yes |
|
Uri |
String |
Resource URI. |
Yes |
|
Resource Mime Type |
String |
Resource MIME type. |
Yes |
|
Primary Node Only |
Boolean |
Determines whether to execute this source on only the primary node when running Mule instances in a cluster. |
||
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Redelivery Policy |
Defines a policy for processing the redelivery of the same message. |
|||
Reconnection Strategy |
Retry strategy in case of connectivity errors. |
|||
Resource Listener |
One of: |
Defines the resource content and type. These parameters are evaluated when the flow finishes successfully (when the payload and variables available). |
Yes |
<mcp:tool-listener>
Exposes a tool which result is generated by the execution of the owning flow. The flow will be executed for every received tools/call request. When triggered, the flow will be executed with a message which payload is a Java map holding the input arguments. The tool response is generated when the flow finishes either successfully or with error. In both cases, the response can include several content items of different types. If no error response is defined, then a text content item holding the error’s description will be generated automatically.
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
Name of the configuration to use. |
Yes |
|
Name |
String |
The tool’s name |
Yes |
|
Description |
String |
A detailed enough description for an LLM to determine when this tool should be called |
Yes |
|
Parameters Schema |
String |
A JSON schema defining an object which fields will act as the tool’s input arguments |
Yes |
|
Primary Node Only |
Boolean |
Determines whether to execute this source on only the primary node when running Mule instances in a cluster. |
||
Config Ref |
ConfigurationProvider |
Name of the configuration to use to execute this component. |
Yes |
|
Redelivery Policy |
Defines a policy for processing the redelivery of the same message. |
|||
Reconnection Strategy |
Retry strategy in case of connectivity errors. |
|||
Responses |
Response items when the flow finishes successfully. |
Yes |
||
On Error Responses |
Content items when the flow finishes in error. |
Configures TLS to provide secure communications for the Mule app.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Enabled Protocols |
String |
Comma-separated list of protocols enabled for this context. |
||
Enabled Cipher Suites |
String |
Comma-separated list of cipher suites enabled for this context. |
||
Trust Store |
Configures the TLS truststore. |
|||
Key Store |
Configures the TLS keystore. |
|||
Revocation Check |
Configures a revocation checking mechanism. |
Configures the truststore for TLS.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Path |
String |
Path to the truststore. Mule resolves the path relative to the current classpath and file system. |
||
Password |
String |
Password used to protect the truststore. |
||
Type |
String |
Type of store. |
||
Algorithm |
String |
Encryption algorithm that the truststore uses. |
||
Insecure |
Boolean |
If |
Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Path |
String |
Path to the keystore. Mule resolves the path relative to the current classpath and file system. |
||
Type |
String |
Type of store. |
||
Alias |
String |
Alias of the key to use when the keystore contains multiple private keys. By default, Mule uses the first key in the file. |
||
Key Password |
String |
Password used to protect the private key. |
||
Password |
String |
Password used to protect the keystore. |
||
Algorithm |
String |
Encryption algorithm that the keystore uses. |
Configures standard revocation checks for TLS certificates.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Only End Entities |
Boolean |
Which elements to verify in the certificate chain:
Verify only the last element in the certificate chain.
Verify all elements in the certificate chain. |
||
Prefer Crls |
Boolean |
How to check certificate validity:
Check the Certification Revocation List (CRL) for certificate validity.
Use the Online Certificate Status Protocol (OCSP) to check certificate validity. |
||
No Fallback |
Boolean |
Whether to use the secondary method to check certificate validity:
Use the method that wasn’t specified in the Prefer Crls field (the secondary method) to check certificate validity.
Don’t use the secondary method to check certificate validity. |
||
Soft Fail |
Boolean |
What to do if the revocation server can’t be reached or is busy:
Avoid verification failure.
Allow the verification to fail. |
Configures a custom OCSP responder for certification revocation checks.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Url |
String |
URL of the OCSP responder. |
||
Cert Alias |
String |
Alias of the signing certificate for the OCSP response. If specified, the alias must be in the truststore. |
Specifies the location of the certification revocation list (CRL) file.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Path |
String |
Path to the CRL file. |
Configures a reconnection strategy for an operation.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Fails Deployment |
Boolean |
When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy. |
||
Reconnection Strategy |
Reconnection strategy to use. |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Frequency |
Number |
How often in milliseconds to reconnect. |
||
Count |
Number |
How many reconnection attempts to make. |
||
blocking |
Boolean |
If false, the reconnection strategy runs in a separate, non-blocking thread. |
true |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Frequency |
Number |
How often in milliseconds to reconnect. |
||
blocking |
Boolean |
If false, the reconnection strategy runs in a separate, non-blocking thread. |
true |
Configures an expiration policy strategy.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Max Idle Time |
Number |
Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. |
||
Time Unit |
Enumeration, one of:
|
Time unit for the Max Idle Time field. |
Response obtained from calling a tool as a client.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Contents |
Array of Call Tool Response Content |
The contents generated by the tool |
Yes |
|
Error |
Boolean |
Whether the tool execution was successful or errored out. Notice that even in case of error, contents might have been generated. |
false |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Type |
Enumeration, one of:
|
Content type. |
Yes |
|
Text |
String |
Content’s payload when type is |
||
Mime Type |
String |
Content’s MIME type. |
||
Data |
Binary |
Content’s payload when type is |
||
Resource |
Content’s payload when type is |
|||
Audience |
Array of Enumeration, one of:
|
Describes who the intended consumer of this data is. It can include multiple entries to indicate content useful for multiple audiences. |
||
Priority |
Number |
Describes how important this data is for operating the server. A value of |
A flattened representation of a resource content. The resource can be either text or blob types. The text property is set for text resources, while the blob type is used for the latter.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Uri |
String |
Resource URI |
Yes |
|
Mime Type |
String |
Resource MIME type. |
Yes |
|
Text |
String |
Content of a text resource. Null for BLOB data types. |
||
Blob |
Binary |
Content of a BLOB resource. Null for text data types. |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Source |
Enumeration, one of:
|
|||
Target |
String |
Yes |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Uri |
String |
Resource URI. |
Yes |
|
Name |
String |
Name of the resource. |
Yes |
|
Description |
String |
Description of the resource. |
Yes |
|
Mime Type |
String |
MIME type of the resource. |
Yes |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Initial Buffer Size |
Number |
The amount of memory to allocate to consume the stream and provide random access to it. If the stream contains more data than can fit into this buffer, then the buffer expands according to the Buffer Size Increment value, with an upper limit of the Max In Memory Size value. instances. |
100 |
|
Buffer Size Increment |
Number |
Amount by which the buffer size expands if it exceeds its initial size. Setting a value of |
100 |
|
Max Buffer Size |
Number |
Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
In Memory Objects |
Number |
Maximum number of instances to keep in memory. If more than the maximum is required, content on the disk is buffered. |
||
Buffer Unit |
Enumeration, one of:
|
Unit for the In Memory Objects field. |
Describes a tool through its properties.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Name |
String |
Name of the tool. |
Yes |
|
Description |
String |
A detailed enough description for an LLM to determine when to call this tool. |
Yes |
|
Input Schema |
String |
JSON Schema describing the tool’s input parameters. |
Yes |
Contains the data associated to a client requiring the creation of a new server session.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Session Id |
String |
Yes |
||
Additional Properties |
Object |
Yes |
||
Client Certificate |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Basic Constraints |
Number |
|||
Critical Extension OI Ds |
Array of String |
|||
Encoded |
Binary |
|||
Extended Key Usage |
Array of String |
|||
Extensions |
Array of Certificate Extension |
|||
Issuer Alternative Names |
Array of Alternative Name Data |
|||
Issuer DN |
||||
Issuer Unique ID |
Array of Boolean |
|||
Issuer X500 Principal |
||||
Key Usage |
Array of Boolean |
|||
Name |
String |
|||
Non Critical Extension OI Ds |
Array of String |
|||
Not After |
Date |
|||
Not Before |
Date |
|||
Public Key |
||||
Serial Number |
Number |
|||
Serial Number Object |
||||
Sig Alg Name |
String |
|||
Sig Alg OID |
String |
|||
Sig Alg Params |
Binary |
|||
Signature |
Binary |
|||
Subject Alternative Names |
Array of Alternative Name Data |
|||
Subject DN |
||||
Subject X500 Principal |
||||
Type |
String |
|||
Version |
Number |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Criticality |
Boolean |
|||
Oid |
String |
|||
Value |
Binary |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Algorithm |
String |
|||
Encoded |
Binary |
|||
Modulus |
Number |
|||
Params |
Number |
|||
Public Key |
String |
Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Max Redelivery Count |
Number |
Maximum number of times that a redelivered request can be processed unsuccessfully before returning a REDELIVERY_EXHAUSTED error. |
||
Message Digest Algorithm |
String |
Secure hashing algorithm to use if the Use Secure Hash field is |
||
Message Identifier |
One or more expressions that determine if a message was redelivered. This property can be set only if the Use Secure Hash field is |
|||
Object Store |
ObjectStore |
Configures the object store that stores the redelivery counter for each message. |
Configures how to identify a redelivered message and how to find out when the message was redelivered.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Use Secure Hash |
Boolean |
If |
||
Id Expression |
String |
One or more expressions that determine when a message was redelivered. You can set this property only if the Use Secure Hash field is |
An inbound request for a resource, used when the connector is acting as an MCP server.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Requested Uri |
String |
Yes |
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Session Id |
String |
Yes |
||
Request Id |
String |
Yes |
||
Additional Properties |
Object |
Yes |
Defines a text content that’s part of the response of a tool implemented through this connector.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Text |
String |
Yes |
||
Audience |
Array of Enumeration, one of:
|
Describes who the intended consumer of this data is. It can include multiple entries to indicate content that’s useful for multiple audiences. |
||
Priority |
Number |
Describes how important this data is for operating the server. A value of |
Defines an image content that’s part of the response of a tool implemented through this connector.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Audience |
Array of Enumeration, one of:
|
Describes who the intended consumer of this data is. It can include multiple entries to indicate content useful for multiple audiences. |
||
Priority |
Number |
Describes how important this data is for operating the server. A value of |
||
Data |
Binary |
The raw image content, without Base64 encoding. |
||
Mime Type |
String |
The image MIME type. |
Defines an embedded text resource that’s part of the response of a tool implemented through this connector.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Audience |
Array of Enumeration, one of:
|
Describes who the intended consumer of this data is. It can include multiple entries to indicate content useful for multiple audiences. |
||
Priority |
Number |
Describes how important this data is for operating the server. A value of |
||
Uri |
String |
Resource URI. |
||
Mime Type |
String |
The resource MIME type. |
||
Text |
String |
Resource text. |
Defines an embedded blob resource that’s part of the response of a tool implemented through this connector.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Audience |
Array of Enumeration, one of:
|
Describes who the intended consumer of this data is. It can include multiple entries to indicate content useful for multiple audiences. |
||
Priority |
Number |
Describes how important this data is for operating the server. A value of |
||
Blob |
Binary |
The raw resource content, without Base64 encoding. |
Yes |
|
Uri |
String |
Resource URI. |
||
Mime Type |
String |
The resource MIME type. |
Defines a text resource.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
Text |
String |
Text content. |
Yes |