MCP

Ajel MCP Server

اجعل «عاجل» مصدرًا رسميًا مباشرًا لوكلاء الذكاء الاصطناعي — بدل اعتمادها على بحث ويب عشوائي. الخادم مجاني (Streamable HTTP، بلا جلسات) ويعمل بمفتاح Wire نفسه — أنشئه من لوحة حسابك وأرسله في ترويسة x-api-key. كل نتيجة تحمل الرابط الأصلي ونسبة المصدر.

العنوان والمصادقة

عنوان واحد ومفتاح واحد. المفتاح يُرسل في الترويسة — لا في الرابط أبدًا.

URLhttps://wire.ajel.sa/mcp
HEADERx-api-key: ajw_...

https://ajel.sa/api/wire/mcp هو العنوان الكامل المكافئ — كلاهما يصل إلى الخادم نفسه.

الربط بتسجيل الدخول (OAuth 2.1 + PKCE) يعمل من claude.ai وChatGPT: أضف العنوان موصّلًا مخصّصًا، اضغط Connect، وسجّل الدخول بحساب Wire. الرمز باسم حسابك ويُحتسب على رصيده؛ لإلغاء الربط غيّر كلمة المرور. عملاء سطح المكتب تبقى على المفتاح في الترويسة.

الإضافة للعملاء

في كل الأمثلة، ضع مفتاحك مكان ajw_... (أو مرّره من متغيّر بيئة). طلب بلا مفتاح يُردّ بـ401 key_required. صيغة Claude Desktop تصلح لأي عميل يدعم إعداد JSON.

Claude Codeterminal
terminal
claude mcp add --transport http ajel-wire https://wire.ajel.sa/mcp \
  --header "x-api-key: $AJEL_WIRE_KEY"
Claude Desktopclaude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "ajel-wire": {
      "type": "http",
      "url": "https://wire.ajel.sa/mcp",
      "headers": { "x-api-key": "ajw_..." }
    }
  }
}
Cursor.cursor/mcp.json
.cursor/mcp.json
{
  "mcpServers": {
    "ajel-wire": {
      "url": "https://wire.ajel.sa/mcp",
      "headers": { "x-api-key": "ajw_..." }
    }
  }
}
VS Code.vscode/mcp.json
.vscode/mcp.json
{
  "servers": {
    "ajel-wire": {
      "type": "http",
      "url": "https://wire.ajel.sa/mcp",
      "headers": { "x-api-key": "ajw_..." }
    }
  }
}
Codex~/.codex/config.toml
~/.codex/config.toml
[mcp_servers.ajel-wire]
url = "https://wire.ajel.sa/mcp"
http_headers = { "x-api-key" = "ajw_..." }
Windsurf~/.codeium/windsurf/mcp_config.json
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ajel-wire": {
      "serverUrl": "https://wire.ajel.sa/mcp",
      "headers": { "x-api-key": "ajw_..." }
    }
  }
}

الأدوات

سبع أدوات يختار منها المساعد بنفسه بحسب السؤال.

الأداةماذا تعيد
get_latest_newsآخر الأخبار بلغة (وقسم اختياري)
get_breaking_newsالعاجل — آخر 72 ساعة
search_newsبحث في العناوين والملخّصات
get_articleالنص الكامل لخبر بمعرّفه
get_article_translationsكل النسخ اللغوية لخبر
list_languagesاللغات العشر ومواقعها
list_sectionsأقسام نسخة لغوية

مثال خام (JSON-RPC)

الاستدعاء نفسه الذي يرسله أي عميل — مفيد للفحص من الطرفية.

tools/call
curl -X POST https://wire.ajel.sa/mcp \
  -H "content-type: application/json" \
  -H "x-api-key: $AJEL_WIRE_KEY" \
  -d '{
    "jsonrpc": "2.0", "id": 1, "method": "tools/call",
    "params": {
      "name": "get_latest_news",
      "arguments": { "language": "en", "limit": 5 }
    }
  }'

الأمان

  • نص الخبر يُعاد بيانات لا تعليمات — بعد تجريد HTML بالكامل، مع تنبيه صريح للوكيل.
  • لا وصول لغير المنشور إطلاقًا (تفرضه طبقة المحتوى الموحّدة).
  • المفتاح إلزامي في ترويسة x-api-key — لا وصول مجهول. الحساب المجاني (Developer) يعطي 3,000 طلب/ساعة، والمستويات الأعلى (Publisher 10,000 / Partner 50,000) تُطلب من لوحة حسابك.
  • لا نخزّن محتوى محادثاتك — الاستدعاءات تُعدّ فقط.
Developer 3,000/hPublisher 10,000/hPartner 50,000/hرفع الحدّ من لوحتك.