Skip to main content

Context Hub MCP Server - Jira + GitHub + Draw.io unified intelligence

Project description

ArchFlow

ArchFlow

Jira + GitHub + Draw.io — one MCP server, one question

PyPI Python 3.11+ MCP Compatible MIT License

Install · What You Can Do · Commands · Configuration · Architecture · Contributing · 한국어


What is ArchFlow?

ArchFlow is an MCP (Model Context Protocol) server that connects Jira, GitHub, and Draw.io diagrams to your AI coding assistant. Ask about sprint progress, trace issues to code, or explore system architecture — all in one conversation, without switching tabs.

You: "Where's the code for KAN-42?"

ArchFlow:
  Jira   → KAN-42: "Add OAuth2 login" (In Progress, @alice)
  GitHub → PR #87 "feat: oauth2 login flow" (src/auth/oauth.ts)
  Draw.io → Auth Service → connected to API Gateway, User DB

Who is this for?

Role Example
CEO / PM "What's the sprint progress?" · "Weekly team report"
New team member "Explain our system architecture" · "What should I look at first?"
Developer "Where's the code for KAN-123?" · "Which PRs are related to auth?"

Install

Prerequisites

  • Python 3.11+download
  • Claude Code — must be installed and working
  • Jira Cloud account (required) — GitHub and Google Drive are optional

Quick Start (2 commands)

# 1. Install the package (pick one)
pip install archflow-hub        # classic
# or
uv pip install archflow-hub    # faster alternative
# or
pipx install archflow-hub      # isolated global install

# 2. Interactive setup — validates tokens, generates config, registers MCP, installs slash commands
archflow init

archflow init walks you through everything interactively:

Jira URL           → https://your-team.atlassian.net
Jira email         → you@company.com
Jira API token     → ********  (validated automatically)
Jira project key   → KAN
Jira board ID      → 1
GitHub token       → ********  (optional, Enter to skip)
Google Drive       → (optional, Enter to skip)

After completion, restart Claude Code and try /archflow-status or /archflow-onboard.

Health Check

archflow doctor    # verify all connections

Install Methods

Method Description When to use
pip install archflow-hub Classic pip install Default option if you don't use uv
uv pip install archflow-hub Install via uv (10-100x faster) If you have uv installed
pipx install archflow-hub Isolated global install CLI tools without polluting global env
uvx archflow-hub Run without installing (like npx) Used internally by Claude Code to start the MCP server

After archflow init, Claude Code automatically runs the MCP server via uvx — no additional setup needed.


What You Can Do

For everyone

Ask this ArchFlow does this
"How's the sprint going?" Pulls active sprint from Jira, groups by status, shows % done
"Find everything about Redis" Searches Jira issues + GitHub code + diagram nodes at once
"What connects to Auth Service?" Parses Draw.io diagram, shows inbound/outbound connections

For developers

Ask this ArchFlow does this
"Where's the code for KAN-42?" Traces Jira issue → GitHub PRs → code files → architecture nodes
"Show me open PRs for auth" Searches GitHub PRs by keyword, branch, or linked Jira key
"What did the team ship this week?" Aggregates commits, PRs, and Jira transitions into one report

For managers / new members

Ask this ArchFlow does this
"Weekly team report" Cross-source activity: who did what, what moved, what's blocked
"I just joined — give me context" Sprint overview + architecture + repo structure + key issues
"How far is the auth epic?" Epic children with completion %, broken down by status

Slash Commands

These work in Claude Code after install:

Command What it does
/archflow-status Sprint progress, issue status, component completion
/archflow-trace Issue → PR → code → architecture tracing
/archflow-arch Architecture diagram queries and connections
/archflow-onboard Full project context for new team members
/archflow-report Weekly team activity report
/archflow-search Unified search across all sources

You can also ask naturally without slash commands — ArchFlow's 23 MCP tools are available to Claude directly.


MCP Tools (23)

Under the hood, ArchFlow exposes 23 tools via the Model Context Protocol:

Group Count Tools
Jira 7 get_issue, sprint_status, search, user_workload, component_status, recent_activity, epic_progress
GitHub 6 get_pr, list_prs, pr_for_issue, recent_commits, search_code, repo_overview
Draw.io 4 list_diagrams, get_diagram, search_nodes, node_connections
Cross-Source 5 trace_issue, trace_component, project_overview, team_activity, onboarding_context
Search 1 search (unified across all sources)

All tools are prefixed with archflow_ (e.g., archflow_jira_get_issue).

Source requirements

Tool group Jira GitHub Draw.io
Jira tools Required
GitHub tools Required
Draw.io tools Required
Cross-Source Required Optional Optional
Unified Search Optional Optional Optional

If a source is not configured, those tools return a "not configured" message instead of crashing.


Configuration

Config file

Generated by archflow init at ~/.archflow/config.yml. Edit anytime:

jira:
  url: "https://your-team.atlassian.net"
  projects: ["KAN"]
  board_id: "1"

github:
  repos: ["your-org/your-repo"]
  default_branch: "main"

gdrive:
  folder_id: "1AbCdEfG..."
  cache_ttl_minutes: 30

API Tokens

archflow init prompts for these interactively. For reference:

Jira API Token (2 min)
  1. Go to https://id.atlassian.com/manage-profile/security/api-tokens
  2. Click "Create API token" → enter label (e.g., archflow)
  3. Copy token → paste into archflow init
GitHub Personal Access Token (2 min, optional)
  1. Go to https://github.com/settings/tokens?type=beta
  2. Generate new token → name it archflow
  3. Permissions → Repository: Contents, Pull requests, Metadata (all Read-only)
  4. Copy token → paste into archflow init
Google Drive OAuth (10 min, optional — only for Draw.io)
  1. Google Cloud Console → create/select project
  2. APIs & Services > Library → enable Google Drive API
  3. Credentials → Create OAuth client ID (Desktop app)
  4. Copy Client ID and Client Secret
  5. Get Refresh Token via OAuth Playground:
    • Settings → "Use your own OAuth credentials" → enter Client ID/Secret
    • Step 1: Select drive.readonly scope → Authorize
    • Step 2: Exchange → copy Refresh token
How to find board_id / folder_id

Jira board_id — open your board, look at the URL:

https://your-team.atlassian.net/jira/software/projects/KAN/boards/1
                                                                  ^

Google Drive folder_id — open the folder, look at the URL:

https://drive.google.com/drive/folders/1AbCdEfGhIjKlMnOpQrStUvWxYz
                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Manual install (without archflow init)
pip install archflow-hub   # or: uv pip install archflow-hub

claude mcp add-json --scope user archflow '{
  "type": "stdio",
  "command": "uvx",
  "args": ["archflow-hub"],
  "env": {
    "PYTHONUNBUFFERED": "1",
    "ARCHFLOW_CONFIG_PATH": "~/.archflow/config.yml",
    "JIRA_URL": "https://your-domain.atlassian.net",
    "JIRA_EMAIL": "you@example.com",
    "JIRA_API_TOKEN": "your-jira-api-token",
    "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
  }
}'

claude mcp add (without -json) does not pass environment variables.


Architecture

ArchFlow Architecture

graph TB
    User["Your Question"] --> Server

    subgraph Server["ArchFlow MCP Server"]
        Cache["Cache (TTL)"]
        Matcher["Cross-Source Matcher"]
        JP["Jira Provider"]
        GP["GitHub Provider"]
        DP["Draw.io Provider"]
    end

    JP --> Jira["Jira Cloud API"]
    GP --> GitHub["GitHub API"]
    DP --> GDrive["Google Drive"]

All API responses are cached (default 30 min TTL). Repeated questions cost zero API calls.


Troubleshooting

archflow doctor    # checks Python, config, APIs, MCP registration
Problem Solution
Server not showing in Claude Code Run archflow init again, then restart Claude Code
"Jira not configured" Check Jira env vars — run archflow init again
"GitHub not configured" Add GITHUB_PERSONAL_ACCESS_TOKEN — run archflow init again
Draw.io files not found Check folder_id in config + all 3 Google env vars
Stale data Restart Claude Code (clears 30 min cache)
GitHub rate limit Wait a minute — results are cached automatically

Contributing

Project Structure

src/archflow/
├── server.py              # MCP server + tool registration
├── cli.py                 # CLI: init, doctor, serve
├── cli_init.py            # Setup wizard (tokens + MCP + slash commands)
├── cli_doctor.py          # Connection diagnostics
├── clients/               # API clients (Jira, GitHub, Google Drive)
├── providers/             # Business logic per source
├── core/                  # Config, cache, matcher, models
├── tools/                 # 23 MCP tools
└── skills/                # 6 slash command definitions

Dev Setup

git clone https://github.com/Juhwan01/ArchFlow.git
cd ArchFlow
uv sync --dev
uv run python -m pytest tests/ -v
uv run ruff check src/

Commit Convention

<type>: <description>
Types: feat | fix | refactor | docs | test | chore | perf | ci

License

MIT — see LICENSE 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

archflow_hub-0.2.4.tar.gz (236.3 kB view details)

Uploaded Source

Built Distribution

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

archflow_hub-0.2.4-py3-none-any.whl (41.7 kB view details)

Uploaded Python 3

File details

Details for the file archflow_hub-0.2.4.tar.gz.

File metadata

  • Download URL: archflow_hub-0.2.4.tar.gz
  • Upload date:
  • Size: 236.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for archflow_hub-0.2.4.tar.gz
Algorithm Hash digest
SHA256 6127ce4da357bd350cbbe6664a04ea3badc4ce29889f1a85d1737dfeaaa9ec88
MD5 c7817a718988ff84e0f5521f2ef8e2ab
BLAKE2b-256 4fe713e9ce73c7783bbb27177abdec0ae60857eb7ee94bcd334d577c5d698660

See more details on using hashes here.

File details

Details for the file archflow_hub-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: archflow_hub-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 41.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for archflow_hub-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 87a230ae3b41df881477fa81e99d7728a44070f4175b48f4e5d3b5e0ab54713d
MD5 0384d4e23c684714049c79775fbb4a4a
BLAKE2b-256 e01ed89474ca69bb09765c593bb82e7c3ae846cdc2c043ad220498205273a1da

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