Sitemule Blueprint MCP Server - Access IBM i program analysis via MCP
Project description
Sitemule Blueprint MCP Server
A Model Context Protocol (MCP) server for IBM i program analysis, built with FastMCP.
⚠️ Prerequisite: This MCP server requires a licensed copy of Sitemule Blueprint running on an IBM i server. Without it, there is no backend to connect to. Contact Sitemule for licensing information.
Features
- STDIO and Streamable HTTP transports
- IBM i program call-chain analysis (top-down & bottom-up)
- Source code retrieval and regex search
- Configurable API endpoint and API key (key is never exposed to the LLM)
- Packaged for PyPI via
uv - Self-contained executables for Windows, macOS, and Linux
Tools
The MCP server exposes 13 tools for IBM i program analysis.
Configuration management (getConfig, setConfig) and graph rebuilds
(loadGraph) are handled by the companion VS Code extension — see
VS Code Extension below.
Read-only
| Tool | Description |
|---|---|
list_nodes |
List nodes from the Blueprint graph, optionally filtered by name, type, or ID |
topdown |
Get all programs recursively used by a given program (top-down call chain) |
topdown_prompt |
Top-down call chain with descriptions and source intro for each node |
bottomup |
See where a program is called from (bottom-up / reverse call chain) |
prompt |
Get descriptions and source-code intro for a program and its call chain |
load_source |
Get full source code and metadata for a program or table |
search_source |
Search the source repository for text matching a regular expression |
list_errors |
List entries from the Blueprint error log |
get_domains |
Get all defined domains |
get_markdown |
Get Markdown documentation for a program or node |
get_html |
Get HTML documentation for a program or node |
Mutation (require user approval)
| Tool | Annotation | Description |
|---|---|---|
set_domain |
destructive | Assign a domain to a node |
create_domain |
additive | Create a new domain node |
Installation
From PyPI
# Install with uv
uv pip install blueprint-mcp
# Or with pip
pip install blueprint-mcp
From source
cd src/python/blueprint-mcp
uv sync
VS Code Extension
The companion Sitemule Blueprint extension (in vscode-extension/)
provides a Settings UI and manages server communication directly:
| Command | Description |
|---|---|
| Blueprint: Refresh Settings from Server | Fetch current config via getConfig and populate VS Code settings |
| Blueprint: Save Settings to Server | Push VS Code settings to the backend via setConfig |
| Blueprint: Rebuild Dependency Graph | Trigger loadGraph to re-scan the IBM i |
| Blueprint: Save Settings & Rebuild Graph | Save config then rebuild in one step |
| Blueprint: Generate mcp.json | Write .vscode/mcp.json to register the MCP server |
Workflow:
- Set
blueprint.apiUrl(and optionallyblueprint.apiKey) in VS Code settings - The extension fetches the current config from the backend on activation
- Edit any setting — changes are automatically pushed to the backend
- Use the command palette to rebuild the graph when ready
The extension also generates .vscode/mcp.json automatically so VS Code
can launch the MCP server with the correct API credentials.
Configuration
All configuration is via environment variables:
| Variable | Required | Default | Description |
|---|---|---|---|
BLUEPRINT_API_URL |
Yes | http://MY_IBM_I:60111/services/api |
Base URL for the Blueprint API |
BLUEPRINT_API_KEY |
No | (none) | API key sent as Authorization: Bearer <key> header. Never exposed to the LLM. |
BLUEPRINT_HOST |
No | 0.0.0.0 |
Host for HTTP transport |
BLUEPRINT_PORT |
No | 8000 |
Port for HTTP transport |
Usage
STDIO (default — for IDE integrations like VS Code, Cursor, etc.)
BLUEPRINT_API_URL=http://ibm-i.host.or.ip:60111/services/api blueprint-mcp
Streamable HTTP
BLUEPRINT_API_URL=http://ibm-i.host.or.ip:60111/services/api blueprint-mcp --transport streamable-http
With API key
BLUEPRINT_API_URL=http://ibm-i.host.or.ip:60111/services/api \
BLUEPRINT_API_KEY=my-secret-key \
blueprint-mcp --transport streamable-http --port 9000
MCP client configuration (e.g. Claude Desktop, VS Code)
{
"mcpServers": {
"blueprint": {
"command": "blueprint-mcp",
"env": {
"BLUEPRINT_API_URL": "http://ibm-i.host.or.ip:60111/services/api",
"BLUEPRINT_API_KEY": "my-secret-key"
}
}
}
}
VS Code — one-click install from MCP Registry
- Open the command palette (
Ctrl+Shift+P/Cmd+Shift+P) - Run MCP: Add Server… → search for Sitemule Blueprint
- VS Code will prompt you for the API URL and (optionally) the API key
- Settings are stored securely — the API key is never exposed to the LLM
Or add a .vscode/mcp.json file to your workspace manually:
{
"inputs": [
{
"id": "blueprint-api-url",
"type": "promptString",
"description": "Blueprint API URL (e.g., http://ibm-i.host.or.ip:60111/services/api)",
"default": "http://ibm-i.host.or.ip:60111/services/api"
},
{
"id": "blueprint-api-key",
"type": "promptString",
"description": "Blueprint API Key (leave empty if not required)",
"default": "",
"password": true
}
],
"servers": {
"blueprint": {
"type": "stdio",
"command": "blueprint-mcp",
"args": ["--transport", "stdio"],
"env": {
"BLUEPRINT_API_URL": "${input:blueprint-api-url}",
"BLUEPRINT_API_KEY": "${input:blueprint-api-key}"
}
}
}
}
Self-contained executable
Download the pre-built executable for your platform from Releases and run it directly — no Python installation required:
# Linux / macOS
chmod +x blueprint-mcp-linux
BLUEPRINT_API_URL=http://ibm-i.host.or.ip:60111/services/api ./blueprint-mcp-linux
# Windows
set BLUEPRINT_API_URL=http://ibm-i.host.or.ip:60111/services/api
blueprint-mcp-windows.exe
Building
Package (for PyPI)
cd src/python/blueprint-mcp
uv build
# Output: dist/blueprint_mcp-<version>.tar.gz + .whl
Self-contained executable (current platform)
cd src/python/blueprint-mcp
uv sync --dev
uv run python build_executables.py
# Output: dist/blueprint-mcp-{linux|macos|windows}
All platforms via CI
Push a tag v* to trigger the GitHub Actions workflow, which builds
executables for all 3 platforms and publishes to PyPI.
Development
cd src/python/blueprint-mcp
uv sync --dev
uv run pytest
License
This software is proprietary and confidential. Copyright (c) 2025 Sitemule. All rights reserved.
A valid commercial license from Sitemule is required for any use. See the LICENSE file for details.
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 blueprint_mcp-1.0.5.tar.gz.
File metadata
- Download URL: blueprint_mcp-1.0.5.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4cf3852eebb7b6d47a2c700304ce00b02bbe42c69700019186294caf2686bdec
|
|
| MD5 |
d4c1cd1918535d8c6d5ffb7877d546c0
|
|
| BLAKE2b-256 |
ce473c6b8b715229f6118e786d3deac49202792ae1267cbb26da1216a23ce9f6
|
File details
Details for the file blueprint_mcp-1.0.5-py3-none-any.whl.
File metadata
- Download URL: blueprint_mcp-1.0.5-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
466458428be9e2992fb5b8fe1ab2d8b460d9f9a4b816b76937d136277c61e015
|
|
| MD5 |
768888e6f4e0f44ba1b1b264fb65b7eb
|
|
| BLAKE2b-256 |
721f23b470bb579457d3282612097c7db40114b6d2470012f1d8fdaefdd02b41
|