Fetch public web pages with Jina AI Reader API and convert them into LLM-friendly Markdown. Use when an agent needs to read, summarize, quote briefly, extract facts from, or inspect a public URL that normal browsing, scraping, search snippets, or direct fetch tools cannot read cleanly, including JavaScript-heavy pages, reader-hostile pages, X/Twitter posts and threads, articles, GitHub pages, and PDFs. Trigger when the user asks to use Jina, use r.jina.ai, read an otherwise unreadable site, rec…
Fetch public web pages with Jina AI Reader API and convert them into LLM-friendly Markdown.
Use when an agent needs to read, summarize, quote briefly, extract facts from, or inspect a public URL that normal browsing, scraping, search snippets, or direct fetch tools cannot read cleanly, including JavaScript-heavy pages, reader-hostile pages, X/Twitter posts and threads, articles, GitHub pages, and PDFs.
Trigger when the user asks to use Jina, use r.jina.ai, read an otherwise unreadable site, recover readable text from a URL, read an X/Twitter post by URL, or turn a webpage into Markdown.
Stronger alternatives
This repository is archived — consider an actively maintained alternative.
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
Claude CodeDeclared
CursorNot declared
CodexNot declared
GitHub CopilotNot declared
WindsurfNot declared
Gemini CLINot declared
ClineNot declared
OpenCodeNot declared
Repository health
LicenseLICENSE
Default branchmain
Open issues1
Status
Archived
Skill metadata
Parsed from SKILL.md frontmatter.
Declared agentsclaude-code
Package contents
Files included with this skill beyond the listing page.
skill mdSKILL.md4,003 B
docsSUMMARY.md612 B
History
First seen on skills.sh
First recorded snapshot · 1 installs
SKILL.md
Jina Reader
Use this workflow when a public URL is hard to read through normal tools: JavaScript-heavy pages, reader-hostile articles, X/Twitter posts and threads, GitHub pages, PDFs, or pages that return incomplete snippets.
Quick Start
Use the bundled script when a public URL is hard to read through normal tools. The helper lives with the installed skill:
In this source repository, use python3 skills/jina-reader/scripts/readurl.py ... instead. If the skill is loaded from a plugin cache, run the helper at <plugin-root>/skills/jina-reader/scripts/readurl.py.
The script prints Markdown from https://r.jina.ai/. If JINAAPIKEY is set, it sends it as a bearer token; otherwise it uses public unauthenticated access.
For a one-off fetch without the script:
curl "https://r.jina.ai/https://example.com/page"
Workflow
Try ordinary browsing, web search, or direct fetch first when those tools are already suitable.
Use the installed helper at .claude/skills/jina-reader/scripts/readurl.py, ~/.claude/skills/jina-reader/scripts/readurl.py, or <plugin-root>/skills/jina-reader/scripts/read_url.py when the page is public but normal tools return a blank page, script shell, paywall/login-like wrapper, poor snippets, blocked parsing, or incomplete text.
Also prefer the script for X/Twitter, long URLs, URLs containing #, or repeated use.
Summarize or extract only the relevant content requested by the user.
Mention uncertainty when Reader returns sparse output, a login wall, deleted content, rate-limit text, or an obviously incomplete page.
Do not treat Jina Reader as authorization bypass. It can only reliably read content that is publicly accessible to Jina.
X/Twitter Notes
Use the canonical post URL when possible: https://x.com/<handle>/status/<id>.
twitter.com URLs are acceptable; the script leaves the original URL intact.
Reader may fail on deleted, protected, age-gated, region-blocked, or login-only posts.
For threads, fetch the thread URL first. If the returned Markdown only includes the first post, ask for or locate the individual post URLs before claiming full thread coverage.
Output Handling
Keep direct quotations short and attribute them to the fetched URL.
For news, legal, financial, medical, or other high-stakes/current claims, corroborate with additional reliable sources before presenting conclusions.
If the task is to archive or preserve a post, save the Markdown to a user-facing file only when the user asks.
Script
The installed helper accepts the same arguments in project, user, and plugin installs: