Skip to main content
Glama
techindicium

mock-jira

by techindicium

mock-jira

A standalone mock of a JIRA-shaped issue-tracking API for the adev course tracks to consume as an external system dependency. Required by the portwell-assist (SDLC) and portwell-analytics (DDLC) tracks.

Independent repo: no dependency on course-shared, the other mock-* repos, or any track repo. Tracks that need it pull it in as a service dependency; this repo never depends on them back.

Running the UI end-to-end test suite

The kanban-ui end-to-end suite drives a real Chromium browser (via Playwright) against a real issue-tracker-api server process. One-time local setup:

pip install -r requirements-e2e.txt
playwright install chromium

Then run it (already covered by the e2e-smoke gate, which runs all of tests_e2e/):

.venv/bin/python3 -m pytest -q tests_e2e/

Related MCP server: jira-cli-mcp

Running with Docker

docker compose up

This builds two images (issue-tracker-api, which also serves kanban-ui's static assets, and mcp-server) and starts them in dependency order — issue-tracker-api first, mcp-server once the API reports healthy.

  • issue-tracker-api is published at http://localhost:8000 (override with PORT=<port>)

  • mcp-server is published at http://localhost:8001 (override with MCP_PORT=<port>)

  • Neither port is exposed beyond localhost by default

  • The SQLite database lives in a named volume (mock_jira_db) and survives docker compose down (without -v)

  • Confirm the stack is healthy: docker compose ps (both services should show healthy/running) or curl http://localhost:8000/

  • View combined logs from both containers: docker compose logs -f

  • Tear down (keeping data): docker compose down; tear down and wipe data: docker compose down -v

Connecting an MCP client

mcp-server speaks the MCP streamable-http transport at http://localhost:8001/mcp (note the /mcp path — the bare host:port above is not itself a valid endpoint). It exposes 9 tools, thin wrappers over issue-tracker-api's HTTP contract:

list_projects, create_project, list_issues, get_issue, create_issue, update_issue, delete_issue, list_users, create_user.

From another Claude Code session — register it once, then just ask that session to use it:

claude mcp add --transport http mock-jira http://localhost:8001/mcp

From a plain Python script — using the official mcp SDK (pip install -r requirements-mcp.txt, or pip install mcp):

import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client

async def main():
    async with streamable_http_client("http://localhost:8001/mcp") as (r, w):
        async with ClientSession(r, w) as session:
            await session.initialize()
            tools = await session.list_tools()
            print([t.name for t in tools.tools])
            print(await session.call_tool("list_projects", {}))

asyncio.run(main())

From a GUI, with no code — the official inspector:

npx @modelcontextprotocol/inspector

Point it at http://localhost:8001/mcp with transport "Streamable HTTP".

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Provides tools for AI assistants to interact with JIRA APIs, enabling them to read, create, update, and manage JIRA issues through standardized MCP tools.
    6
    7
    3
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Comprehensive MCP server for Jira integration, enabling issue management, search, comments, attachments, and project metadata through 16 tools.
    378
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/techindicium/mock-jira'

If you have feedback or need assistance with the MCP directory API, please join our Discord server