markmap-mcp-server AGENTS.md

Repository instructions for an AI coding agent working on a TypeScript server that turns Markdown into interactive mind maps.

In plain words
What is it for?
Building the project, running tests, starting development mode, formatting code, and running the server with its command-line options.
Why use it?
It puts build, test, formatting, development, and local-run commands in one place, so the agent can follow the project's expected workflow.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/jinzcdev/markmap-mcp-server/agents-md
Clone the repo
git clone --depth 1 https://github.com/jinzcdev/markmap-mcp-server

Made for: Codex, OpenCode.

Per session 1,006 This file is loaded in full into every session.
When invoked 1,006 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01006 $0.01006
Opus 5 $0.00503 $0.00503
Sonnet 5 $0.00201 $0.00201
Haiku 4.5 $0.00101 $0.00101

Measured 2d ago against content hash edc2a50e8f02, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

markmap-mcp-server AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 79 lines

How it starts

The opening of the file, as written. The whole thing — 79 lines — stays where its author put it; the contents beside it link to each section on GitHub.

AGENTS.md

This file provides guidance to agents when working with code in this repository.

Commands

# Build (TypeScript → build/)
npm run build

# Run tests
npm test                      # vitest run (single pass)
npm run test:watch            # vitest in watch mode

# Development
npm run dev                   # tsc-watch → auto-restart on changes

# Formatting
npm run format                # prettier --write (also runs via lint-staged on commit)

# Run the server locally
node build/index.js
# With options:
node build/index.js --output /tmp/markmap --open always --return-mode both --offline

Architecture

This is an MCP server (Model Context Protocol) that converts Markdown to interactive mind maps using the markmap family of libraries. It runs over stdio transport.

Entry point: src/index.ts

  1. Parses CLI args (minimist) and env vars into a MarkmapMcpContext (output dir, open mode, return mode, offline flag)
  2. Creates an McpServer instance, registers tools via registerMarkmapTools(), and connects to StdioServerTransport

Tool registration: src/mcp/tools/

  • context.ts — Type definitions for MarkmapMcpContext, OpenMode ("always" | "never" | "agent"), ReturnMode ("path" | "content" | "both")
  • registry-base.ts — Abstract RegistryBase with register() method
  • tool-registry.tsToolRegistry extends RegistryBase, adds registerTools() wrapper
  • markmap-tools.tsMarkmapToolRegistry implements 4 tools and 1 prompt:
    • markdown_to_mindmap — main conversion tool (html/png/svg/jpg)
    • list_mindmaps — list generated files
    • get_mindmap — retrieve a single file by path (with path traversal protection)
    • cleanup_mindmaps — delete old/all files
    • mindmap_from_content — prompt that asks the LLM to structure content before calling the tool

Core markmap logic: src/markmap/

  • createMarkmap.ts — Uses markmap-lib (Transformer) and markmap-render (fillTemplate) to convert Markdown → HTML. Injects the markmap-toolbar, an export toolbar (PNG/JPG/SVG/Copy Markdown via html-to-image), and the original markdown source. In --offline mode, inlines all JS/CSS assets.
  • exportImage.ts — Launches headless Chromium via Playwright to render HTML → PNG/JPG/SVG. Requires playwright optional dependency.
  • lifecycle.ts — File listing, retrieval (with path traversal check), and cleanup for the output directory.
  • escape.ts — HTML/text escaping for safe embedding.
  • i18n.ts — English toolbar labels used in the generated HTML.

Read the full file on GitHub · 79 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 79 lines · 1,006 tokens per session scan A edc2a50e8f02

Subscribe to this mod's changes

markmap-mcp-server AGENTS.md is an instructions file published in the GitHub repository jinzcdev/markmap-mcp-server (281 stars, last pushed 28d ago), licensed MIT. It adds 1,006 tokens to every session, about $0.0050 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.