$ timeahead.in
/ servers/npm/markurl
npm✓ Verified Publisher

markurl

updated 22d agogithub ↗
75fair
▣ Overview
npm

What it does

Markurl is a Node library that fetches a URL and returns a clean Markdown representation plus normalized metadata (title, byline, publish date, excerpts, images, links) suitable for LLM context. It trims output to a token budget by cutting at section boundaries, handles different content types (articles via Readability, GitHub READMEs via raw fetch, generic <p>-density fallback), and merges metadata from JSON-LD, OpenGraph, Twitter cards, and HTML meta tags. Tracking parameters are stripped from extracted links. The library ships with an MCP server, making it directly usable as a tool from Claude Desktop, Claude Code, or any MCP client.

Who it's for

Developers building AI agents, chatbots, or AI-powered applications that need to fetch and summarize web content. Specifically for agents that incorporate recent web information into Claude's context—e.g., newsfeeds, research summaries, real-time data lookups.

Common use cases

  • Fetch a news article and return its Markdown + metadata within a 4000-token budget for Claude analysis.
  • Extract GitHub repository READMEs as structured Markdown for documentation lookups.
  • Pre-process search results before feeding them into an LLM prompt.
  • Build an agent that can read web pages directly without requiring a separate browser or HTML parsing tool.
  • Supplement Claude's knowledge with real-time web content while keeping token usage predictable.

Setup pitfalls

  • Requires Node 20+. Older versions will fail silently during install.
  • The optional Playwright fallback (useBrowser: "auto") requires installing the playwright peer dependency separately and running npx playwright install chromium—skipping this means JS-heavy sites will return incomplete content.
  • Rate limiting is built-in (500 ms minimum between requests to the same host by default); if fetching many URLs from the same domain in parallel, expect staggered responses.
  • The fetch cache has a 5-minute TTL and 200-entry limit; high-volume agents should implement a persistent cache backend (Redis, etc.) via the FetchCache interface.
▣ Score BreakdownMCPScore = Σ(raw × weight)
DimensionRawWeighted
Security
35%
100
35.0
Freshness
25%
100
25.0
Adoption
20%
0
0.0
Quality
10%
100
10.0
Trust
10%
50
5.0
Total
75.0
⚿ Capabilities & Risk Explainer
execsecrets
◆ Risk level: medium
exec + secrets active — can execute code, access credentials, and make external network calls.
⚙ Install config
Claude Desktop · Cursor · Windsurf · VS Code (Copilot) · Claude Code
add to your MCP client config:
{
  "mcpServers": {
    "markurl": {
      "command": "npx",
      "args": [
        "-y",
        "github:nkpatnis/markurl"
      ]
    }
  }
}
📈 Score historylast 25 snapshots
5/13/20266/6/2026 · 25 snapshots
⚙ Maintenance health
26/ 100 · is this project alive?
contributors (1y)1
top contributor share100%
releases (1y)1
last release23d ago
ci✗ none
⛁ Raw data
weekly downloads0
github stars0
forks0
open issues0
license✓ present
readme length6099 chars
last publish3d ago
last commit22d ago
last updated7h ago
✓ verified listing· @nkpatnisManage listing →
🔔 Score drop alerts
get notified by email when this server's score drops 5+ points