
Primer Mcp
io.github.ivanlaiPublished by GitHub account ivanlaiv0.1.8Updated Nov 4, 2026
A Jira-lite MCP server that guides planning-first workflows for AI-assisted development.
Overview
A Jira-lite MCP server that keeps a planning-first backlog of markdown tickets in your repo and walks an AI coding agent through planning before coding.
- What you can do
- Set up the ticket store and append workflow guidance to the agent config file
- Create and record planning items: epics, architecture decisions, stories, tasks and spikes
- Move tasks and spikes through execution: start, complete with notes, verify with evidence
- Query the backlog: list actionable work, read a ticket by ID, list and filter tickets, amend status, dependencies or body
- Export the project as a self-contained interactive HTML graph
- Run guided prompts for planning a story and for importing or exporting Jira tickets
- When to use it
- Useful for solo developers and small projects where you want an AI coding agent to plan before implementing and to leave a structured, versioned record of goals, decisions and task status. It is a lightweight complement to Jira, not a multi-user replacement.
- Requirements
- Runs locally over stdio as a PyPI package; the README asks for Python 3.12+ and uv, with the client launching it via uvx. No accounts, API keys or environment variables are declared. Tickets are written as markdown files in a primer/ directory inside your project.
Installation
In SourceWeft
- Open Primer Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
primer-mcp
Beta — the core workflow is stable and tested, but the tool is new. Expect rough edges.
A Jira-lite MCP server that guides planning-first workflows for AI-assisted development — tickets as markdown files, your AI agent as the interface.
Does it work? An eval of 108 runs found it took planning-before-coding from 0/15 to 15/15 on features and open-ended requests. But one line in CLAUDE.md got a saved plan too, so what primer-mcp adds is the structure of the record. Details below.
Why
Getting real value from AI coding agents takes more than prompting. It takes shaping what they build, engineering the workflow around them, and deploying something that holds up in practice.
Left to their own devices, agents jump straight to implementation. Primer-mcp makes them plan first:
- state why the work matters
- record decisions and weigh trade-offs
- break the work into stories and tasks
- check the plan with you before coding
- complete and verify each one
The tickets are plain markdown with YAML frontmatter, committed alongside your code. There's no external service and no database. Everything is visible in your repo and easy to browse with tools like Obsidian.
primer-mcp is designed for solo developers and small projects — one person (and their AI agent) working through a backlog. It doesn't have assignment, notifications, or multi-user coordination, and that's deliberate: it's a lightweight complement to the AI workflow, not a replacement for Jira.
Quick start
Requires Python 3.12+ and uv.
Add to your MCP client config (e.g. Claude Code settings.json, Claude Desktop claude_desktop_config.json):
That's it — your MCP client downloads and runs primer-mcp automatically. You don't need to install anything manually.
Tell your AI agent what you want to build — it handles the rest. The server guides the agent through a planning-first workflow: why the work matters, decisions, stories, tasks, completion. Not sure what to do next? Ask your agent — it reads the current state and knows what comes next.
Manual install (optional)
If you prefer to install primer-mcp as a standalone tool (e.g. for the list-actionable CLI command):
What it looks like
A typical session — you describe the work, the agent handles the planning:
Every ticket is a markdown file in primer/, committed alongside your code. The export_graph tool visualises how they connect:
Clone the repo and open assets/demo-graph.html for the interactive version — click any node to see its full ticket.
Since tickets are plain markdown with wikilinks, you can also open primer/ as an Obsidian vault for a live graph that updates as tickets change — no need to re-export.
Tools
Your AI agent calls these tools automatically — you don't need to invoke them directly. You can also ask your agent to call a specific tool if you want more control.
Setup
Planning
Execution
Query
Export
Prompts
Agent instructions
When your project is initialized (automatically on first use, or via init_project), this section is appended to your agent config file (CLAUDE.md, AGENTS.md) to guide the agent. If you prefer to add it manually:
Graduating to Jira (experimental)
primer-mcp tickets map directly to Jira concepts (Epic, Story, Task, ADR). When a project outgrows local markdown files:
export_jirapushes tickets to Jira through any Jira MCP server. Each ticket'sexternal_reffield tracks its Jira key, so re-exports update existing issues instead of creating duplicates.import_jiragoes the other direction.
Both prompts are experimental and have not been tested end-to-end.
Does it work?
primer-mcp-eval tests whether primer-mcp changes how an AI coding agent works. It gives headless Claude Code the same 12 change requests three ways:
- plain
- with primer-mcp
- with one line in CLAUDE.md asking for a plan saved in
docs/before coding
That's 108 isolated runs, scored from transcripts with no LLM judge.
What it found:
- primer-mcp took a written plan before coding from 0 of 15 runs to 15 of 15 on features and open-ended requests. It changed little on bug fixes and refactors, where its guidance lets the agent skip planning.
- The one-line instruction got a saved plan on all 36 runs, for about 7% extra cost against primer-mcp's 50%.
- Outcomes: none of the three made a measurable difference.
So primer-mcp isn't needed to get a plan written. What it adds is the shape of the record, which the plan files lacked:
- goals kept apart from implementation steps
- decisions with the options that were rejected
- a status for each piece of work
Whether that structure pays off in later sessions is untested.
Overhead. Wherever the agent planned with primer-mcp, it took about 15–25 extra turns. That grew with the number of tickets created, not with the size of the code change, so it should be a smaller share of larger work (untested).
The methodology and full results are in that repo.
This repo dogfoods itself
The primer/ directory in this repo is the project's own backlog, created with the tools in src/ and committed deliberately — a tool that tells you to commit your ticket store should commit its own. Browse it on GitHub to see what a real store looks like before installing:
primer/adrs/— design decisions, including rejected alternatives and whyprimer/stories/andprimer/tasks/— what is done, what is next, and verification evidence
It is project management, not part of the package. The wheel ships src/primer_mcp only, and primer/ is excluded from the distribution. Your own primer/ is created automatically when you start planning.
Development
DEVELOPMENT.md covers setting up a checkout, running the checks, pointing an MCP client at unreleased code, and how the code is put together — from a tool call arriving over MCP to the ticket file being written.
License
MIT
Source: README.md at commit 3f24835
Tools
0Version history
4- v0.1.8LatestSep 30, 2026
- v0.1.7Sep 29, 2026
- v0.1.5Sep 28, 2026
- v0.1.4Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts