About barchin
barchin is a remote MCP server for agents that need to retrieve live web content, particularly from Iranian sites. It combines Iranian proxy access with JavaScript rendering, anti-bot handling, screenshots, and site-specific actors.
Key features
- 01Scrape pages with selectable proxy modes
- 02Render JavaScript and return Markdown
- 03Capture screenshots or PDFs
- 04Run site-specific actors
- 05Retrieve results from long-running jobs
- 06Check remaining credits
Use cases
- 01Retrieve content from Iranian websites
- 02Collect structured data using a site-specific actor
- 03Capture a page as an image or PDF
- 04Poll a scrape or actor job that is still processing
MCP support
Provides remote Streamable HTTP access at https://barchin.net/mcp, exposing scraping, screenshot, actor, result retrieval, and balance tools. Tool discovery is public; tool calls require a bearer API key.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://barchin.net/mcpclaude mcp add --transport http net-barchin https://barchin.net/mcp{"mcpServers":{"net-barchin":{"type":"http","url":"https://barchin.net/mcp"}}}Open in Cursor{"servers":{"net-barchin":{"type":"http","url":"https://barchin.net/mcp"}}}Open in VS Code{"mcpServers":{"net-barchin":{"type":"http","url":"https://barchin.net/mcp"}}}{"mcpServers":{"net-barchin":{"serverUrl":"https://barchin.net/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
https://barchin.net/mcpAuth requiredTools
17| Parameter | Type | Required | Description |
|---|---|---|---|
| url | string | Yes | The absolute http(s) URL to fetch. |
| proxy | enum | No | Proxy pool. auto (default) escalates from the cheapest pool only as needed and charges only for the tier that worked. datacenter=1 credit, residential=15, unblocker=25 (each +5 with render_js).auto | datacenter | residential | unblocker |
| format | enum | No | Output format. markdown/text are derived from the fetched HTML at read time, at no extra cost.markdown | text | html |
| country | string | No | Two-letter ISO country code for the exit IP, e.g. 'ir'. Omit for worldwide. |
| wait_for | string | No | CSS selector to wait for after the page loads, before reading the content. Only valid with render_js=true. |
| max_chars | integer | No | Truncate markdown/text output to this many characters. |
| render_js | boolean | No | Render the page in a real browser (JavaScript/SPA content). Costs +5 credits; turn off for plain HTML pages to save credits. |
Details
From the project READMEBarchin MCP — web access for AI agents on the Iranian web
Barchin gives AI agents a single MCP tool belt for reading the live web, built around an Iranian residential and datacenter proxy pool — IPs inside Iran that Iranian sites don't meet with the CAPTCHAs and blocks they throw at foreign ones — plus JavaScript rendering, anti-bot handling, and clean Markdown output, including Iranian sites that foreign scraping services cannot reach at all.
Why Barchin for Iranian sites
- An Iranian IP pool. No foreign scraping API offers IPs inside Iran. Iranian sites are highly sensitive to foreign IPs — requests through non-Iranian proxies often trigger CAPTCHAs or get blocked outright, forcing retries that burn solver costs and credits. Iranian IPs mean fewer blocks, fewer retries, and a lower real cost per successful page.
- Pay in Toman. No USD card, no currency-exchange intermediary and its fees, no sanctions friction.
- Priced at or below foreign alternatives. Per-request pricing is equal to or lower than foreign scraping APIs — even before counting the extra fees Iranian users pay to make a dollar payment through an intermediary.
Endpoint
https://barchin.net/mcp
MCP Streamable HTTP transport. Remote only — nothing to install.
Try it — anonymous discovery works with no key:
curl -s -X POST https://barchin.net/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
Auth
tools/listneeds no key — you can discover the tool belt anonymously.- Every tool call needs an
Authorization: Bearer bk_live_...header. - Get a key at https://barchin.net/dashboard/api-keys.
- Without a key, tool calls return an error — nothing runs, no credits are spent.
Tools
| Tool | Description |
|---|---|
scrape_url(url, render_js=true, proxy=auto|datacenter|residential|unblocker, country?, format=markdown|text|html, max_chars=40000, wait_for?) | Fetches a URL and returns {request_id, status, final_url, http_status, content, format, truncated, credits_used, credits_remaining}. Waits up to 85 s, then returns status: "processing" if the page is still not ready. |
get_scrape(request_id, format, max_chars) | Polls/retrieves the result of a previously started scrape. |
get_screenshot(url, full_page=false, format=png|pdf) | Captures a screenshot or PDF of a page. Long renders return status: "processing" with a run_id instead. |
list_actors() | Lists all 82 active actors (site-specific scrapers) and each one's input schema. |
run_actor(slug, input) | Runs any active actor by slug — the generic way to call all 82 actors, not just the curated ones below. |
get_actor_run(run_id) | Polls/retrieves the result of a long actor run or screenshot that came back status: "processing" with a run_id. |
actor_<slug>(...) | Direct tools for a curated set of popular Iranian-web actors, e.g. actor_torob-product-sellers. Every other actor is reached via list_actors + run_actor. |
get_balance() | Returns remaining credits. |
Connect
Claude Code
claude mcp add --transport http barchin https://barchin.net/mcp --header "Authorization: Bearer bk_live_XXXX"
Cursor
.cursor/mcp.json:
{"mcpServers":{"barchin":{"url":"https://barchin.net/mcp","headers":{"Authorization":"Bearer bk_live_XXXX"}}}}
OpenAI Responses API (Python)
tools=[{"type":"mcp","server_label":"barchin","server_url":"https://barchin.net/mcp","headers":{"Authorization":"Bearer bk_live_XXXX"},"require_approval":"never"}]
Claude Desktop
Claude Desktop does not speak Streamable HTTP natively yet — bridge it with mcp-remote:
npx mcp-remote https://barchin.net/mcp --header "Authorization: Bearer bk_live_XXXX"
Credits
| Proxy type | Credits |
|---|---|
| Datacenter | 1 |
| Residential | 15 |
| Unblocker | 25 |
| + JS rendering | +5 |
| Actors | priced per actor |
Markdown and text output are free (no extra cost over the proxy/rendering cost above). Failed requests are refunded.
Links
- https://barchin.net/ai-agents
- https://barchin.net/en/ai-agents
- https://barchin.net/docs
- https://barchin.net/openapi.json
- https://barchin.net/llms.txt
- https://barchin.net/pricing
License
MIT
برچین برای ایجنتهای هوش مصنوعی
برچین یک مجموعه ابزار MCP یکپارچه برای خواندن وب زنده در اختیار ایجنتهای هوش مصنوعی قرار میدهد، بر پایهی استخر پراکسی رزیدنشیال و دیتاسنتر ایرانی — IPهایی داخل ایران که سایتهای ایرانی آنها را با کپچا یا مسدودسازی مثل IPهای خارجی رد نمیکنند — بهعلاوهی رندر جاوااسکریپت، مقابله با anti-bot و خروجی Markdown تمیز؛ حتی برای سایتهای ایرانی که سرویسهای اسکرپینگ خارجی اصلاً به آنها دسترسی ندارند.
چرا برچین برای سایتهای ایرانی
- استخر IP ایرانی. هیچ API اسکرپینگ خارجیای IP داخل ایران ندارد. سایتهای ایرانی نسبت به IP خارجی بسیار حساساند — درخواست از پروکسی غیرایرانی غالباً با کپچا یا مسدودسازی مواجه میشود، یعنی تلاش دوباره، هزینهی حل کپچا و کردیت هدررفته. IP ایرانی یعنی مسدودسازی کمتر، تلاش دوباره کمتر و هزینهی واقعی هر صفحهی موفق پایینتر.
- پرداخت به تومان. بدون کارت دلاری، بدون واسطهی تبادل ارز و کارمزدش، بدون دردسر تحریم.
- قیمتی برابر یا پایینتر از جایگزینهای خارجی. هزینهی هر درخواست با APIهای اسکرپینگ خارجی برابر یا کمتر است، آن هم پیش از کارمزدهایی که کاربر ایرانی برای پرداخت دلاری از طریق واسطه میپردازد.
آدرس سرویس (Endpoint)
https://barchin.net/mcp
ترنسپورت MCP Streamable HTTP. فقط بهصورت ریموت — نیازی به نصب چیزی نیست.
امتحانش کنید — کشف ابزارها بدون کلید هم کار میکند: curl -s -X POST https://barchin.net/mcp -H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
احراز هویت
- فراخوانی
tools/listنیاز به کلید ندارد — میتوانید بدون احراز هویت لیست ابزارها را ببینید. - هر فراخوانی ابزار (tool call) نیاز به هدر
Authorization: Bearer bk_live_...دارد. - کلید را از این آدرس بگیرید: https://barchin.net/dashboard/api-keys.
- بدون کلید، فراخوانی ابزار خطا برمیگرداند — هیچ اجرایی انجام نمیشود و هیچ اعتباری مصرف نمیشود.
ابزارها
| ابزار | توضیح |
|---|---|
scrape_url(url, render_js=true, proxy=auto|datacenter|residential|unblocker, country?, format=markdown|text|html, max_chars=40000, wait_for?) | یک URL را واکشی میکند و خروجی {request_id, status, final_url, http_status, content, format, truncated, credits_used, credits_remaining} برمیگرداند. حداکثر ۸۵ ثانیه منتظر میماند و در صورت آماده نبودن صفحه، status: "processing" برمیگرداند. |
get_scrape(request_id, format, max_chars) | نتیجه یک درخواست اسکرپ قبلی را واکشی یا استعلام میکند. |
get_screenshot(url, full_page=false, format=png|pdf) | از صفحه، اسکرینشات یا PDF میگیرد. رندر طولانی بهجای آن status: "processing" با یک run_id برمیگرداند. |
list_actors() | فهرست همهی ۸۲ اکتور فعال (اسکرپرهای مخصوص سایت) و شِمای ورودی هرکدام را برمیگرداند. |
run_actor(slug, input) | هر اکتور فعال را با slug اجرا میکند؛ راه عمومی برای صدا کردن همهی ۸۲ اکتور، نهفقط آنهایی که در جدول زیر ابزار مستقیم دارند. |
get_actor_run(run_id) | نتیجهی یک اجرای طولانی اکتور یا اسکرینشات را که با status: "processing" و یک run_id برگشته بود، واکشی یا استعلام میکند. |
actor_<slug>(...) | ابزارهای مستقیم برای مجموعهای منتخب از اکتورهای پرکاربرد وب ایران، مثلاً actor_torob-product-sellers. هر اکتور دیگری از طریق list_actors و run_actor در دسترس است. |
get_balance() | اعتبار باقیمانده را برمیگرداند. |
اتصال
Claude Code
claude mcp add --transport http barchin https://barchin.net/mcp --header "Authorization: Bearer bk_live_XXXX"
Cursor
فایل .cursor/mcp.json:
{"mcpServers":{"barchin":{"url":"https://barchin.net/mcp","headers":{"Authorization":"Bearer bk_live_XXXX"}}}}
OpenAI Responses API (پایتون)
tools=[{"type":"mcp","server_label":"barchin","server_url":"https://barchin.net/mcp","headers":{"Authorization":"Bearer bk_live_XXXX"},"require_approval":"never"}]
Claude Desktop
Claude Desktop هنوز بهصورت مستقیم از Streamable HTTP پشتیبانی نمیکند — با mcp-remote آن را پل بزنید:
npx mcp-remote https://barchin.net/mcp --header "Authorization: Bearer bk_live_XXXX"
اعتبارها (Credits)
| نوع پراکسی | اعتبار |
|---|---|
| دیتاسنتر | ۱ |
| رزیدنشیال | ۱۵ |
| آنبلاکر | ۲۵ |
| + رندر جاوااسکریپت | +۵ |
| اکتورها | قیمتگذاری به ازای هر اکتور |
خروجی Markdown و متنی رایگان است (بدون هزینه اضافه نسبت به هزینه پراکسی/رندر بالا). درخواستهای ناموفق اعتبار برگشتی دارند.
لینکها
- https://barchin.net/ai-agents
- https://barchin.net/en/ai-agents
- https://barchin.net/docs
- https://barchin.net/openapi.json
- https://barchin.net/llms.txt
- https://barchin.net/pricing
مجوز
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.