You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|| Amazon Titan Embeddings Text v2 | Embeddings | text | embeddings ||
88
-
|| Anthropic Claude 2.0, Anthropic Claude 2.1 | Chat Completions | text, document | text ||
89
-
|| Anthropic Claude 3 Sonnet, Anthropic Claude 3.5 Sonnet, Anthropic Claude 3.5 Sonnet v2, Anthropic Claude 3 Haiku, Anthropic Claude 3 Opus, Anthropic Claude 3.5 Haiku, Anthropic Claude 3.7 Sonnet, Anthropic Claude 4 Sonnet | Chat Completions | text, image, document | text | Function calling |
88
+
|| Anthropic Claude 3 Sonnet, Anthropic Claude 3.5 Sonnet, Anthropic Claude 3.5 Sonnet v2, Anthropic Claude 3 Haiku, Anthropic Claude 3 Opus, Anthropic Claude 3.5 Haiku, Anthropic Claude 3.7 Sonnet, Anthropic Claude 4.5 Sonnet, Anthropic Claude 4.5 Haiku, Anthropic Claude 4.5 Opus | Chat Completions | text, image, document | text | Function calling |
Copy file name to clipboardExpand all lines: content/en/docs/marketplace/genai/reference-guide/genai-commons.md
+2-18Lines changed: 2 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -265,6 +265,7 @@ A tool in the tool collection. This is sent along with the request to expose a l
265
265
|`ToolType`| The type of the tool. Refer to the documentation supplied by your AI provider for information about the supported types. |
266
266
|`Microflow`| The name (string) of the microflow that this tool represents. |
267
267
|`MCPServerName`| The name of the MCP server (only appliable for MCP Tools). |
268
+
|`Schema`| The schema represents the raw JSON schema defined by the tool. This is typically the case when the tool is external and not a Mendix microflow. |
268
269
269
270
#### `Function` {#function}
270
271
@@ -283,24 +284,6 @@ A tool of the type *function*. This is a specialization of [Tool](#tool) and rep
283
284
|`MinimumSimilarity`| Specifies the minimum similarity score (usually 0-1) of the passed chunk and the knowledge chunks in the knowledge base. |
284
285
|`MaxNumberOfResults`| Specifies the maximum number of results that should be retrieved from the knowledge base. |
285
286
286
-
#### `ArgumentInput` {#argument-input}
287
-
288
-
For tools which are not executed in the same Mendix application, but still registered with the request and called from the application, `ArgumentInput` objects are added to the [Tool](#tool). When the tool is called, the arguments are not passed directly to the microflow, but can be extracted from the [Argument](#argument) of the [ToolCall](#toolcall).
289
-
290
-
| Attribute | Description |
291
-
| --- | --- |
292
-
|`Name`| Name of the argument. |
293
-
|`_Type`| Data type of the argument, for example, string, number, boolean, enum. |
294
-
|`Required`| Indicates if the argument is required for calling the tool. |
295
-
296
-
#### `EnumValue` {#enum-value}
297
-
298
-
The `EnumValue` specifies available keys for "enum" [ArgumentInput](#argument-input) data types, so that the model is restricted to use valid input.
299
-
300
-
| Attribute | Description |
301
-
| --- | --- |
302
-
|`Key`| Key of an enumeration. |
303
-
304
287
#### `StopSequence` {#stopsequence}
305
288
306
289
For many models, `StopSequence` can pass a list of character sequences (for example a word) along with the request. The model will stop generating content when a word of that list occurs next.
@@ -332,6 +315,7 @@ A tool call object may be generated by the model in certain scenarios, such as a
332
315
|`Name`| The name of the tool to call. This refers to the `Name` attribute of one of the [Tools](#tool) in the Request. |
333
316
|`ToolType`| The type of the tool. View AI provider documentation for supported types. |
334
317
|`ToolCallId`| This is a model-generated ID of the proposed tool call. It is used by the model to map an assistant message containing a tool call with the output of the tool call (tool message). |
318
+
|`Input`| The input is the raw tool JSON input generated by the model, usually passed for external tools where no mapping to a microflow is required. |
Copy file name to clipboardExpand all lines: content/en/docs/marketplace/genai/reference-guide/mcp-modules/mcp-client.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -65,7 +65,7 @@ For both actions, you can pass an `ArgumentCollection` if the prompt or tool req
65
65
66
66
### Using MCP Client Module with GenAI Commons and Conversational UI {#use-with-genai-commons}
67
67
68
-
To add all tools from an MCP server to a `GenAICommons.Request`, you can use the `Request: Add all tools from MCP server` toolbox action. This action will first list all tools from the provided MCP server configuration, iterate over them, and adding them one by one to the tool collection. The request can then be passed to a Chat Completions operation.
68
+
To add all tools from an MCP server to a `GenAICommons.Request`, you can use the `Request: Add all tools from MCP server` toolbox action. This action will first list all tools from the provided MCP server configuration, iterate over them, and adding them one by one to the tool collection. The request can then be passed to a Chat Completions operation.
69
69
70
70
You can also find an example [action microflow](/appstore/modules/genai/genai-for-mx/conversational-ui/#action-microflow)`ChatCompletions_MCPClient_ActionMicroflow` in the **Example Implementations** folder of the module. This microflow demonstrates how a Conversational UI chat action including MCP tools can be facilitated. Duplicate and include this microflow into your custom module and modify it according to your requirements.
Copy file name to clipboardExpand all lines: content/en/docs/marketplace/genai/reference-guide/mcp-modules/mcp-server.md
+9-4Lines changed: 9 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,9 +24,10 @@ The current version has the following limitations:
24
24
* Tools can only return String values, either directly as String type or using the `TextContent` entity.
25
25
* Prompts can only return a single message.
26
26
* Running an MCP Server is currently only supported on single-instance environments.
27
-
* The tool fails to return responses with large payloads to the client successfully. This issue is currently under investigation.
28
27
28
+
{{% alert color="info" %}}
29
29
Note that the MCP Server module is still in its early version and latest versions may include breaking changes. Since both the open-source protocol and the Java SDK are still evolving and regularly updated, these changes may also affect this module.
30
+
{{% /alert %}}
30
31
31
32
## Installation
32
33
@@ -38,7 +39,7 @@ If you start from a standard Mendix blank app, or have an existing project, you
38
39
39
40
### Create MCP Server {#create-server}
40
41
41
-
The `Create MCP Server` action initializes an MCP server in the Mendix runtime, creates and returns the `MCPServer` object. You can use the created `MCPServer` to add tools or prompts. The `Path` attribute determines how external systems can reach the MCP server, that means this value needs to be known to the the MCP Client (usually set in a configuration file). After the action gets triggered, the server becomes available for external clients to connect.
42
+
The `Create MCP Server` action initializes an MCP server in the Mendix runtime, creates and returns the `MCPServer` object. You can use the created `MCPServer` to add tools or prompts. The `Path` attribute determines how external systems can reach the MCP server, that means this value needs to be known to the the MCP Client (usually set in a configuration file). After the action gets triggered, the server becomes available for external clients to connect. Note that the path cannot be `mcp` and cannot end on `/mcp`, because those are reserved endpoints.
42
43
43
44
Based on your use case, this action can be triggered manually by an admin if wrapped around a microflow accessible in the UI, via an after start-up microflow, or by any other microflow such as a scheduled event.
44
45
@@ -61,15 +62,19 @@ The `User` returned in the microflow is used for all subsequent prompt and tool
61
62
62
63
#### Protocol Version
63
64
64
-
When creating an MCP server, you need to specify a `ProtocolVersion`. On the official MCP documentation, you can review the differences between the protocol versions in the [changelog](https://modelcontextprotocol.io/specification/2025-03-26/changelog). The MCP Server module currently only supports `v2024-11-05` and the HTTP+SSE transport. MCP Clients, that need to connect to a Mendix MCP server, should support the same version. Note that Mendix follows the offered capabilities of the MCP Java SDK.
65
+
When creating an MCP server, you need to specify a `ProtocolVersion`. On the official MCP documentation, you can review the differences between the protocol versions in the [changelog](https://modelcontextprotocol.io/specification/2025-03-26/changelog). The latest version of the MCP Server module currently only supports `v2025-03-26` and the Streamable HTTP transport. MCP Clients that need to connect to a Mendix MCP server should support the same version. Note that Mendix follows the offered capabilities of the MCP Java SDK.
66
+
67
+
{{% alert color="info" %}}
68
+
Since version 4.0.0 of the module, the protocol version `v2024-11-05` was replaced by `v2025-03-26`, which changed the transport from HTTP + SSE to Streamable HTTP because HTTP + SSE is officially deprecated. Most clients already support the new transport, such as the Mendix [MCP Client](/appstore/modules/genai/mcp-modules/mcp-client/) module.
69
+
{{% /alert %}}
65
70
66
71
### Add Tools
67
72
68
73
After the [Create MCP Server](#create-server) action, you can add one or multiple microflows as [Tools](https://modelcontextprotocol.io/docs/concepts/tools) to be exposed by using the `Add Tool` action. Connecting MCP Clients can discover the tools and the model can choose to call them if it helps to solve the user's requests.
69
74
70
75
The selected microflow must adhere to the following principles:
71
76
72
-
* Input needs to be the same as described in the `Schema` attribute (only primitives and/or an object of type `MCPServer.Tool` are supported). If no Schema is passed in the `Add tool` action, it will be automatically created based on the microflow's input parameters.
77
+
* Input needs to be the same as described in the `Schema` attribute (only primitives and/or an object of type `MCPServer.Tool` are supported). If no Schema is passed in the `Add tool` action, it will be automatically created based on the microflow's input parameters, by setting all of them as required.
73
78
* The return value must be either of type `String` or `TextContent`. You can create a `TextContent` object within the microflow to return the relevant information to the model based on the outcome of the microflow.
74
79
75
80
For an example, see the `Example Implementations` folder inside of the module.
0 commit comments