Skip to main content

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 6 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
get_graph_top_down Forward call/dependency chain: all programs and data-entities this node interacts with
get_graph_bottom_up Reverse call chain / impact analysis: all programs and data-entities that interact with this node
get_program_info Metadata and description for a program or table (no source code)
get_program_source Source code and source-file location for a program or table
search_source_code_with_regex Search program source and table definitions for text matching a regular expression
get_domains List all defined domains, including a 'No domain' entry for unassigned nodes

Installation

From PyPI

# Install with uv
uv pip install blueprint-mcp

# Or with pip
pip install blueprint-mcp

From source

git clone https://sitemule.dev/sitemule/blueprint-mcp.git
cd blueprint-mcp
uv sync

VS Code Extension

The companion Sitemule Blueprint extension (in src/vscode/blueprint-mcp-settings/) 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:

  1. Set blueprint.apiUrl (and optionally blueprint.apiKey) in VS Code settings
  2. The extension fetches the current config from the backend on activation
  3. Edit any setting — changes are automatically pushed to the backend
  4. 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

  1. Open the command palette (Ctrl+Shift+P / Cmd+Shift+P)
  2. Run MCP: Add Server… → search for Sitemule Blueprint
  3. VS Code will prompt you for the API URL and (optionally) the API key
  4. 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)

bash scripts/build-package.sh
# Output: dist/blueprint_mcp-<version>.tar.gz + .whl

Self-contained executable (current platform)

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 GitLab CI pipeline, which builds executables for all 3 platforms and publishes to PyPI.

Development

See CONTRIBUTING.md for full developer setup, VS Code integration, and the release workflow.

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blueprint_mcp-1.0.17b1.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

blueprint_mcp-1.0.17b1-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file blueprint_mcp-1.0.17b1.tar.gz.

File metadata

  • Download URL: blueprint_mcp-1.0.17b1.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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

Hashes for blueprint_mcp-1.0.17b1.tar.gz
Algorithm Hash digest
SHA256 727ebc11d52c5e0947522244833e1b9bc276ce83781321a111e796208dcb2f07
MD5 a389f6a1e4dab30d944abd638866331f
BLAKE2b-256 0c78ec01f248347d092d66f57294c67257370efc3b9ea117f1376cb7a4fc6b34

See more details on using hashes here.

File details

Details for the file blueprint_mcp-1.0.17b1-py3-none-any.whl.

File metadata

  • Download URL: blueprint_mcp-1.0.17b1-py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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

Hashes for blueprint_mcp-1.0.17b1-py3-none-any.whl
Algorithm Hash digest
SHA256 a67f0e4ff2f11aaec8148a5330fe7438edb50089dd0648ec3615d86c97a41c95
MD5 cc61da5f2ec8974c7ddafcb9e24b8237
BLAKE2b-256 6150bf9941d36b982b8670ec26a27d73ddb2b26c90f6aeea80fa195ba416a65d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page