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
Add a new "AI Assistant MCP Tools" section to DEPLOYING.md describing Model Context Protocol (MCP) servers, the default BioMCP config (config/mcp_servers.json), how to enable MCP support in docker-compose (ASSISTANT_MCP_CONFIG_PATH + volume mount), requirements for stdio servers, how to add custom MCP servers, supported transport types (stdio, http, sse), and an example. Also replace the biomcp dependency in config/requirements.txt from biomcp-python==0.7.3 to biomcp-cli==0.8.22 so the documented runtime command matches the installed package.
Copy file name to clipboardExpand all lines: DEPLOYING.md
+82Lines changed: 82 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -231,6 +231,86 @@ Then the following environment variables must be configured:
231
231
- `AWS_EMR_SHARED_FOLDER`
232
232
233
233
234
+
## AI Assistant MCP Tools
235
+
236
+
The AI assistant supports [Model Context Protocol (MCP)][mcp-spec] servers, which extend the assistant's capabilities by giving it access to external tools (e.g. biomedical literature databases, clinical trials registries, genomic variant databases, and more).
237
+
238
+
MCP servers are declared in `config/mcp_servers.json`. By default that file ships with **[BioMCP][biomcp]** already configured and enabled:
MCP tools are **disabled by default**. To enable them you need to have the AI assistant enabled first (i.e. `OPENAI_API_KEY` and the related parameters set) and then:
259
+
260
+
1. Open your `docker-compose.yml` (copied from `docker-compose_dist.yml`).
261
+
2. In the `backend` service, uncomment the environment variable:
4. Make sure any MCP server declared with `transport: stdio` has its `command` installed and available in `PATH` inside the container. For BioMCP that means `biomcp-python` must be installed in the container image.
270
+
5. Redo the deployment with Docker.
271
+
272
+
### Adding custom MCP servers
273
+
274
+
You can extend the assistant with any MCP-compatible server by adding entries to `config/mcp_servers.json`. The loader supports three transport types:
275
+
276
+
| Transport | Required fields | Optional fields |
277
+
|-----------|----------------|-----------------|
278
+
| `stdio` | `command` | `args`, `env` |
279
+
| `http` | `command`, `url` | `args`, `env` |
280
+
| `sse` | `command`, `url` | `args`, `env` |
281
+
282
+
Set `"enabled": false` on any entry to disable it without removing it from the file.
283
+
284
+
Example — adding a custom HTTP MCP server alongside BioMCP:
285
+
286
+
```json
287
+
{
288
+
"version": "1.0",
289
+
"servers": {
290
+
"biomcp": {
291
+
"enabled": true,
292
+
"transport": "stdio",
293
+
"command": "biomcp",
294
+
"args": ["run", "--mode", "stdio"],
295
+
"env": {}
296
+
},
297
+
"my-custom-mcp": {
298
+
"enabled": true,
299
+
"description": "Custom internal tool server",
300
+
"transport": "http",
301
+
"command": "my-mcp-server",
302
+
"url": "http://my-mcp-host:8080/mcp",
303
+
"env": {
304
+
"MY_API_KEY": "secret"
305
+
}
306
+
}
307
+
}
308
+
}
309
+
```
310
+
311
+
After modifying the file, restart the backend service for the changes to take effect. No rebuild is required since the file is mounted as a read-only volume.
312
+
313
+
234
314
## Execution of tasks with Celery
235
315
236
316
Multiomix uses [Celery][celery] to distribute the computational load of its most expensive tasks (such as correlation analysis, Biomarkers Feature Selection, static validations, Machine Learning model training, etc.). This requires the user to have a messaging broker, such as RabbitMQ or Redis, installed and configured. In this project, Redis is used and a worker is deployed for each of the execution queues serving a different type of task. The Docker configuration is left ready to run in Docker Compose or Docker Swarm and K8S.
@@ -299,6 +379,8 @@ To import a `media` folder backup inside a new environment you must (from the ro
0 commit comments