About io.github.XXO47OXX/spa-reader-mcp
io.github.XXO47OXX/spa-reader-mcp is an MCP server in the Cloud category: mCP Server that renders JavaScript SPA pages and extracts LLM-ready Markdown content.
Install
claude mcp add io-github-xxo47oxx-spa-reader-mcp -- npx -y spa-reader-mcpnpx -y spa-reader-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about io.github.XXO47OXX/spa-reader-mcp
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
spa-reader-mcp
MCP server that renders JavaScript SPA pages and extracts Markdown via headless Chromium.
Traditional scrapers fail on SPAs because content is rendered client-side. This tool launches Playwright, waits for JS to finish, then extracts clean Markdown using Readability + Turndown.
Install
npx playwright install chromium
Claude Desktop
{
"mcpServers": {
"spa-reader": {
"command": "npx",
"args": ["-y", "spa-reader-mcp"]
}
}
}
Claude Code
claude mcp add spa-reader -- npx -y spa-reader-mcp
Tools
spa_read
Render a page and extract content as Markdown.
| Parameter | Type | Default | Description |
|---|---|---|---|
url |
string | — | URL to read (required) |
waitForSelector |
string | — | CSS selector to wait for |
waitTimeout |
number | 30000 | Timeout in ms |
includeMetadata |
boolean | true | Add YAML frontmatter |
cookies |
array | — | Cookies for auth |
headers |
object | — | Custom HTTP headers |
spa_screenshot
Capture a PNG screenshot after JS rendering.
| Parameter | Type | Default | Description |
|---|---|---|---|
url |
string | — | URL to capture (required) |
waitForSelector |
string | — | CSS selector to wait for |
waitTimeout |
number | 30000 | Timeout in ms |
width |
number | 1280 | Viewport width |
height |
number | 720 | Viewport height |
fullPage |
boolean | false | Full page capture |
cookies |
array | — | Cookies for auth |
headers |
object | — | Custom HTTP headers |
Security
- SSRF protection: blocks private/loopback IPs
- Only
http:andhttps:schemes allowed - Selector injection prevention
- Content capped at 100KB
Dev
pnpm install && pnpm build
pnpm test
License
MIT
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.