AgentRender
AgentRender MCP server lets you render web URLs into images, PDFs, and structured extracts.
screenshot: Capture a public URL as an image (PNG/JPEG/WebP) with options for width, height, and full-page; returns JSON withimage_base64and a receipt.pdf: Capture a public URL as a PDF with options for landscape and print background; returns JSON withpdf_base64and a receipt.extract: Extract title, meta description, canonical URL, main text, and links from a URL, with options to include links and limit text length.
AgentRender MCP
URL → screenshot, PDF, or structured extract for AI agents via MCP.
Get a free API key instantly — 150 renders/month, no card: https://agentrenderapi.com/#waitlist (or just ask your agent to call the
get_free_keytool with your email)Pricing: Free — 150 renders/month with the free key (no card). Need more? Starter $17/month (2,000 renders/month): https://agentrenderapi.com/#pricing
Tools: screenshot (returns the image) · pdf (saves a file, returns its path) · extract (title, text, links as JSON) · get_free_key
Quick start
Get a free key: https://agentrenderapi.com/#waitlist (instant, no card).
Add the server to your client (below) with
uvx agentrender-mcp. Needs uv.Ask your agent: "Take a screenshot of https://example.com".
Claude Code
claude mcp add agentrender -e AGENTRENDER_API_KEY=akr_your_key -- uvx agentrender-mcpCursor (~/.cursor/mcp.json) / Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"agentrender": {
"command": "uvx",
"args": ["agentrender-mcp"],
"env": {
"AGENTRENDER_API_KEY": "akr_your_key"
}
}
}
}ChatGPT (OAuth — no API key)
AgentRender works as a ChatGPT app/connector with OAuth sign-in (no key to paste):
In ChatGPT, open Settings → Apps & Connectors (developer mode, until the directory listing is live) and choose Create / Add connector.
MCP server URL:
https://api.agentrenderapi.com/mcp· Authentication: OAuth. ChatGPT discovers the authorization server automatically (RFC 9728 protected-resource metadata + dynamic client registration).Click Connect and sign in with Google or email (Auth0). A free account (150 renders/month) is created on first sign-in.
Try: "Take a screenshot of https://example.com", "Save https://example.com as a PDF", or "Extract the headings from https://en.wikipedia.org/wiki/Web_scraping".
Monthly allowances, rate limits and resets: https://agentrenderapi.com/limits · Privacy: https://agentrenderapi.com/privacy
Hosted MCP (no install)
Remote Streamable HTTP endpoint: https://api.agentrenderapi.com/mcp with header Authorization: Bearer akr_your_key.
claude mcp add --transport http agentrender https://api.agentrenderapi.com/mcp \
--header "Authorization: Bearer akr_your_key"Cursor:
{
"mcpServers": {
"agentrender": {
"url": "https://api.agentrenderapi.com/mcp",
"headers": { "Authorization": "Bearer akr_your_key" }
}
}
}pip instead of uvx
pip install agentrender-mcp
export AGENTRENDER_API_KEY=akr_your_key
agentrender-mcp # or: python -m agentrender_mcp.serverRelated MCP server: Screenshot API
Environment
Variable | Default | Purpose |
| (required) | Your |
|
| API base |
Tools
Tool | Maps to | Returns |
|
| MCP image block (JPEG by default; |
|
| Saves the PDF locally ( |
|
| Title, meta description, canonical, main text, links (non-LLM). |
|
| Issues a free key (150/mo) for your email and uses it for the session. |
Plans
Free: 150 renders/month with the free key, no card. Then Starter $17/month (2,000 renders) · Growth $79 · Scale $259 — https://agentrenderapi.com/#pricing
Every result includes a quota block (renders left this month). When the free 150 run out, tools return a clear quota_exceeded error with an upgrade_url — a Stripe checkout link tied to your key. Subscribe there and the same key is upgraded within seconds; just retry. Starting fresh from the website instead? Your new key is shown on the checkout confirmation page and emailed instantly.
REST
curl -s https://api.agentrenderapi.com/health
curl -s -X POST https://api.agentrenderapi.com/v1/extract \
-H "Authorization: Bearer $AGENTRENDER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'Notes
Do not commit API keys. Rotate any key that leaks.
Support: hello@agentrenderapi.com
License
MIT
Available Tools
3 toolsextractBInspect
Extract title, meta description, canonical, main text, and links from a URL (non-LLM).
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| include_links | No | ||
| max_text_chars | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden, and it does disclose the core behavior: a non-LLM deterministic extraction of the listed page fields. It does not mention failure behavior, redirects, or dynamic-content limitations, which would be useful for a network-fetching tool. The disclosed scope is accurate and non-contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence front-loads the action and the output list, with no filler and no repetition of the tool name. The parenthetical adds a useful qualifier without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists and can describe return values, the definition omits the meaning of two optional parameters and any guidance on selecting between extract and its pdf/screenshot siblings. For a 3-parameter tool with no annotations, this leaves important ordering and invocation decisions underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only covers the URL semantically via 'from a URL'. It never explains include_links or max_text_chars, leaving the agent to infer their effects and defaults. The word 'links' hints at include_links behavior but does not explicitly connect them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the verb 'Extract' and enumerates exact resources: title, meta description, canonical, main text, and links from a URL. This is specific enough to distinguish it from the pdf and screenshot siblings, which capture rendered representations rather than semantic content. The parenthetical '(non-LLM)' further clarifies the extraction method.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit when-to-use guidance or exclusions. The sibling tools pdf and screenshot are known but never compared, so an agent cannot tell whether to choose extract versus a rendering tool for a URL. The only hint is '(non-LLM)', which describes method rather than usage conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pdfBInspect
Capture a public URL as a PDF. Returns JSON with pdf_base64 + receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| landscape | No | ||
| print_background | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. It adds useful context by restricting input to public URLs and by summarizing the JSON return shape as pdf_base64 + receipt. It does not disclose potential timeouts, rendering limitations, or other HTTP behaviors that might affect the call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, no filler, with the core action front-loaded and the return format kept to one clause. It is appropriately sized for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with an output schema, the definition covers the main action and return contract, but it omits explicit sibling differentiation and parameter semantics. An agent would have to guess at usage edge cases such as authenticated pages or orientation/background effects, so it is only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not compensate: it only references the URL and says nothing about landscape orientation or print_background behavior. The boolean names are somewhat self-explanatory, but the description adds no meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Capture a public URL as a PDF' names a specific action, resource, and output format. It is clearly distinct from sibling tools 'screenshot' and 'extract', so an agent can tell what this tool is for.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for producing PDFs from publicly accessible URLs, but it does not explicitly state when to prefer it over 'screenshot' or 'extract'. It also does not mention exclusions such as private or authenticated pages, so usage guidance is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
screenshotCInspect
Capture a public URL as an image (PNG/JPEG/WebP). Returns JSON with image_base64 + receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| width | No | ||
| format | No | png | |
| height | No | ||
| full_page | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral disclosure burden. It states the output shape but does not mention failure behavior, size limits, load consequences, or whether the operation is purely safe/read-only. The 'public URL' constraint is helpful but insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, dense sentence that front-loads the core action and result. Every clause contributes useful information, and there is no repetition of schema data.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite an output schema covering the return value, the tool has five parameters and zero schema descriptions, so the definition should compensate by explaining parameter semantics and operational constraints. It does not; it only covers format and output shape, leaving important calling details undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only compensates for format by listing PNG/JPEG/WebP. There is no explanation of how width, height, full_page, or url should be provided, beyond their raw titles and defaults. Most parameter meaning is left to the agent to infer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly specifies the operation ('Capture a public URL as an image'), the output formats (PNG/JPEG/WebP), and the return shape. It is specific, but it does not explicitly differentiate from sibling tools pdf and extract, so it loses a point.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies use by saying 'public URL', which hints it will not work against authenticated pages, but there is no guidance on when to prefer screenshot over pdf or extract, nor any mention of when not to use it. No alternative routing is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v0.1.1- First observed
extract - First observed
pdf - First observed
screenshot
TDQS
Scored across 3 tools
Each tool captures a distinct output format from a URL: PDF, image, or extracted text/metadata. There is no overlap in purpose, so an agent can easily select the correct tool without ambiguity.
All tool names are single, lowercase verbs describing the action ('pdf', 'extract', 'screenshot'). While not verb_noun, the pattern is perfectly consistent and intuitive.
With 3 tools covering URL rendering to PDF, image, and text extraction, the count is well-scoped for a focused utility server. Each tool serves a clear purpose without bloat.
The set covers the primary content-capture needs (PDF, image, text extraction). Missing minor capabilities like full HTML or raw response capture, but the core workflows for a render/capture service are complete.
Maintenance
Related MCP Connectors
Screenshot, PDF, OG-image, and page extraction (markdown/JSON) over MCP. Bearer key or x402.
MCP tools for AI agents: render URLs to image/PDF, check link health, convert HTML/CSV/JSON.
Read a URL as clean markdown, screenshot a website, url to PDF. Web access for agents, no signup.
- mcpOAuthcom.screenshotink
Screenshot, diff, audit and sitemap-capture any web page — 5 MCP tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceThe web data platform for AI agents. Fetch, search, crawl, extract, monitor, and screenshot any URL. 55+ domain extractors, 65-98% token savings. 7 MCP tools included.332 npm12AGPL 3.0
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to capture any public URL as PNG, JPEG, or PDF via REST API or MCP tools, including screenshot capture, page description, and PDF rendering.9 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to read, screenshot, or convert web pages to PDF using a real headless browser, turning any URL into clean Markdown, a visual image, or a print-ready document.82 npmMIT
- AlicenseAqualityBmaintenanceGive AI agents eyes on any web page: pixel-perfect screenshots, print-ready PDFs, branded OG images, code images, and structured page extraction (JSON or Markdown).711 npmMIT