In July I wrote that the new version has “an MCP server to create drawings for you”, and added: ask me if you want to know the endpoint. A few of you did.
The endpoint is now public. There is also a second way to run it, which I did not expect to build, and which turned out to be the better one for most people.
What It Does
MCP is the protocol that lets an AI assistant call your tools. With this one configured, you can ask Claude to map a decision as an IBIS diagram, or a domain as a Concept Map, and you get the diagram back as an image — in the notation, with its rules applied.
There are five tools: Concept Map, IBIS, Causal Loop Diagram, Timeline, and one that simply hands the assistant a notation’s own documentation.
That last one matters more than it sounds.
Teaching the Notation
A model that has not been told what a Concept Map is will draw boxes with labelled arrows. That is not a Concept Map. Every arrow has to complete a readable proposition - concept, relation, concept: learning produces knowledge. Get that wrong and you have a mind map in a costume.
So rather than hoping the model already knows, the server can give it the notation’s definition: the node types, which edges are legal, the conventions that separate a good map from a sketch. The assistant does not have to remember what IBIS is. It can ask.
And every rendered diagram comes back with more than an image. It comes with a quality report. This is a real one, from a first attempt at mapping learning:
Quality metrics:
- Concepts: 4, Relations: 1, Ratio: 0.25
Warnings:
- Node “Memory” is disconnected (no edges)
- Node “Practice” is disconnected (no edges)
- Only 4 concepts — consider adding more to fully explore the guiding question
- Concept “Memory” is not connected to any relation
- Concept “Practice” is not connected to any relationFour concepts and one relation is not a map. It is a single proposition with two nouns left lying beside it - which is exactly what a model produces when it knows the vocabulary but has not done the thinking.
The assistant reads that and fixes it before showing you anything. This is the part I would build again first. Not the rendering - the loop. A model that can be told, in the vocabulary of the thing it is making, that its work is not good enough yet.
Two Ways to Run It
The hosted server is the one I have been quietly handing out. It lives at a URL, and that is all some clients can accept - Claude in a browser tab, ChatGPT connectors. For those, paste this in:
{
“mcpServers”: {
“vgraph”: { “url”: “https://mcp.vithanco.com/mcp” }
}
}The second way runs on your own machine:
{
“mcpServers”: {
“vgraph”: { “command”: “npx”, “args”: [”-y”, “@vithanco/vgraph-mcp”] }
}
}Use this one if your assistant can run a command - Claude Code, Claude Desktop, Cursor.
Why the Second One Exists
Building it taught me something I had got wrong.
I assumed the server was there because the work needed a server. It is not. The Vithanco engine compiles to WebAssembly - that is how the editor runs in your browser, and how the Obsidian and VS Code plugins render diagrams without calling anything. So the code I was paying to host was, for many users, already sitting on their laptop.
What actually needed solving was not computation. It was distribution. A URL is the only thing you can hand everyone. “Download this binary for your platform” is where adoption stops. Hosting solved a packaging problem while looking like it solved a computing one. npx solves the packaging problem too, for anyone with a terminal. The WebAssembly travels inside the package, and nothing leaves your machine.
It is also faster, by more than I expected. Same diagram, same laptop:
What This Is — and What It Is Not
What you get back is a PNG, and that is a real loss.
Everywhere else, Vithanco renders SVG - in the browser editor, and in your Obsidian and VS Code notes. That SVG is not merely sharper. It is interactive. Hover over a concept and the rest of the diagram fades back, leaving that concept and the ones it connects to lit up. On a dense map, that is how you read it at all. Hover an edge and it highlights along its whole path.
A PNG does none of that. It is a picture of a diagram. The reason is the protocol: MCP passes images to the assistant as PNG, so that is what the tools return. If you want the interactive version, take the VGL the assistant wrote and paste it into the editor on the website - same text, same engine, and everything starts responding again.
This is also not a drawing API. If you want arbitrary shapes, use a drawing tool. It supports four notations today, not the full set the app knows. The quality checks are real but not exhaustive - they catch structural problems, not whether your thinking is any good. And an assistant that ignores the quality report will still hand you a weak diagram; the loop only helps if the model uses it.
Both servers are free at the moment - I might change that in the future.
Try It
Ask your assistant to map a decision you are actually stuck on, as an IBIS diagram. Not a demo question - a real one. The notation is unforgiving about vague thinking, which is rather the point.
As always, I would appreciate your feedback - especially on where the notations hold up and where they get in the way. And disagreement, if you have data or a thought behind it, is a gift.
The aim is not more diagrams, but better thinking.



