MCP & agents
The MCP server lets an AI agent (Claude Code, Codex, any MCP client) read your annotations and act on them over stdio.
Wire it up
# from your Rails app root
bin/rails-markup configure # local → .mcp.json
bin/rails-markup configure --global # Claude Code → ~/.claude/settings.json
bin/rails-markup configure --codex # Codex CLI → ~/.codex/config.toml
configure registers the rails-markup MCP server. Start it standalone with:
bin/rails-markup mcp # MCP-only (stdio)
bin/rails-markup server # HTTP + MCP
What the agent can do
| Capability | Use |
|---|---|
| Read pending | List annotations awaiting action, with element + page + note. |
| Watch | Poll for newly created annotations. |
| Transition | Acknowledge / resolve / dismiss. |
| Reply | Add a message to an annotation's thread. |
Reads return the exact target (selector, css path, nearby text, bounding box), the page URL, intent, severity, and any screenshot — enough for the agent to locate and fix the element.
Production access
For a deployed app, generate a token and expose the token-authenticated external API:
bin/rails-markup setup-production
Set config.api_token (e.g. from credentials) to enable /external/*.
Credentials are sourced from configuration only — never from tool input.
See the CLI reference for every command.
source: nauman/rails-markup · rev 1.2.1