Initial Alpha Release
Pre-Release — This project is under active development and has not yet been published to npm or IPM. Install by cloning the repository (see Quick Start below). Package registry publishing is planned for a future release. See https://github.com/jbrandtmse/iris-execute-mcp-v2/blob/main/CHANGELOG.md for the 2026-04-09 pre-release breaking change to tool names.
Give AI assistants structured, safe access to InterSystems IRIS.
The IRIS MCP Server Suite is a collection of five specialized Model Context Protocol (MCP) servers that let AI coding assistants — Claude, Copilot, Cursor, and others — work directly with InterSystems IRIS. Each server covers a distinct operational domain so you can install only what you need.
| Package | Domain | Tools | Description |
|---|---|---|---|
| @iris-mcp/dev | Development | 21 | ObjectScript document CRUD, compilation, SQL, globals, code execution, unit tests |
| @iris-mcp/admin | Administration | 22 | Namespace, database, user, role, resource, web-app, SSL/TLS, and OAuth2 management |
| @iris-mcp/interop | Interoperability | 19 | Ensemble/Health Connect production lifecycle, credentials, lookups, rules, transforms |
| @iris-mcp/ops | Operations & Monitoring | 16 | System metrics, jobs, locks, journals, mirrors, audit, database integrity, licensing, ECP, tasks |
| @iris-mcp/data | Data & Analytics | 7 | DocDB document database, DeepSee analytics (MDX/cubes), REST API management |
85 tools across 5 servers — install one or all.
Once published, all servers will be installable at once with npm install -g @iris-mcp/all. See the meta-package README for details.
| Your Role | Recommended Server(s) |
|---|---|
| ObjectScript developer | @iris-mcp/dev — compile, edit, execute code, run SQL, manage globals |
| System administrator | @iris-mcp/admin — manage namespaces, databases, users, roles, web apps, SSL, OAuth |
| Integration engineer | @iris-mcp/interop — control productions, configure credentials, manage business rules and transforms |
| Operations / SRE | @iris-mcp/ops — monitor metrics, inspect jobs and locks, review journals, audit events, manage tasks |
| Data / BI analyst | @iris-mcp/data — query DocDB collections, run MDX against DeepSee cubes, manage REST APIs |
| Full-stack / getting started | @iris-mcp/dev + @iris-mcp/admin, or all five servers |
52773)Until packages are published to npm, install by cloning the repository and building from source.
git clone https://github.com/jbrandtmse/iris-execute-mcp-v2.git
cd iris-execute-mcp-v2
pnpm install
pnpm turbo run build
Requires: Node.js 18+ and pnpm 9+. Install pnpm with
npm install -g pnpmif needed.
All servers use the same environment variables:
| Variable | Default | Description |
|---|---|---|
IRIS_HOST |
localhost |
IRIS hostname or IP |
IRIS_PORT |
52773 |
IRIS web server port |
IRIS_USERNAME |
_SYSTEM |
IRIS username |
IRIS_PASSWORD |
(required) | IRIS password |
IRIS_NAMESPACE |
USER |
Default IRIS namespace |
IRIS_HTTPS |
false |
Use HTTPS instead of HTTP |
Point your MCP client at the built server using node and the local dist/index.js path. Replace /path/to/iris-execute-mcp-v2 with the actual path where you cloned the repo.
.mcp.json)Create a .mcp.json file in your project root:
{
"mcpServers": {
"iris-dev-mcp": {
"command": "node",
"args": ["/path/to/iris-execute-mcp-v2/packages/iris-dev-mcp/dist/index.js"],
"env": {
"IRIS_HOST": "localhost",
"IRIS_PORT": "52773",
"IRIS_USERNAME": "_SYSTEM",
"IRIS_PASSWORD": "SYS",
"IRIS_NAMESPACE": "USER"
}
}
}
}
Note: Replace
"SYS"with your actual IRIS password. Avoid committing real credentials to version control.
claude_desktop_config.json)Add to your Claude Desktop configuration:
{
"mcpServers": {
"iris-dev-mcp": {
"command": "node",
"args": ["/path/to/iris-execute-mcp-v2/packages/iris-dev-mcp/dist/index.js"],
"env": {
"IRIS_HOST": "localhost",
"IRIS_PORT": "52773",
"IRIS_USERNAME": "_SYSTEM",
"IRIS_PASSWORD": "SYS",
"IRIS_NAMESPACE": "USER"
}
}
}
}
To add more servers, include additional entries under mcpServers using the same pattern. For example, to add admin tools:
{
"mcpServers": {
"iris-dev-mcp": {
"command": "node",
"args": ["/path/to/iris-execute-mcp-v2/packages/iris-dev-mcp/dist/index.js"],
"env": { "IRIS_PASSWORD": "SYS" }
},
"iris-admin-mcp": {
"command": "node",
"args": ["/path/to/iris-execute-mcp-v2/packages/iris-admin-mcp/dist/index.js"],
"env": { "IRIS_PASSWORD": "SYS" }
}
}
}
All server entry points:
| Server | Path (relative to repo root) |
|---|---|
| dev | packages/iris-dev-mcp/dist/index.js |
| admin | packages/iris-admin-mcp/dist/index.js |
| interop | packages/iris-interop-mcp/dist/index.js |
| ops | packages/iris-ops-mcp/dist/index.js |
| data | packages/iris-data-mcp/dist/index.js |
Ask your AI assistant:
“List the IRIS namespaces” (with
@iris-mcp/admin)
or
“Show me the globals in the USER namespace” (with
@iris-mcp/dev)
If the assistant returns results from your IRIS instance, you are connected.
All five servers share a common connection layer (@iris-mcp/shared) that handles:
ExecuteMCPv2.REST.Dispatch) for execution, globals, security, interoperability, and analytics — auto-bootstrapped on first connection/api/docdb/v1/) and REST management (/api/mgmnt/v2/)Servers communicate over the MCP protocol (spec v2025-11-25) using either stdio or Streamable HTTP transport. Every tool returns both structuredContent (machine-readable) and text content (human-readable), and includes tool annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) so clients can make informed decisions about tool usage.
┌────────────────────────────────────────────────────────┐
│ MCP Client │
│ (Claude, Copilot, Cursor, etc.) │
└──────────┬──────────┬──────────┬──────────┬───────────┘
│ │ │ │
┌─────▼──┐ ┌─────▼──┐ ┌────▼───┐ ┌───▼────┐ ┌─────▼──┐
│ dev │ │ admin │ │interop │ │ ops │ │ data │
│(21) │ │(22) │ │(19) │ │(16) │ │(7) │
└───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘
│ │ │ │ │
└──────────┴──────┬───┴──────────┴──────────┘
│
┌────────▼────────┐
│ @iris-mcp/shared │
│ (HTTP client, │
│ auth, config) │
└────────┬────────┘
│ HTTP(S)
┌────────▼────────┐
│ InterSystems │
│ IRIS │
└─────────────────┘
Each server has its own README with a complete tool reference:
@iris-mcp/dev — Development Tools@iris-mcp/admin — Administration Tools@iris-mcp/interop — Interoperability Tools@iris-mcp/ops — Operations & Monitoring Tools@iris-mcp/data — Data & Analytics ToolsWhen the MCP server auto-bootstraps its custom REST endpoint, it creates the web application via Security.Applications.Create(). However, this ObjectScript API call does not notify the CSP Gateway of the new application. As a result, requests to the new web app may return 404 until one of the following steps is taken:
Contributions are welcome. Please open an issue to discuss proposed changes before submitting a pull request.