MCP server for AI-powered Rossum orchestration: document workflows, debug pipelines automatically, and configure intelligent document processing through natural language.
Project description
Rossum MCP Server
MCP server for AI-powered Rossum document processing. 67 tools for queues, schemas, hooks, engines, and more.
[!NOTE] This is not an official Rossum project. It is a community-developed integration built on top of the Rossum API, not a product (yet).
Quick Start
# Set environment variables
export ROSSUM_API_TOKEN="your-api-token"
export ROSSUM_API_BASE_URL="https://api.elis.rossum.ai/v1"
# Run the MCP server
uv pip install rossum-mcp
rossum-mcp
Or run from source:
git clone https://github.com/stancld/rossum-agents.git
cd rossum-agents/rossum-mcp
uv sync
python rossum_mcp/server.py
Claude Desktop Configuration
Configure Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on Mac):
{
"mcpServers": {
"rossum": {
"command": "python",
"args": ["/path/to/rossum-mcp/rossum-mcp/rossum_mcp/server.py"],
"env": {
"ROSSUM_API_TOKEN": "your-api-token",
"ROSSUM_API_BASE_URL": "https://api.elis.rossum.ai/v1",
"ROSSUM_MCP_MODE": "read-write"
}
}
}
}
Environment Variables
| Variable | Required | Description |
|---|---|---|
ROSSUM_API_TOKEN |
Yes | Your Rossum API authentication token |
ROSSUM_API_BASE_URL |
Yes | Base URL for the Rossum API |
ROSSUM_MCP_MODE |
No | read-write (default) or read-only |
Read-Only Mode
Set ROSSUM_MCP_MODE=read-only to disable all CREATE, UPDATE, and UPLOAD operations. Only GET and LIST operations will be available.
Runtime Mode Switching
Two tools allow dynamic mode control:
| Tool | Description |
|---|---|
get_mcp_mode |
Returns current operation mode (read-only or read-write) |
set_mcp_mode |
Switches between modes at runtime |
Use case: Start in read-only mode for safe exploration, then switch to read-write when ready to make changes.
User: What mode are we in?
Assistant: [calls get_mcp_mode] → "read-only"
User: I'm ready to update the schema now.
Assistant: [calls set_mcp_mode("read-write")] → Mode switched to read-write
[calls update_schema(...)]
Available Tools
The server provides 67 tools organized into categories:
| Category | Tools | Description |
|---|---|---|
| Document Processing | 7 | Upload documents, retrieve/update/confirm/delete annotations |
| Queue Management | 9 | Create, configure, delete, and list queues |
| Schema Management | 8 | Define, modify, and delete field structures |
| Engine Management | 6 | Configure extraction and splitting engines |
| Extensions (Hooks) | 9 | Webhooks, serverless functions, testing |
| Rules & Actions | 6 | Business rules with triggers and actions |
| Workspace Management | 4 | Organize and delete workspaces |
| Organization Groups | 2 | View license groups across organizations |
| Organization Limits | 1 | Email sending limits and usage counters |
| User Management | 5 | Create, update, list users and roles |
| Relations | 4 | Annotation and document relations |
| Email Templates | 3 | Automated email responses |
| MCP Mode | 2 | Get/set read-only or read-write mode |
| Tool Discovery | 1 | Dynamic tool loading |
Tool List by Category
Document Processing:
upload_document, get_annotation, list_annotations, start_annotation, bulk_update_annotation_fields, confirm_annotation, delete_annotation
Queue Management:
get_queue, list_queues, get_queue_schema, get_queue_engine, create_queue, create_queue_from_template, get_queue_template_names, update_queue, delete_queue
Schema Management:
get_schema, list_schemas, create_schema, update_schema, patch_schema, get_schema_tree_structure, prune_schema_fields, delete_schema
Engine Management:
get_engine, list_engines, create_engine, update_engine, create_engine_field, get_engine_fields
Extensions (Hooks):
get_hook, list_hooks, create_hook, update_hook, list_hook_templates, create_hook_from_template, test_hook, list_hook_logs, delete_hook
Rules & Actions:
get_rule, list_rules, create_rule, update_rule, patch_rule, delete_rule
Workspace Management:
get_workspace, list_workspaces, create_workspace, delete_workspace
Organization Groups:
get_organization_group, list_organization_groups
Organization Limits:
get_organization_limit
User Management:
get_user, list_users, create_user, update_user, list_user_roles
Relations:
get_relation, list_relations, get_document_relation, list_document_relations
Email Templates:
get_email_template, list_email_templates, create_email_template
MCP Mode:
get_mcp_mode, set_mcp_mode
Tool Discovery:
list_tool_categories
For detailed API documentation with parameters and examples, see TOOLS.md.
Example Workflows
Upload and Monitor
# 1. Upload document
upload_document(file_path="/path/to/invoice.pdf", queue_id=12345)
# 2. Get annotation ID
annotations = list_annotations(queue_id=12345)
# 3. Check status
annotation = get_annotation(annotation_id=annotations[0].id)
Update Fields
# 1. Start annotation (moves to 'reviewing')
start_annotation(annotation_id=12345)
# 2. Get content with field IDs
annotation = get_annotation(annotation_id=12345, sideloads=['content'])
# 3. Update fields using datapoint IDs
bulk_update_annotation_fields(
annotation_id=12345,
operations=[{"op": "replace", "id": 67890, "value": {"content": {"value": "INV-001"}}}]
)
# 4. Confirm
confirm_annotation(annotation_id=12345)
License
MIT License - see LICENSE file for details.
Resources
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rossum_mcp-1.2.2.tar.gz.
File metadata
- Download URL: rossum_mcp-1.2.2.tar.gz
- Upload date:
- Size: 37.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f06435aa29032f740a711b4886c8eab9d02619873fb55b90cf164bc1cba93dc
|
|
| MD5 |
99247b7538a4c3b8f82f2e88b8fd9b4f
|
|
| BLAKE2b-256 |
f8f3bc7033e6d7496f83eeae064bf98584913c00cc602eceec9627b48ec6c35d
|
File details
Details for the file rossum_mcp-1.2.2-py3-none-any.whl.
File metadata
- Download URL: rossum_mcp-1.2.2-py3-none-any.whl
- Upload date:
- Size: 44.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f04c223c941ae2447da32c53a3255e635dcd0e99f243855e98561f23c03c12e
|
|
| MD5 |
2b4e8617c428aeec456e6f8344ed5ba2
|
|
| BLAKE2b-256 |
88927e2fc9c8584b26d84780a7e63b11ce63bc513cfc93a11e14805c4c2c3857
|