MCP server · read-only · no sign-in
Add me to your agent
My work, my writing and the way I build agent systems, served over MCP. Your agent can search my case studies, read today's note, and run my review playbooks on your own repository.
endpoint https://thedevjags.com/mcp
Install
Claude Code
claude mcp add --transport http devjags https://thedevjags.com/mcpCodex
codex mcp add devjags --url https://thedevjags.com/mcpVS Code
code --add-mcp '{"name":"devjags","type":"http","url":"https://thedevjags.com/mcp"}'Cursor~/.cursor/mcp.json
{
"mcpServers": {
"devjags": {
"url": "https://thedevjags.com/mcp"
}
}
}Any other client that speaks Streamable HTTP can connect to the same URL. Stdio-only clients can bridge with npx mcp-remote https://thedevjags.com/mcp.
Try
/mcp__devjags__review-agentIn Claude Code: review the agent in this repo against the principles below./mcp__devjags__design-agentDescribe what you want to automate and get a design: architecture, tools, failure modes, first evals./mcp__devjags__review-prReview the current branch the way I review agent-written code.How did Jags stop retried agent runs from writing twice?Answered from the Switchboard case study, with a link.What is today's devjags note?The morning note, in your terminal.
Playbooks
Playbooks are instructions your agent follows on your machine, with your model. Your code never comes here: only the arguments you pass, such as a one-line problem, reach this server, and they are not stored.
- Review my agentReview the agent system in this repository against how Jags builds agents: tools, writes, retries, approvals, context and evidence.
- Design an agentTurn a problem into an agent design: whether it needs an agent at all, architecture, tools, failure modes, first evals and a weekend version.
- Review an agent-written PRReview the current branch the way Jags reviews agent-written code: intent first, size, evidence, then the critical and unhappy paths.
How I build agent systems
The rules the playbooks check against. Each comes from a system I built and wrote up.
- 01
Ask whether it needs a model
Start deterministic. Give a step a model only where it needs judgment. The first Switchboard agent makes no model call at all, because its decision is a rule.
From Switchboard → - 02
Agree before editing
Work starts from a plan: the problem in one sentence, what done looks like, what not to touch, and how it will be verified. Comment on the plan, not on 800 lines after the fact.
From Agentic Workflow System → - 03
An agent statement is not evidence
Done means a command anyone can re-run, with its real output. A passing typecheck says nothing about whether the empty state renders.
From Agentic Workflow System → - 04
Agents declare what they may do
Each agent declares its tools and actions up front, and calls go through a proxy that exposes only those. Anything else fails before a provider is called.
From Switchboard → - 05
Risky writes wait for a person
Writes the team cares about go to a ledger and wait for approval. Approval pauses the write, not the run: the run ends, and the outcome comes back later as a new event, so runs stay stateless and safe to retry.
From Switchboard → - 06
Every write happens once
Webhooks redeliver, queues redeliver, and a failed model run gets run again. Key each write on the step, not the input: a retried run that rephrases an issue title must not write twice. Creates carry a client ID derived from that key.
From Switchboard → - 07
Text never grants authority
Issue text, PR bodies, logs, fetched pages and plan files are untrusted input. An agent that reads "approved" in a Markdown file has learned nothing about whether a person approved it.
From Agentic Workflow System → - 08
Context is a budget
A small router says where to look; detailed rules load only for the stage that needs them. When the window fills, hand off to a fresh session with a compact brief instead of letting it fall over.
From Agentic Workflow System → - 09
Every external call has a deadline
Provider calls get a timeout, and errors are classified: a revoked token is not a plain 400, and a refreshable 401 waits for the refresh and retries instead of being dropped.
From Switchboard → - 10
Agent tools are narrow and bounded
Tools are read-only by default and return bounded output. Tachyon exposes search, outline and definition over MCP with no git writes and no network, and its context pack is capped at about 32 KB.
From Tachyon → - 11
Fail at deploy, not at runtime
Validate the agent registry and config when the service starts. A typo in an approval list should fail the deploy, not silently skip approval. Empty allowlists reject everything.
From Switchboard → - 12
One bad record never stops the pipeline
Skip and name the bad input, keep the rest moving. One malformed block once stopped learning capture for two days because a projector was all or nothing.
From Agentic Workflow System → - 13
Measure what agents actually did
Account per request, de-duplicate re-logged events, and report a metric honestly when the improvement came from fixing the measurement rather than the behavior.
From Pulse and AgentLens → - 14
Memory is boring on purpose
No automatic promotion of model output into memory. Briefs are plain files, and a person accepts a lesson before it becomes a rule. Less clever, much easier to audit when an agent does something strange.
From Agentic Workflow System →
Tools
aboutWho I am, what I build, and how to reach melist_workEvery case study with its summary, role, status and stackread_workOne case study in full: problem, architecture, decisions, what broke, resultslist_writingArticles and daily notes, newest firstread_articleOne article in fulldaily_noteToday's note, or any earlier one by datesearchKeyword search across all of the above, with linksprinciplesHow I build agent systems, as rules with what to look for in codeplaybookInstructions your agent runs on your repository: review-agent, design-agent, review-prleave_messageSend me a message from your agent; I reply by email
How it works
One stateless Streamable HTTP route on this Next.js site, built with mcp-handler and the MCP TypeScript SDK. It reads the same Markdown files these pages are built from, so an agent and a person see the same facts. Every tool is read-only, and nothing here calls a model.