/ الدليل / الملعب / MetaMCP
● مجتمع metatool-ai ⚡ فوري

MetaMCP

بواسطة metatool-ai · metatool-ai/metamcp

Stop juggling 15 MCP entries in every client config — MetaMCP is a self-hosted gateway that aggregates servers behind one namespaced endpoint.

MetaMCP is a Dockerized MCP aggregator, orchestrator, and gateway. You register N upstream MCP servers in its admin UI; it exposes them as a single SSE/Streamable-HTTP endpoint that your clients (Claude Desktop, Cursor, etc.) connect to. Tool names are namespaced so you can safely run two filesystem MCPs pointed at different roots. OAuth 2.1, per-endpoint API keys, per-user rate limits, and a built-in inspector for debugging are all included. Ideal for teams and anyone with 5+ MCPs installed.

لماذا تستخدمه

الميزات الأساسية

عرض مباشر

كيف يبدو في الممارسة

metamcp.replay ▶ جاهز
0/0

التثبيت

اختر العميل

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "metamcp": {
      "command": "uvx",
      "args": [
        "mcp-proxy",
        "http://localhost:12008/metamcp/default/sse"
      ],
      "env": {
        "API_ACCESS_TOKEN": "mm_..."
      }
    }
  }
}

افتح Claude Desktop → Settings → Developer → Edit Config. أعد التشغيل بعد الحفظ.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "metamcp": {
      "command": "uvx",
      "args": [
        "mcp-proxy",
        "http://localhost:12008/metamcp/default/sse"
      ],
      "env": {
        "API_ACCESS_TOKEN": "mm_..."
      }
    }
  }
}

يستخدم Cursor نفس مخطط mcpServers مثل Claude Desktop. إعدادات المشروع أولى من الإعدادات العامة.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "metamcp": {
      "command": "uvx",
      "args": [
        "mcp-proxy",
        "http://localhost:12008/metamcp/default/sse"
      ],
      "env": {
        "API_ACCESS_TOKEN": "mm_..."
      }
    }
  }
}

انقر على أيقونة MCP Servers في شريط Cline الجانبي، ثم "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "metamcp": {
      "command": "uvx",
      "args": [
        "mcp-proxy",
        "http://localhost:12008/metamcp/default/sse"
      ],
      "env": {
        "API_ACCESS_TOKEN": "mm_..."
      }
    }
  }
}

نفس الصيغة مثل Claude Desktop. أعد تشغيل Windsurf لتطبيق التغييرات.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "metamcp",
      "command": "uvx",
      "args": [
        "mcp-proxy",
        "http://localhost:12008/metamcp/default/sse"
      ]
    }
  ]
}

يستخدم Continue مصفوفة من كائنات الخادم بدلاً من خريطة.

~/.config/zed/settings.json
{
  "context_servers": {
    "metamcp": {
      "command": {
        "path": "uvx",
        "args": [
          "mcp-proxy",
          "http://localhost:12008/metamcp/default/sse"
        ]
      }
    }
  }
}

أضف إلى context_servers. يعيد Zed التحميل تلقائيًا عند الحفظ.

claude mcp add metamcp -- uvx mcp-proxy http://localhost:12008/metamcp/default/sse

أمر من سطر واحد. تحقق باستخدام claude mcp list. احذف باستخدام claude mcp remove.

حالات الاستخدام

استخدامات عملية: MetaMCP

Give a team one MCP URL instead of 15 per-laptop configs

👤 Platform teams rolling out Claude Desktop / Cursor org-wide ⏱ ~45 min intermediate

متى تستخدمه: Your team wants filesystem, github, postgres, sentry, slack, notion all available — but you don't want every engineer maintaining 6 tokens in JSON files that leak.

المتطلبات الأساسية
  • A server that runs Docker — Any Linux box / VM with Docker Compose; ~1 CPU / 1GB RAM is plenty
  • Upstream credentials stored server-side — Put GITHUB_TOKEN, DB_URL, etc. in MetaMCP's .env — they never reach laptops
الخطوات
  1. Bring up MetaMCP
    git clone github.com/metatool-ai/metamcp && cp example.env .env && docker compose up -d✓ تم النسخ
    → Admin UI reachable at http://host:12008; default login works
  2. Register upstream servers
    In the MetaMCP admin UI, add filesystem, github, postgres, notion as namespaces 'fs', 'gh', 'db', 'notion'.✓ تم النسخ
    → Each appears in the endpoint's tool list with prefix
  3. Give the team one config
    Publish the Claude Desktop config snippet — one mcp-proxy entry pointing at /metamcp/team-default/sse — to internal docs.✓ تم النسخ
    → Every engineer paste-and-goes

النتيجة: New hires onboard in 90 seconds; token rotation happens once, server-side.

المزالق
  • Claude Desktop can't do SSE natively — Use mcp-proxy (uvx mcp-proxy <sse-url>) on the client side — MetaMCP docs include this snippet
  • Namespaces collide or are ugly — Rename tools in MetaMCP's override UI; e.g. 'fs.read_text_file' → 'repo.read'
اجمعها مع: filesystem · github · postgres

Audit which MCP tools your agents actually call — and throttle the noisy ones

👤 Security / platform engineers ⏱ ~20 min intermediate

متى تستخدمه: You need to know what tools are invoked, how often, and which user. Per-server rate limits are not enough — you want aggregate visibility.

الخطوات
  1. Turn on request logs
    In MetaMCP settings, enable per-request logging and endpoint-level rate limits (e.g. 10 req/s per user).✓ تم النسخ
    → Logs appear in the admin UI
  2. Replay a suspicious trace
    Pull the last hour of tool calls for user 'marketing-bot'. Anything hitting the github write tools?✓ تم النسخ
    → Tabular audit; write calls highlighted
  3. Throttle abusive tools
    Set 'notion.create_page' to 1 req/min for the 'marketing-bot' endpoint. Apply now.✓ تم النسخ
    → Rate limit visible in config; takes effect immediately

النتيجة: Governance surface without writing custom middleware.

Route dev/staging/prod MCP traffic through one gateway

👤 Teams with environment-specific credentials ⏱ ~30 min advanced

متى تستخدمه: You want the same Claude Desktop config to hit staging-postgres at work and prod-postgres only with an explicit flag — no editing JSON.

الخطوات
  1. Create endpoints
    Create 3 MetaMCP endpoints: /dev, /staging, /prod. Wire each to the right upstream credentials.✓ تم النسخ
    → Three endpoint URLs
  2. Per-endpoint auth
    Give prod its own API key and enable OIDC SSO for that endpoint only.✓ تم النسخ
    → dev/staging open with shared key, prod behind SSO
  3. Test via inspector
    Use MetaMCP's inspector UI: call a read-only query through /prod as yourself; confirm auth works.✓ تم النسخ
    → Successful tool call in the inspector

النتيجة: Accident-proof environment switching.

اجمعها مع: postgres

التركيبات

اجمعها مع خوادم MCP أخرى لتحقيق نتائج x10

metamcp + filesystem + github + postgres

Hide the per-tool sprawl behind one gateway URL

Configure MetaMCP with fs, gh, db namespaces; point Claude Desktop at the gateway; stop pasting tokens into JSON.✓ تم النسخ
metamcp + claude-desktop

Claude Desktop speaks stdio, MetaMCP speaks SSE — use mcp-proxy as the bridge

In claude_desktop_config.json, wrap MetaMCP's SSE URL with uvx mcp-proxy.✓ تم النسخ
metamcp + sentry

Send MetaMCP request logs/errors into Sentry for alerting

Wire MetaMCP's OpenTelemetry/logs into Sentry; alert on 5xx rate > 1%.✓ تم النسخ

الأدوات

ما يوفره هذا الـ MCP

الأداةالمدخلاتمتى تستدعيهاالتكلفة
(dynamic) Depends on which MCP servers you've registered — tools are forwarded with a namespace prefix Any time — it's a transparent proxy with auth + rate-limit added free (local gateway + upstream's own cost)

التكلفة والحدود

تكلفة التشغيل

حصة API
None — self-hosted
الرموز لكل استدعاء
Same as upstream tools; MetaMCP adds ~1–3ms of proxy latency
التكلفة المالية
Free (MIT); you pay for the VM
نصيحة
One small VPS ($5/mo) runs MetaMCP + a couple upstream servers; no need for Kubernetes until traffic > 100 req/s

الأمان

الصلاحيات والأسرار ونطاق الأثر

تخزين بيانات الاعتماد: MetaMCP .env holds all upstream credentials; clients never see them
نقل البيانات الخارجي: Only to the upstream MCPs you've registered. Nothing phones home.
لا تمنح أبدًا: Expose the admin UI to the public internet without SSO or auth proxy

استكشاف الأخطاء

الأخطاء الشائعة وحلولها

Claude Desktop shows 'server failed to start'

Claude Desktop uses stdio, not SSE. Configure with uvx mcp-proxy http://host:12008/metamcp/<endpoint>/sse, not a direct URL.

تحقق: Try the same URL in MetaMCP's inspector first — if it works there, the issue is stdio-to-SSE bridging
Tools missing or not namespaced

Check the endpoint config — namespaces are per-endpoint, not global. Re-sync tool discovery after adding an upstream.

تحقق: In admin UI, click 'Re-sync tools' on the endpoint
401 at the gateway

API_ACCESS_TOKEN env must match the endpoint's API key; OAuth endpoints need a completed consent flow first.

تحقق: curl -H 'Authorization: Bearer $TOKEN' http://host:12008/metamcp/<ep>/mcp
Upstream MCP server keeps restarting

Check the upstream container's logs via docker logs; MetaMCP will mark it unhealthy and surface errors to clients.

تحقق: docker compose logs <upstream>

البدائل

MetaMCP مقابل البدائل

البديلمتى تستخدمهاالمقايضة
IBM mcp-context-forgeEnterprise deployment with stronger IAM/governance needsHeavier stack; more config surface
mcp-use/mcp-useYou want a framework to build AI agents + servers, not just a proxyMore code; more surface; more power
Direct per-client configsYou run ≤3 MCPs and don't share configs with anyoneNo governance, no auth, tokens on every laptop

المزيد

الموارد

📖 اقرأ ملف README الرسمي على GitHub

🐙 تصفح القضايا المفتوحة

🔍 تصفح أكثر من 400 خادم MCP و Skills