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
Copy file name to clipboardExpand all lines: README.md
+45-40Lines changed: 45 additions & 40 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
This Model Context Protocol (MCP) server empowers AI assistants by accessing decisions from IBM Decision Intelligence or IBM Automation Decision Services.
6
6
7
-
The MCP server is available as an npm package in the free npm registry at https://www.npmjs.com/package/di-mcp-server.
7
+
The MCP server for Decision Intelligence and Automation Decision Services is available as an npm package in the free npm registry at https://www.npmjs.com/package/di-mcp-server.
8
8
9
9
It supports both STDIO and streamable HTTP transports for local or remote deployments for supporting any MCP clients.
-`--apikey <DI_API_KEY>` where `DI_API_KEY` is the API key for accessing the decision runtime of IBM Decision Intelligence.
47
-
-`--username <USERNAME> --password <PASSWORD>` where `USERNAME` and `PASSWORD` are the basic authentication credentials to connect to the decision runtime of IBM Automation Decision Services.
48
-
-`--username <USERNAME> --apikey <ZEN_API_KEY>` where `USERNAME` and `ZEN_API_KEY` are the Zen API key credentials to access the decision runtime of IBM Automation Decision Services (see [Authorizing HTTP requests by using the Zen API key](https://www.ibm.com/docs/en/cloud-paks/cp-biz-automation/25.0.0?topic=administering-authorizing-http-requests-by-using-zen-api-key))
49
-
-`RUNTIME_BASE_URL` is the base URL of the decision runtime REST API. For IBM Decision Intelligence its pattern is: `https://<TENANT_NAME>.decision-prod-us-south.decision.saas.ibm.com/ads/runtime/api/v1` where TENANT_NAME is the name of the tenant.
46
+
-`--apikey <DI_API_KEY>` where `DI_API_KEY` is the API key to access the decision runtime for Decision Intelligence.
47
+
-`--username <USERNAME> --password <PASSWORD>` where `USERNAME` and `PASSWORD` are the basic authentication credentials to connect to the decision runtime for Automation Decision Services.
48
+
-`--username <USERNAME> --apikey <ZEN_API_KEY>` where `USERNAME` and `ZEN_API_KEY` are the Zen API key credentials to access the decision runtime for Automation Decision Services (see [Authorizing HTTP requests by using the Zen API key](https://www.ibm.com/docs/en/cloud-paks/cp-biz-automation/25.0.0?topic=administering-authorizing-http-requests-by-using-zen-api-key))
49
+
-`RUNTIME_BASE_URL` is the base URL of the decision runtime REST API. For Decision Intelligence its pattern is: `https://<TENANT_NAME>.decision-prod-us-south.decision.saas.ibm.com/ads/runtime/api/v1` where TENANT_NAME is the name of the tenant.
50
50
-`TRANSPORT` (optional) is the transport protocol, either `STDIO` (default) or `HTTP`.
51
-
-`RUNTIME` (optional) is the decision runtime, either `DI` (default) or `ADS` for using the decision runtime of respectively IBM Decision Intelligence or IBM Automation Decision Services.
51
+
-`RUNTIME` (optional) is the decision runtime, either `DI` (default) or `ADS` for using the decision runtime for respectively Decision Intelligence or Automation Decision Services.
52
52
-`DEPLOYMENT_SPACES` (optional) is a comma-separated list of deployment spaces to scan (defaults to `development`).
53
53
54
54
- Example:
@@ -70,15 +70,15 @@ You can integrate decision services into IBM watsonx Orchestrate by adding the M
As for Claude Desktop, you can specify the API key and base URL of the decision runtime REST API using:
205
-
- Either command line arguments:
208
+
209
+
As for Claude Desktop, you can specify the API key and base URL of the decision runtime REST API using with one of the following methods:
210
+
- Using command line arguments:
206
211
```json
207
212
{
208
213
[..]
@@ -222,7 +227,7 @@ As for Claude Desktop, you can specify the API key and base URL of the decision
222
227
[..]
223
228
}
224
229
```
225
-
- Or environment variables:
230
+
- Using environment variables:
226
231
```json
227
232
{
228
233
[..]
@@ -240,23 +245,23 @@ As for Claude Desktop, you can specify the API key and base URL of the decision
240
245
}
241
246
```
242
247
243
-
For more information, see Cursor's documentation about [_Installing MCP servers_](https://docs.cursor.com/en/context/mcp#installing-mcp-servers).
248
+
For more information, see Cursor's documentation about [_Installing MCP servers_](https://docs.cursor.com/en/context/mcp#installing-mcp-servers) in the Cursor documentation.
244
249
245
-
### Using Custom Tool Names
250
+
### Using custom tool names
246
251
247
-
When integrating with MCP hosts, you may need to customize the tool names to meet specific requirements or limitations, such as:
252
+
When you integrate with MCP hosts, you might need to customize the tool names to meet specific requirements or limitations, such as:
248
253
- Maximum length restrictions
249
254
- Forbidden characters
250
255
- Naming conventions
251
256
252
-
#### Default Tool Naming Algorithm
257
+
#### Default tool naming algorithm
253
258
254
-
By default, tool names are generated as follows:
259
+
By default, tool names are generated in the following way:
255
260
1. Combines the decision service name with the operation ID: `decisionServiceName operationID`
256
261
2. Replaces spaces and forward slashes with underscores: `decisionServiceName_operationID`
257
262
3. Handles name collisions by using the decision service ID: use `decisionServiceID_operationID` if `decisionServiceName_operationID` already exists
258
263
259
-
#### Customizing Tool Names with the decision REST API
264
+
#### Customizing tool names with the decision runtime REST API
260
265
261
266
If the default naming strategy doesn't meet the requirements of your MCP hosts, you can specify custom tool names by setting the `mcpToolName.OPERATION_ID` decision metadata:
262
267
```json
@@ -308,9 +313,9 @@ Run the following command to test the MCP server:
308
313
npm test
309
314
```
310
315
311
-
### Code Coverage
316
+
### Code coverage
312
317
313
-
The project is configured with Jest's built-in code coverage capabilities. To generate a code coverage report:
318
+
The project is configured with Jest's built-in code coverage capabilities. To generate a code coverage report, run the following command:
314
319
315
320
```bash
316
321
npm run test:coverage
@@ -327,7 +332,7 @@ The coverage report includes:
327
332
- Function coverage: percentage of functions called
328
333
- Line coverage: percentage of executable lines executed
329
334
330
-
Coverage thresholds are set to 70% for statements, branches, functions, and lines. If coverage falls below these thresholds, the test command will fail.
335
+
Coverage thresholds are set to 70% for statements, branches, functions, and lines. If the coverage falls below these thresholds, the test command fails.
331
336
332
337
To view the detailed HTML coverage report, open `coverage/lcov-report/index.html` in your browser after running the coverage command.
333
338
### Running the MCP server in development mode with `nodemon`
@@ -349,14 +354,14 @@ APIKEY=<APIKEY> URL=<URL> npm run dev
0 commit comments