{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_nwy7p53xbk9x","handle":"mainframe-ingest-mcp","url":"https://wellknown.network/agents/mainframe-ingest-mcp","links":{"self":"https://wellknown.network/agents/mainframe-ingest-mcp/record.json","html":"https://wellknown.network/agents/mainframe-ingest-mcp","markdown":"https://wellknown.network/agents/mainframe-ingest-mcp/record.md","api":"https://wellknown.network/api/v1/agents/mainframe-ingest-mcp","status":"https://wellknown.network/api/v1/agents/mainframe-ingest-mcp/status","claim":"https://wellknown.network/agents/mainframe-ingest-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/mainframe-ingest-mcp/claim.json","badge":"https://wellknown.network/agents/mainframe-ingest-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/mainframe-ingest-mcp/history","tools":"https://wellknown.network/api/v1/agents/mainframe-ingest-mcp/tools"},"ard":{"identifier":"urn:air::server:mainframe-ingest-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"mainframe-ingest-mcp","summary":"MCP server for ingesting COBOL mainframe codebases — classifies files, resolves dependencies, maps CICS transactions to REST routes","description":"# mainframe-ingest-mcp\n\nAn MCP server that ingests COBOL mainframe codebases from ZIP files and produces a structured JSON manifest — ready for downstream modernization tools.\n\n```bash\npip install mainframe-ingest-mcp\n```\n\n---\n\n## What is this?\n\nMainframe modernization projects always start with the same problem: **nobody knows what's in the codebase.** Thousands of COBOL files, copybooks, BMS screens, JCL jobs, and CSD exports — all sitting in a ZIP someone exported from the mainframe.\n\n`mainframe-ingest-mcp` solves the discovery step. Point it at any mainframe ZIP and it will:\n\n- Classify every file by type (COBOL, copybook, BMS screen, JCL, DB2 DDL, CSD export)\n- Detect and convert EBCDIC encoding to UTF-8\n- Scan every COPY, EXEC SQL INCLUDE, EXEC CICS, and CALL statement\n- Build a full dependency graph (which programs use which copybooks)\n- Parse CICS transaction definitions and suggest FastAPI REST routes\n- Map every BMS screen to an Angular component name\n- Produce a single `manifest.json` — the handoff document for the rest of the pipeline\n\nIt has been tested against a real 294-file, 118,000-line government CICS application and resolves 99%+ of dependencies with zero configuration.\n\n---\n\n## Installation\n\n```bash\npip install mainframe-ingest-mcp\n```\n\nRequires Python 3.10+.\n\n---\n\n## Connecting to Claude Desktop\n\nThis is an MCP server — it runs locally and exposes tools to Claude Desktop.\n\n**Step 1:** Find your Claude Desktop config file:\n\n| OS      | Location |\n|---------|----------|\n| macOS   | `~/Library/Application Support/Claude/claude_desktop_config.json` |\n| Windows | `%APPDATA%\\Claude\\claude_desktop_config.json` |\n| Linux   | `~/.config/Claude/claude_desktop_config.json` |\n\n**Step 2:** Add this to the config:\n\n```json\n{\n  \"mcpServers\": {\n    \"mainframe-ingest-mcp\": {\n      \"command\": \"mainframe-ingest-mcp\"\n    }\n  }\n}\n```\n\n**Step 3:** Restart Claude Desktop.\n\nThat's it. The tools will appear automatically. You can now say to Claude:\n\n> *\"Extract the ZIP…","publisher":{"name":"Rohan Nair","url":null},"homepage":null,"repository":null,"version":"0.1.1","license":"MIT","protocols":["mcp"],"tags":["mcp","cobol","mainframe","modernization","cics","db2","bms","zos","migration"],"pricing":null,"endpoints":[{"url":"pypi:mainframe-ingest-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","summary":"pypi","version":"pypi","description":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"code.refactoring","name":"Refactoring","confidence":1,"provenance":"declared"}],"categories":["code"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"mainframe-ingest-mcp","registry":"pypi","observedAt":"2026-10-22T07:25:11.273Z","publishedAt":"2026-03-06T19:20:34.948611Z","latestVersion":"0.1.1"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"mainframe-ingest-mcp","url":"https://pypi.org/project/mainframe-ingest-mcp/","firstSeenAt":"2026-09-09T23:26:36.861Z","fetchedAt":"2026-10-22T07:23:24.942Z","normalizedAt":"2026-10-22T07:23:24.942Z"}]},"firstSeenAt":"2026-09-09T23:26:36.861Z","updatedAt":"2026-10-22T07:25:11.273Z"}