Marsa Atlas
OfficialConsumes the public Marsa WordPress API to fetch production data, with WordPress serving as the editorial system of record for the Atlas data.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Marsa Atlasfind services for education in Cairo and show sources"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Marsa Atlas MCP — أطلس مرسى

لقطة محلية بتاريخ 24 أكتوبر 2026 باستخدام بيانات العرض المرفقة؛ السجلات والأرقام توضيحية وليست دليل إتاحة للخدمات.
المعلومة، ومعها المصدر. خدمات وجهات ومراجع قانونية وبيانات الهجرة واللجوء في مصر، موثّقة بمصادرها وتاريخ التحقق، في متناول مساعدك الذكي.
Source-grounded migration services, organizations, legal references and data for Egypt — as an MCP server on Cloudflare Workers, plus the Atlas website and REST API.
https://atlas.marsaplatform.com/mcp21 tools · Arabic-first, English too · sources on every result · no API key · no personal data
بالعربية
ما هو أطلس مرسى MCP؟
أطلس مرسى منتج مستقل داخل مرسى يربط الخدمات والجهات والقانون والبيانات المتعلقة بالهجرة واللجوء في مصر بمصادرها وتاريخ التحقق. هذا المستودع يقدّمه كخادم MCP (بروتوكول سياق النماذج): أي مساعد ذكي — Claude أو Cursor أو VS Code أو وكيل خاص بك — يتصل به مرة واحدة، فتصبح إجاباته عن الخدمات والمراجع مبنية على سجلات حقيقية مع روابط مصادرها، لا على ذاكرة النموذج.
الخادم يعمل على Cloudflare Workers على نفس دومين الأطلس (atlas.marsaplatform.com/mcp)، بينما صفحات الموقع وواجهة REST تبقى كما هي.
المبادئ
المصدر وتاريخ آخر تحقق يرافقان كل سجل وكل نتيجة (
sources).مصر أولًا والعربية أولًا: يفهم أسماء المحافظات والمدن («6 أكتوبر» ← الجيزة، «الاسكندريه» ← الإسكندرية) والجنسيات بكل صيغها («سوداني/سودانية/سودانيين») والفئات («نساء»، «جميع الجنسيات»).
لا بيانات حالات شخصية. لا تُدخل أسماء أو تفاصيل حالات.
فحص الأهلية إرشادي دائمًا؛ الجهة المقدمة للخدمة هي صاحبة القرار.
السجلات التوضيحية (
recordStatus: "demo") معلّمة بوضوح ولا تُستخدم كدليل تشغيلي.WordPress في مرسى هو نظام التحرير المرجعي؛ الأطلس يقرأ فقط.
الأدوات (21 أداة)
الأداة | الوظيفة |
| بحث موحد في كل السجلات |
| خدمات حسب الحاجة والمحافظة والجنسية |
| فحص أهلية إرشادي غير ملزم |
| موجز بحثي بمصادر مرقمة |
| حجم التغطية وتاريخها |
| سجل كامل مع السجلات المرتبطة |
| تصفح بالنوع والمحافظة والحالة |
| الجهات حسب الاسم ونوع الخدمة والمحافظة |
| ملف جهة وكل خدماتها |
| مراجع قانونية حسب الموضوع |
| مجموعات البيانات والمؤشرات |
| المصادر والناشرون وحداثتهم |
| المحافظات الـ27 وتغطية كل منها |
| اسم مكان ← المحافظة |
| جنسية أو فئة ← رمز ISO3 أو الفئة |
| أنواع الخدمات ومفرداتها |
| مقارنة المحافظات وإظهار الفجوات |
| ورقة إحالة مرتبة بالمصادر |
| السجلات التي تحتاج إعادة تحقق |
| استشهاد APA وMarkdown وBibTeX |
| تصدير CSV/JSON/Markdown مع manifest |
المرجع الكامل: docs/tools.md.
الاتصال
Claude (موصل مخصص) / Claude Code:
claude mcp add --transport http marsa-atlas https://atlas.marsaplatform.com/mcpCursor: انسخ examples/cursor-mcp.json إلى
~/.cursor/mcp.json.Claude Desktop: examples/claude-desktop-config.json (عبر
mcp-remote) أو تشغيل محلي بـ stdio: examples/claude-desktop-local.json.
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"marsa-atlas": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://atlas.marsaplatform.com/mcp"]
}
}
}Cursor (~/.cursor/mcp.json):
{
"mcpServers": {
"marsa-atlas": { "url": "https://atlas.marsaplatform.com/mcp" }
}
}أمثلة أسئلة
«أحتاج دعم نفسي في القاهرة لسيدة سودانية، جهّز ورقة إحالة.»
«أي المحافظات ليس فيها مساعدة قانونية مسجلة؟»
«إيه المراجع القانونية عن الإقامة؟ واستشهد بيها بصيغة APA.»
«إيه السجلات اللي محتاجة إعادة تحقق؟»
محادثات كاملة: examples/conversations.md.
التشغيل المحلي والنشر
انظر قسم Run locally وDeploy to Cloudflare Workers بالإنجليزية أدناه — الأوامر نفسها.
Related MCP server: afya-mcp
English
What is it?
Marsa Atlas links migration and asylum services, organizations, Egyptian legal references and
data to their original sources and verification dates. This repository exposes it as an
MCP server so any AI assistant can answer from real, citable records — and runs the
Atlas website (/, /en) and REST API (/api/v1).
Architecture
Marsa WordPress (private, editorial system of record)
↓ marsa/v1 (private network)
Atlas web service on the origin (Bun) ── / /en /api/v1/*
↓ public REST: /api/v1/records, /records/{id}, /search, /services, /coverage
Cloudflare Worker (src/worker.ts) ── atlas.marsaplatform.com/mcp* (zone route)
↓
MCP clients: Claude, Cursor, VS Code, agentsOne application layer (
AtlasService) behind every interface: Worker MCP, stdio MCP, REST and the web pages.Stateless Streamable HTTP: a fresh
McpServerper request, JSON responses, no sessions.The zone route only matches
/mcp*; everything else still reaches the origin unchanged.Why Workers: see ADR 0003.
Tools
21 read-only tools; every result carries sources and accepts locale: "ar" | "en".
Tool | Purpose |
| Unified source-grounded search |
| Services by need, governorate, eligibility and nationality |
| Indicative eligibility with mandatory disclaimer |
| Research brief with citations and coverage notes |
| Dataset coverage and freshness |
| One record with related records |
| Browse records with filters and paging |
| Organizations by name, service type, governorate |
| Organization profile with all its services |
| Egyptian legal references by topic |
| Datasets and indicators |
| Sources and publishers behind the records |
| 27 governorates (AR/EN/ISO 3166-2) with coverage |
| Arabic/English place → governorate |
| Nationality or group → ISO3 / group key |
| Service-type taxonomy with AR/EN vocabulary |
| Governorate × service-type matrix with gaps |
| Ranked referral sheet with contacts and sources |
| Stale or undated records |
| APA / Markdown / BibTeX citation |
| CSV / JSON / Markdown export with manifest |
Resources: marsa://coverage, marsa://governorates, marsa://records/{id}.
Prompts: referral, research_brief, coverage_gaps. Full reference: docs/tools.md.
Connect
Hosted endpoint (no key):
https://atlas.marsaplatform.com/mcpClient | How |
Claude Code |
|
claude.ai / Claude Desktop | Add a custom connector with the URL, or use examples/claude-desktop-config.json ( |
Cursor | examples/cursor-mcp.json → |
Local stdio | |
Raw HTTP / SDKs |
Claude Desktop — claude_desktop_config.json:
{
"mcpServers": {
"marsa-atlas": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://atlas.marsaplatform.com/mcp"]
}
}
}Cursor — ~/.cursor/mcp.json:
{
"mcpServers": {
"marsa-atlas": { "url": "https://atlas.marsaplatform.com/mcp" }
}
}Try: "Find psychosocial support in Cairo for a Sudanese woman and build a referral sheet." · "Which governorates have no registered legal aid?"
Run locally
Requires Bun ≥ 1.2 (and Node.js ≥ 22 for wrangler dev).
bun install
bun run check # typecheck + tests + build
bun run dev # MCP over stdio (demo data)
ATLAS_DATA_MODE=api bun run dev # stdio, live data from the public Atlas API
bun run dev:worker # the Cloudflare Worker locally → http://localhost:8787/mcp
bun run dev:http # website + REST on http://localhost:3000 (MCP too with ATLAS_HTTP_MCP=1)Data modes (ATLAS_DATA_MODE): demo (bundled fixtures, default for the Bun service),
api (public Atlas REST, ATLAS_API_URL; default for the Worker), wordpress
(Marsa WordPress marsa/v1, ATLAS_WORDPRESS_URL; used by the origin service).
Deploy to Cloudflare Workers
export CLOUDFLARE_API_TOKEN=... # Workers Scripts:Edit (+ Zone Workers Routes:Edit for a route)
export CLOUDFLARE_ACCOUNT_ID=...
bun run deploy # wrangler deploy → https://marsa-atlas-mcp.<subdomain>.workers.dev/mcpTo mount it on a path of an existing proxied hostname (what production does), add a route
in wrangler.toml — only /mcp* goes to the Worker:
routes = [{ pattern = "atlas.example.org/mcp*", zone_name = "example.org" }]Point ATLAS_API_URL at your own Atlas web service if you self-host the data side.
wrangler.toml contains placeholders only — never commit account ids or tokens.
Website and REST API
GET /(Arabic),GET /en(English): server-rendered search with sources and verification dates.GET /health,/healthz,/readyzGET /api/v1/coverageGET /api/v1/search?q=تعليمGET /api/v1/services?need=تعليم&governorate=القاهرةGET /api/v1/records?type=service&limit=100&offset=0GET /api/v1/records/{id}
Docker / Coolify: build the Dockerfile, expose 3000, set ATLAS_DATA_MODE=wordpress and
ATLAS_WORDPRESS_URL. The live deployment uses a private Docker-network WordPress URL; do not
replace it with the main public domain. /mcp on this service returns 410 pointing to the
Worker unless ATLAS_HTTP_MCP=1.
Project layout
src/
worker.ts Cloudflare Worker entry (MCP over Streamable HTTP)
cli.ts Bun entry: stdio MCP, or --http for web + REST
application/atlas-service.ts all tool logic, sources on every result
interfaces/mcp.ts tools, resources, prompts
interfaces/http.ts website + REST (origin)
infrastructure/ demo, WordPress and REST-API repositories
shared/ Arabic folding, governorates, nationalities, service-type vocabulary
tests/ bun test — services, tools, worker, REST, Arabic resolution
examples/ client configs, HTTP examples, worked conversationsStatus
0.2.0 — see CHANGELOG.md. The bundled Zad fonts are under the SIL Open Font
License (public/fonts/OFL.txt). Code: MIT. Record text belongs to its sources.
مشاريع مرسى الشقيقة · Sibling Marsa projects
المشروع · Project | ما هو · What | الرابط · Link |
ERX · مرصد مصر البحثي | أرشيف بحثي وخادم MCP للشأن العام المصري (21 أداة، مفتاح مجاني للنسخة المستضافة) · Egypt Research Commons, source-grounded MCP (free key for hosted) | |
Malja MCP · ملجأ | بيانات إنسانية موثّقة: UNHCR والبنك الدولي وHDX وReliefWeb · trusted humanitarian open data | |
Marsa Spaces · مساحات مرسى | نشر صفحات ثابتة بروابط عامة، وخادم MCP لكل مساحة · static publishing with a per-space MCP server |
Part of Marsa · all projects: https://marsaplatform.com/products.
Repository resources · موارد المستودع
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted MCP server for finding authoritative primary data sources and official portals.
The only MCP server for Arabic academic research — search, read & cite Arabic + English papers.
MCP server for FormBro Canadian immigration application automation.
An MCP server that through www.gdacs.org provides access to web‐based disaster information systems.
Related MCP Servers
- AlicenseAqualityAmaintenanceMCP server for African diaspora remittance optimization, enabling comparison of remittance corridors and estimation of savings.3177 PyPIMIT
- AlicenseBqualityAmaintenanceMCP server for Kenya health system — NHIF/SHA coverage, facility finder, community health workers, maternal health guidance, essential medicines.6116 PyPIMIT
- FlicenseBqualityCmaintenanceMCP server for headless care coordination, providing tools for case-aware provider search powered by ai-carematch.4-
- AlicenseNot gradedqualityAmaintenanceEnables searching, retrieving, and analyzing documents from over 30 Egyptian official, legal, academic, and news sources with MCP tools for timeline building, source comparison, and claim tracing.111 npmMIT