@pagecomment/mcp
v0.2.0
Published
MCP server that hands PageComment annotations to an AI coding agent.
Maintainers
Readme
@pagecomment/mcp
Hands PageComment annotations to an AI coding agent over MCP.
Someone marks up a live page — a comment on a button, a highlight with a suggested rewrite, an element inspection — and this puts those in front of your agent with the CSS selector and surrounding markup attached, so it can find what they meant without being told twice.
Connect it
claude mcp add pagecomment -- npx -y @pagecomment/mcp --board <board-url-or-id>For Cursor, Codex, Windsurf and anything else that takes a JSON config:
{
"mcpServers": {
"pagecomment": {
"command": "npx",
"args": ["-y", "@pagecomment/mcp", "--board", "https://pagecomment.com/i/abc123"]
}
}
}The board is optional. Without it the agent calls pagecomment_connect_board
with a link you paste into the conversation.
Options
| Flag | Environment | Default |
|---|---|---|
| --board <url-or-id> | PAGECOMMENT_BOARD | none |
| --api-base <url> | PAGECOMMENT_API_BASE | https://pagecomment.com |
| --agent <id> | PAGECOMMENT_AGENT | claude-code |
| --agent-name <name> | PAGECOMMENT_AGENT_NAME | Claude Code |
Tools
| Tool | What it does |
|---|---|
| pagecomment_connect_board | Open a board by URL or id |
| pagecomment_board_info | The page it annotates, its width, when it expires |
| pagecomment_list_annotations | Everything on the board, optionally by status |
| pagecomment_get_annotation | One annotation with its reply thread |
| pagecomment_watch_annotations | Block until new ones arrive, returned as a batch |
| pagecomment_acknowledge | Claim one and mark it in progress |
| pagecomment_resolve | Mark it done, with a summary posted to the thread |
| pagecomment_dismiss | Mark it as one you cannot act on, with a reason |
| pagecomment_reply | Ask a clarifying question in the thread |
The agent joins the board as one more peer over the same WebSocket a browser uses, so its replies appear where the person is already looking, live, and persist in the board's history like anything else.
Access
Possession of the board id grants read and write. That is the whole model: the id is a 21-character nanoid, and anyone holding the link can change what is there. Treat a board URL in an MCP config the way you would treat a key.
Apache-2.0. Derived from MarkLayer (Copyright Vadym Rusin), see NOTICE.
