kiro-ibmi-mcp-bridge
Bridges AI with IBM i systems for source code management, SQL queries, and schema inspection via MCP.
README
<p align="center"> <img src="icon.png" width="120" alt="Kiro IBM i MCP Bridge" /> </p>
Kiro IBM i MCP Bridge
A Kiro (and VS Code) extension that bridges Kiro's AI (via the Model Context Protocol) with IBM i (AS/400) systems, enabling AI-powered development workflows for RPG, COBOL, CL, and other IBM i languages.
Features
- Read/Write Source Members: AI can read and modify IBM i source code directly
- Execute SQL: Run queries against DB2 for IBM i
- Table Schema Inspection: Retrieve column definitions and metadata
- Intelligent Editing: Partial source edits without full rewrites
- Standalone MCP Server: A self-contained Node.js MCP server (
out/server.js) that connects to IBM i directly over SSH — launched by Kiro (or any MCP client) as a separate process. - Editor auto-refresh: The bundled VS Code extension reloads any open source member as soon as the server writes to it.
Prerequisites
- VS Code 1.85.0 or higher
- Node.js 18+ (used by Kiro to launch the MCP server)
- Code for IBM i extension (used to browse/open members and to receive editor auto-refresh)
- Network/SSH access to your IBM i system
Installation
- Install from VS Code Marketplace (search for "IBM i MCP Bridge")
- Or download the
.vsixfile and install manually:code --install-extension kiro-ibmi-mcp-bridge-0.3.2.vsix
Usage with Kiro
The extension bundles the MCP server and configures Kiro for you — no manual mcp.json editing required.
1. Install prerequisites
- Install the Code for IBM i extension in Kiro.
- Install this extension (
kiro-ibmi-mcp-bridge) from the VSIX (Extensions →...→ Install from VSIX…).
2. Configure your IBM i connection
Open the Command Palette and run IBM i MCP: Configure Connection. Enter host, user, password and SSH port.
The extension then:
- Saves the credentials locally in its per-user storage (not in
mcp.json, not in your repo). - Registers the
ibmi-bridgeMCP server in~/.kiro/settings/mcp.json, pointing to the server bundled inside the extension.
Reconnect the ibmi-bridge server from the Kiro MCP Servers panel to apply.
The registration only stores a reference to the credentials file (
IBMI_CRED_FILE); your password is never written intomcp.json.Available settings:
ibmiMcpBridge.registerScope(globalorworkspace),ibmiMcpBridge.serverName,ibmiMcpBridge.runtime(kiroornode),ibmiMcpBridge.autoApprove. By default the server runs on Kiro's own bundled Node runtime, so no separate Node.js installation is required. SetibmiMcpBridge.runtimetonodeto use anodebinary from yourPATHinstead.
3. Start Using AI with IBM i
Once configured, you can interact with IBM i sources naturally:
You: "Read the source code from MYLIB/QRPGLESRC/MYPGM"
AI: [reads and displays the RPG source]
You: "Add error handling to the SQL statements"
AI: [modifies the source with proper error handling]
You: "Show me the schema for MYLIB/CUSTOMERS"
AI: [displays table columns and types]
Available MCP Tools
| Tool | Description |
|---|---|
get_active_member |
Read the member currently open in Code for IBM i (automatic context) |
read_member_source |
Read source code from a member |
write_member_source |
Overwrite entire source member |
edit_member_source |
Partial edit using find/replace |
run_sql_query |
Execute SQL (mutations require flag) |
get_table_schema |
Retrieve table column definitions |
Automatic context (open member)
You don't have to type library/file/member every time. When you open a source member in Code for IBM i, the extension tracks it (shown in the status bar as IBM i: LIB/FILE(MBR)) and the MCP server uses it automatically. So you can just say:
"Analyze this program"
"Add error handling to the open source"
"Explain what this member does"
The read_member_source, edit_member_source and write_member_source tools fall back to the open member when you omit the coordinates.
Running the server manually
The MCP server communicates via stdio. Kiro normally launches it for you (see config above), but you can also run it directly for testing:
export IBMI_HOST=your-ibm-i-hostname
export IBMI_USER=your-username
export IBMI_PASSWORD=your-password
export IBMI_PORT=22
node out/server.js
Security Notes
- SQL mutations (
INSERT,UPDATE,DELETE) are blocked by default - Use
allow_mutating: trueparameter to enable (use with caution) - Credentials are entered via the
IBM i MCP: Configure Connectioncommand and stored in the extension's per-user global storage, not inmcp.jsonand not in your workspace/repo mcp.jsononly stores a path reference (IBMI_CRED_FILE) to that local credentials file- Run
IBM i MCP: Clear Saved Credentialsto remove the stored credentials
Development
# Clone the repository
git clone https://github.com/dibari62/kiro-ibmi-mcp-bridge
cd kiro-ibmi-mcp-bridge
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Watch mode for development
npm run watch
# Build standalone server
npm run build
# Package VSIX
npx vsce package
Requirements
- Node.js 18+
- TypeScript 5.3+
- Code for IBM i extension (for VS Code mode)
Known Issues
edit_member_sourcerequires exact whitespace matching for fixed-format sources- Large source members may take longer to process
- SQL execution timeout is 30 seconds
Contributing
Contributions welcome! Please open issues or PRs on GitHub.
License
MIT License - see LICENSE file for details
Credits
Built by dibari62 for the IBM i development community.
Powered by:
Enjoy AI-powered IBM i development! 🚀
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.