@hauntapi/mcp-server
A web extraction server that turns permitted public web pages into structured JSON or Markdown using plain-language prompts, returning explicit error signals (never fabricated data) when pages are blocked, login-required, CAPTCHA-gated, or too sparse.
Key capabilities:
Demo without an API key (
try_demo_extract): Verify the server is wired in, explore sample extraction output, and get links to docs, signup, pricing, and free-tier details.General-purpose structured data extraction (
extract_url): Describe in plain English what fields you want (e.g. product names, prices, reviews, contact details) and receive clean JSON, Markdown, or raw HTML. Works with JavaScript-heavy SPAs.Clean Markdown conversion (
extract_markdown): Convert a public page into readable Markdown optimized for RAG pipelines, agent context, or saving as a.mdfile.Article content extraction (
extract_article): Pull structured fields — title, full body text, author, and publish date — from news articles, blog posts, and editorial pages.Page metadata retrieval (
extract_metadata): Obtain title, meta description, Open Graph tags, Twitter Card tags, canonical URL, and other<head>metadata in a consistent JSON schema.Usage monitoring (
get_usage): Check your current plan, monthly credit limit, used credits, and remaining credits.
Extract canonical URL metadata from web pages as part of the metadata extraction capabilities, identifying the preferred URL for content.
Automatically bypass Cloudflare protection when extracting data from URLs, handling JavaScript rendering and Cloudflare security measures transparently.
Access the MCP server source code and documentation on GitHub, with the server hosted at the hauntapi/mcp-server repository.
Handle JavaScript-rendered content when extracting data from URLs, allowing extraction from modern web applications and dynamic websites.
Extract Open Graph metadata (Facebook/Meta tags) and other social media metadata from web pages as part of the metadata extraction capabilities.
Haunt MCP Server
Web extraction for AI agents. Give Claude, Cursor, Windsurf, or any MCP client a clean tool that turns any permitted public web page into structured JSON or Markdown from a plain-language prompt, and returns an honest machine-readable failure instead of fabricated data when a page is blocked.
Website · Docs · Get a free key · Python SDK
Built for agent workflows that need product data, competitor prices, article text, page metadata, small site-wide datasets, lead lists, or research snippets, without brittle CSS selectors. Try it with no API key using the try_demo_extract tool. Free tier: 1,000 credits a month, no card.
Quick Start
1. Add Haunt to your MCP client
This is the block to copy.
{
"mcpServers": {
"haunt": {
"command": "npx",
"args": ["-y", "@hauntapi/mcp-server"],
"env": {
"HAUNT_API_KEY": "your-api-key"
}
}
}
}Get a free API key, no card needed: https://hauntapi.com/?utm_source=github&utm_medium=readme&utm_campaign=mcp_server#signup
Prefer a CLI? npx -y --package @hauntapi/cli@latest haunt-cli init prints the
same block for Claude, Cursor, Windsurf and other MCP clients. It prints config,
it does not edit your files, and it is not itself the server.
2. Prove it is wired in, no key needed
Call try_demo_extract first. It returns a fixed sample extraction JSON and trace
plus docs, signup, pricing and free-tier links, without using credits.
Use Haunt's try_demo_extract tool and show me the signup and docs links.3. Ask for real data
Use Haunt to extract the top five story titles from https://news.ycombinator.com/For Markdown output:
Use Haunt extract_markdown to turn https://fastapi.tiangolo.com/tutorial/ into clean Markdown.Reddit, with no Reddit app and no OAuth:
Use Haunt read_reddit to get the top 10 posts from r/webscraping.Map or crawl a small site:
Use Haunt map_site on https://fastapi.tiangolo.com/ and return the first 100 URLs under /tutorial/.Use Haunt crawl_site on https://fastapi.tiangolo.com/tutorial/ for up to 10 pages. Extract each page title and main summary.Related MCP server: Crawl4AI MCP Server
Capability boundaries
Haunt renders pages in a real browser and reads many Cloudflare-protected and bot-walled pages. It does not go past login walls, paywalls, or CAPTCHA human-verification pages, and it does not promise universal extraction. Those return a typed failure signal (login_required, captcha_required, not_found, upstream_fetch_failed) instead of fabricated data, and a failed read is not charged.
Tools
try_demo_extract
No-key activation check. Returns a fixed sample extraction JSON/trace, Haunt's demo endpoint, docs, signup, pricing, MCP info route, and free-tier details. Use this first when a user has installed the MCP server but has not added HAUNT_API_KEY yet.
extract / extract_url
General-purpose extraction from permitted public web pages. extract and extract_url are aliases so hosted MCP docs and local stdio package users can follow the same wording.
Use it for:
Product names, prices, stock status, reviews
Competitor pricing pages
Directories and lead lists
Job boards
Research pages
Supported permitted public pages where you want clean JSON instead of HTML
It accepts optional response_format values: json (default), markdown / md, and raw_html / html.
extract_markdown
Return clean Markdown from a permitted public page. Use this when the agent or workflow wants readable page text for RAG, notes, docs ingestion, or saving as a .md file instead of structured fields.
extract_article
Extract article fields from news, blog, and editorial pages.
Returns title, body text, author, and publish date when available.
extract_metadata
Extract page metadata including title, description, Open Graph tags, Twitter Card tags, canonical URL, and related metadata.
map_site
Discover up to 500 public same-site URLs from robots.txt, sitemaps, and bounded link traversal. Mapping costs no credits and is available on paid plans.
crawl_site
Discover and apply one prompt and optional JSON Schema across up to 20 public same-site pages. Complete pages use normal extraction credits; partial and failed pages cost nothing. Discovery respects robots rules and fetched crawl content is not stored.
read_reddit
Read Reddit posts or a post's comment thread as structured JSON. No Reddit app, no OAuth, no developer account. Accepts a subreddit URL, a post URL, or shorthand like r/webdev. Set comments to true to read a thread.
Costs 1 credit, and a blocked read costs nothing.
company_profile
Turn a company website URL into a structured profile: what the company does, its product, and the contact and social details published on the site. Read live from the site rather than a stale third-party database.
Costs no credits.
github_repo
Return normalised metadata for a public GitHub repository: description, stars, forks, language, licence, topics, and last push.
Costs no credits.
get_usage
Check current plan, monthly credit limit, used credits, reserved credits, and remaining credits. Use this after a live extraction to see what was charged.
Why Haunt
Reddit posts and comments with no Reddit app, OAuth, or developer account
Natural-language prompts instead of fragile CSS selectors
Robots-aware site mapping and bounded multi-page extraction
Supported fetch paths for JavaScript-heavy pages
Challenge-aware extraction with machine-readable verification signals (
error_code,captcha_provider,requires_human_verification)Clean JSON output for agents, databases, and workflows
Clean Markdown output when the job is page text for agents, RAG, notes, or
.mdfilesFree tier for testing
Pricing
Plan | Credits | Price |
Free | 1,000/mo | £0 |
Starter | 10,000/mo | £19/mo |
Pro | 30,000/mo | £49/mo |
Scale | 80,000/mo | £99/mo |
Credits are not one-to-one requests. Simple public/non-LLM output usually uses 1 credit, normal structured extraction 2, browser-rendered or authenticated extraction 4, and heavy/screenshot extraction 8. Failed, blocked, login/CAPTCHA, provider, and server failures do not burn credits.
Upgrade: https://hauntapi.com/#pricing
Links
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that fetches web pages and extracts clean, AI-friendly Markdown content using Mozilla Readability. It provides secure web access for LLMs with built-in SSRF protection and automated content cleaning for improved context retrieval and summarization.Last updated1259MIT
- Flicense-qualityDmaintenanceA locally-hosted MCP server that provides AI assistants with advanced web crawling capabilities, including structured data extraction, deep site crawling, and page screenshots. It enables users to convert single or multiple URLs into clean Markdown content for processing by LLMs without requiring external API keys for basic features.Last updated
- Alicense-qualityDmaintenanceAn MCP server for intelligent web content extraction from JavaScript-heavy sites using single-file and trafilatura. It enables AI agents to fetch, render, and paginate through clean article content and metadata.Last updated16MIT
- AlicenseAqualityCmaintenanceAn MCP server that enables AI assistants to fetch web content in multiple formats (HTML, JSON, text, Markdown) with intelligent content extraction, chunk management, and browser automation support.Last updated58115MIT
Related MCP Connectors
Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.
Firecrawl MCP — wraps the Firecrawl API (firecrawl.dev) for web
Jina AI Reader/Search MCP — turn any URL into clean LLM-ready markdown, plus web search.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Darko893/haunt-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server