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
+63-1Lines changed: 63 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -222,6 +222,15 @@ Choose your preferred interface for working with the Aignostics Platform. Each i
222
222
|**Use when**| Building custom analysis pipeline in Python for repeated usage and processing large datasets (10s-1000s of slides) |
223
223
|**Get started**| <ahref="#example-notebooks-interact-with-the-aignostics-platform-from-your-python-notebook-environment">Run example notebooks</a> or <ahref="#python-library-call-the-aignostics-platform-api-from-your-python-scripts">call the Aignostics Platform API from your Python scripts</a> |
224
224
225
+
### 🤖 MCP Server (AI Agent Integration)
226
+
227
+
|||
228
+
|---|---|
229
+
|**What it is**| Model Context Protocol server that exposes SDK functionality to AI agents like Claude |
230
+
|**Best for**| Users who want AI assistants to help with platform operations |
231
+
|**Use when**| Working with Claude Desktop or other MCP-compatible AI tools to manage datasets, submit runs, or query results |
232
+
|**Get started**| <ahref="#mcp-server-integrate-with-ai-agents">Configure Claude Desktop for MCP integration</a> |
233
+
225
234
> 💡 Launchpad and CLI handle authentication automatically. Python Library requires manual setup (see [authentication section](#example-notebooks-interact-with-the-aignostics-platform-from-your-python-notebook-environment)).
226
235
227
236
## Launchpad: Run your first computational pathology analysis in 10 minutes from your desktop
@@ -608,6 +617,56 @@ Self-signed URLs for files in google storage buckets can be generated using the
The Python SDK includes an MCP (Model Context Protocol) server that exposes SDK functionality to AI agents like Claude. This enables AI assistants to help you interact with the Aignostics Platform through natural conversation.
623
+
624
+
### Quick Start with Claude Desktop
625
+
626
+
Add the following to your Claude Desktop configuration file:
Restart Claude Desktop after adding this configuration.
643
+
644
+
### CLI Commands
645
+
646
+
```bash
647
+
# Using uvx (no installation required)
648
+
uvx aignostics mcp run
649
+
uvx aignostics mcp list-tools
650
+
```
651
+
652
+
### Using Plugins
653
+
654
+
The MCP server supports plugins that extend its functionality with additional tools. To run the MCP server with a plugin installed:
655
+
656
+
```bash
657
+
# With a local plugin
658
+
uv run --with /path/to/plugin aignostics mcp run
659
+
660
+
# With a plugin from a git repository
661
+
uvx --with git+ssh://git@github.com/org/plugin aignostics mcp run
662
+
```
663
+
664
+
Plugins register themselves via Python entry points and their tools are automatically discovered and namespaced by the MCP server.
665
+
666
+
### What AI Agents Can Do
667
+
668
+
Once configured, AI agents can help you with platform operations through natural language, with access to tools from the SDK and any installed plugins.
669
+
611
670
## Next Steps
612
671
613
672
Now that you have an overview of the Aignostics Python SDK and its interfaces, here are some recommended next steps to deepen your understanding and get the most out of the platform:
@@ -866,9 +925,12 @@ Laboratory systems that can be integrated with the Aignostics Platform for workf
866
925
867
926
### M
868
927
869
-
**Marimo**
928
+
**Marimo**
870
929
Modern notebook environment supported by the Aignostics Platform as an alternative to Jupyter.
871
930
931
+
**MCP (Model Context Protocol)**
932
+
Protocol that enables AI agents like Claude to interact with external tools and services. The Aignostics SDK includes an MCP server that exposes platform functionality to AI assistants.
933
+
872
934
**Metadata**
873
935
Descriptive information about whole slide images including dimensions, resolution, tissue type, and disease information required for processing.
Copy file name to clipboardExpand all lines: pyproject.toml
+2-1Lines changed: 2 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -138,12 +138,13 @@ dependencies = [
138
138
"lxml>=6.0.2", # For python 3.14 pre-built wheels
139
139
"filelock>=3.20.1", # CVE-2025-68146
140
140
"marshmallow>=3.26.2", # CVE-2025-68480
141
+
"fastmcp>=2.0.0,<3", # MCP server - Major version 3 is in beta as of 26/01/2026 and has not been released on PyPI. Upgrade once a stable release is out.
141
142
]
142
143
143
144
[project.optional-dependencies]
144
145
pyinstaller = ["pyinstaller>=6.14.0,<7"]
145
146
jupyter = [
146
-
"jupyter>=1.1.1,<2",
147
+
"jupyter>=1.1.1,<2",
147
148
# Transitive overrides
148
149
# WARNING: one cannot negate or downgrade a dependency required here. use override-dependencies for that.
itemTitle: MCP Server with Auto-Discovery and CLI Commands
4
+
itemHasParent: SHR-UTILS-1
5
+
itemType: Requirement
6
+
Requirement type: FUNCTIONAL
7
+
Layer: System (backend logic)
8
+
---
9
+
10
+
System shall provide a central MCP server that automatically discovers plugin tools via entry-point-based service discovery, mounts them with namespace isolation to prevent tool name collisions, and exposes CLI commands (`mcp run` to start the stdio transport server, `mcp list-tools` to enumerate all registered tools).
-**[FR-07]** Implement settings management with validation, serialization, and sensitive data handling
29
29
-**[FR-08]** Provide file system utilities for user data directory management and path sanitization
30
30
-**[FR-09]** Support process information gathering and runtime environment detection
31
+
-**[FR-10]** Provide a central MCP server with auto-discovery of plugin tools, namespace isolation, and CLI commands for running the server and listing available tools
31
32
32
33
### 1.3 Non-Functional Requirements
33
34
@@ -65,6 +66,7 @@ utils/
65
66
├── _console.py # Rich console configuration
66
67
├── _logfire.py # Logfire integration (optional)
67
68
├── _sentry.py # Sentry integration (optional)
69
+
├── _mcp.py # MCP server with auto-discovery and plugin mounting
0 commit comments