marginalia
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@marginaliaRender this Markdown as a threaded comment page"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
marginalia
Turn any Markdown into a browser-based, click-to-comment thread over MCP. Comments
record as clean, anchored MCP tool_results; replies render as in-page,
re-annotatable cards. One portable FastMCP-over-stdio server, launched with uvx,
installs identically across Claude Code, Cline, and opencode.
See USAGE.md for the tool loop and environment variables.
Install
marginalia runs via uvx straight from git — no clone, no PyPI release needed.
The snippets below pin the latest release tag, @v2.1.0. To track unreleased
changes instead, swap the tag for @main.
Warm the cache once: the first
uvx --from git+…resolve can take long enough that a client drops the server on first launch. Run the bare command once in a terminal to populate the uvx cache, then start your client.marginaliais a stdio MCP server (no--help), so redirect stdin from/dev/nullto make it exit immediately once the cache is warm:uvx --from git+https://github.com/Jin-HoMLee/marginalia@v2.1.0 marginalia </dev/null
Claude Code
claude mcp add --scope user marginalia -- uvx --from git+https://github.com/Jin-HoMLee/marginalia@v2.1.0 marginaliaOptional (for CC's lazy-loaded skill UX): copy USAGE.md to
~/.claude/skills/marginalia/SKILL.md and prepend a two-line frontmatter
(name: marginalia / description: …). The repo ships no maintained SKILL.md.
Cline (cline_mcp_settings.json)
{
"mcpServers": {
"marginalia": {
"command": "uvx",
"args": ["--from", "git+https://github.com/Jin-HoMLee/marginalia@v2.1.0", "marginalia"],
"env": { "MARGINALIA_POLL_S": "540" },
"timeout": 3600
}
}
}MARGINALIA_POLL_S is optional here — 540 is already the default, so the env
block can be dropped entirely. It's shown only to make the long-poll window explicit.
If Cline is launched from the VS Code GUI and can't find uvx on PATH, use the
absolute path to uvx (e.g. ~/.local/bin/uvx) as command.
opencode (opencode.json)
{
"mcp": {
"marginalia": {
"type": "local",
"command": ["uvx", "--from", "git+https://github.com/Jin-HoMLee/marginalia@v2.1.0", "marginalia"],
"environment": { "MARGINALIA_POLL_S": "20" },
"enabled": true
}
}
}MARGINALIA_POLL_S=20 is required — opencode caps MCP tool execution at ~30s, so the
default 540s long-poll would be killed.
Related MCP server: Terrarium
Develop
git clone https://github.com/Jin-HoMLee/marginalia && cd marginalia
python3 -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
pytest # 44 testsLicense
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
- PagegoatOAuthcom.pagegoat
Publish HTML to a shareable link and collect feedback anchored to the passage it refers to.
Human feedback for AI agents: share HTML, get a live review link, read anchored notes as markdown.
Host the HTML or Markdown pages your AI generates and share each as a link with comments and access.
Comment on AI-generated webpages; feedback flows back to your coding agent. Free, MIT, local-first.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables sharing Markdown documents for collaborative review with inline annotations and structured change requests.18 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to publish HTML artifacts for human review, receive anchored feedback, and iterate until approval.2-
- AlicenseNot gradedqualityBmaintenanceLive markdown preview for LLM agents. Call a single tool to watch a markdown file and it opens a browser UI that streams rendered updates, changes, and history.MIT
- AlicenseNot gradedqualityCmaintenanceEnables reviewing Markdown files in a browser with inline annotations, submitting or cancelling reviews, and returning structured feedback through the review_markdown MCP tool.MIT