إعداد الوكيل
اربط AstroWay API بوكلاء الذكاء الاصطناعي عبر MCP (Model Context Protocol). الكتالوج متاح بطريقتين، كلتاهما بمفاتيحك aw_test_* / aw_live_*:
- Hosted (HTTP):
https://mcp.astroway.info/mcp، بلا تثبيت، والمصادقة عبر رمز Bearer. - Stdio (npx):
npx @astroway/mcp، عملية فرعية محلية، والمصادقة عبر متغير بيئة، ويعمل دون اتصال.
احصل على مفتاح مجاني من لوحة التحكم، ثم اختر عميلك.
نطاق واحد بدل الكتالوج كله
Section titled “نطاق واحد بدل الكتالوج كله”783 أداة في استجابة واحدة تعني 2.9 ميغابايت يجب على الوكيل قراءتها قبل أن يختار واحدة. معظم العملاء يستسلمون قبل ذلك بكثير.
https://mcp.astroway.info/mcp/<النطاق> يقدّم موضوعًا واحدًا بدل الكل. الإعداد نفسه، يتغير عنوان URL فقط.
| النطاق | URL | الأدوات | حجم tools/list |
|---|---|---|---|
| نواة التنجيم | /mcp/core | 104 | 389 كيلوبايت |
| الفيدي | /mcp/vedic | 192 | 970 كيلوبايت |
| الميتافيزيقا الصينية | /mcp/chinese | 60 | 202 كيلوبايت |
| الهلنستي والتقليدي | /mcp/hellenistic | 59 | 240 كيلوبايت |
| التاروت | /mcp/tarot | 79 | 209 كيلوبايت |
| علم الأعداد | /mcp/numerology | 64 | 158 كيلوبايت |
| Human Design | /mcp/human-design | 27 | 125 كيلوبايت |
| التنبؤ | /mcp/forecast | 43 | 209 كيلوبايت |
| العلاقات | /mcp/relationships | 42 | 247 كيلوبايت |
| النفسي | /mcp/psychological | 28 | 107 كيلوبايت |
| العرافة والباطنيات | /mcp/divination | 79 | 185 كيلوبايت |
| القراءات التطبيقية | /mcp/applied | 45 | 148 كيلوبايت |
| التقارير | /mcp/reports | 42 | 209 كيلوبايت |
| المنصة | /mcp/platform | 42 | 119 كيلوبايت |
قيس على بيئة الإنتاج في 2026-09-21. لا يزال /mcp يقدّم الكتالوج كاملًا، فلم ينكسر شيء مما أُعدّ سابقًا. التحقق من الرصيد وتقدير تكلفة الاستدعاء موجودان في كل نطاق، لأن الوكيل المقتصر على التنجيم الفيدي يحتاج مع ذلك إلى معرفة تكلفة الاستدعاء.
GET /domains يعيد القائمة نفسها بصيغة JSON، بلا مفتاح. النطاق غير المعروف يعطي 404 مع قائمة النطاقات الحقيقية، لا إعادة صامتة لجميع الـ 783.
التوثيق بلا مفتاح: /mcp/docs
Section titled “التوثيق بلا مفتاح: /mcp/docs”أول سؤال للوكيل ليس أبدًا “احسب خريطة”. بل هو “ماذا يستطيع هذا الـ API، وكيف يبدو الاستدعاء، وكم سيكلفني”. يمكن الإجابة عن الثلاثة بلا مفتاح: https://mcp.astroway.info/mcp/docs لا يستهلك أي رصيد، ولذلك لا يطلب مصادقة.
| الأداة | ما تفعله |
|---|---|
find_endpoint | تبحث في جميع العمليات الـ 770. لكل منها تعيد الطريقة، وعنوان URL، والسعر بالأرصدة، والخطة، وحقول الجسم الإلزامية، ورابطًا إلى المرجع |
search_docs | تبحث في 281 صفحة من الأدلة، بالأوكرانية والإنجليزية، مع قائمة أقسام كل منها |
read_doc | تعيد صفحة واحدة بصيغة markdown |
list_docs | الفهرس كاملًا، مجمّعًا بحسب الأقسام |
لـ 700 من أصل 770 عملية سعر محدد، و37 أخرى معلَّمة على أنها تستجيب بلا مفتاح. أي أنه يمكن حساب تكلفة السيناريو قبل أن يوجد الحساب.
curl https://mcp.astroway.info/mcp/docs \-H "Content-Type: application/json" \-H "Accept: application/json, text/event-stream" \-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"find_endpoint","arguments":{"query":"solar return","limit":2}}}'read_doc يقرأ فقط الصفحات الموجودة في الفهرس. أي مسار آخر يُرفض، ولا يخرج أي طلب إلى الخارج.
اطلب أقل من الاستجابة كاملة
Section titled “اطلب أقل من الاستجابة كاملة”تقبل كل أداة معاملين فوق معاملاتها الخاصة: fields (قائمة مسارات مفصولة بفواصل، نسبةً إلى data) وprecision (كم خانة عشرية تبقى). يذهبان إلى الـ API نفسه كما في REST، والفرق في الـ tokens ليس كلامًا بلاغيًا.
| استدعاء الخريطة الولادية عبر MCP | البايتات |
|---|---|
| بلا معاملات، كما كان قبل 21.09.2026 | 91 737 |
| بلا معاملات، اليوم | 72 484 |
precision: 2 | 61 356 |
fields: "planets.name,planets.longitude,houses.cusp" مع precision: 2 | 1 182 |
قيس على بيئة الإنتاج في 2026-09-21. الأرصدة متساوية في الصفوف الأربعة كلها: من يدفع ثمن الفرق هو من يقرأ الاستجابة.
المسار الذي لم يطابق أي حقل يعود في _fields_unmatched. والقائمة التي لم يطابق فيها شيء تعطي 400 FIELDS_UNKNOWN مع قائمة، لا استجابة فارغة. الوصف الكامل للمعاملين: اصطلاحات الـ API.
اختر عميلك
Section titled “اختر عميلك”CI / HTTP خام
Section titled “CI / HTTP خام”بلا عميل إطلاقًا: نقطة النهاية المستضافة تتحدث JSON-RPC فوق HTTP. قائمة الأدوات مع رمز Bearer:
curl https://mcp.astroway.info/mcp \-H "Authorization: Bearer aw_live_YOUR_KEY" \-H "Content-Type: application/json" \-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Function calling بلا MCP
Section titled “Function calling بلا MCP”إذا كان وكيلك يتحدث بلغة function calling من OpenAI أو Anthropic بدل MCP، فاطلب من الـ API تعريفات أدوات جاهزة ومرّرها إلى النموذج مباشرة. تُولَّد من مستند OpenAPI، فالمخطط الذي يملؤه النموذج هو نفسه المخطط الذي تتحقق منه نقطة النهاية.
curl "https://api.astroway.info/v1/agent/tools?format=openai" \-H "X-Api-Key: aw_live_YOUR_KEY"للاستجابة نصفان. tools يطابق عقد المورّد بدقة ولا يحمل شيئًا خاصًا بنا، لذا يمكن وضعه في استدعاء النموذج كما هو: مفتاح زائد داخل كائن الأداة يعني 400 من جهتهم. أما executors فيخبرك كيف تنفّذ كل أداة، وله المفاتيح نفسها التي سيعيدها النموذج:
{"tools": [ { "type": "function", "function": { "name": "astroway_post_chart", "description": "Natal chart...", "parameters": { "type": "object", "required": ["date", "time", "latitude", "longitude"], "properties": { "...": {} } } } }],"executors": { "astroway_post_chart": { "method": "POST", "path": "/v1/chart", "credits": 20, "group": "Core" }},"count": 26, "totalMatched": 26, "totalAvailable": 751, "truncated": false}المنفّذ لديك بعد ذلك خمسة أسطر: ابحث عن الاسم في executors، وأرسل وسائط النموذج كجسم JSON إلى ذلك المسار مع X-Api-Key الخاص بك، وأعد الاستجابة إلى النموذج. لا تحتوي أي أداة على بيانات اعتماد، لذا فهذه القائمة آمنة للتخزين المؤقت.
أنت من يختار ما يراه النموذج. افتراضيًا هي مجموعة بداية منتقاة من 26 أداة، لا الكتالوج كله: تحدّ OpenAI الطلب بـ 128 دالة، والنماذج يسوء اختيارها قبل هذا الحد بكثير. ضيّق أو وسّع عبر select=all، select=group:Vedic، select=paths:/chart,/synastry، وصفِّ في الداخل عبر q=، وحدّ العدد عبر limit= (بحد أقصى 128). لا يختفي شيء بصمت: totalMatched وnotes يخبرانك بما بقي خارجًا. أضف format=anthropic للحصول على { name, description, input_schema }.
الاستدعاء مجاني ولا يستهلك أرصدة.
مفتاحك الخاص للنموذج
Section titled “مفتاحك الخاص للنموذج”على نقاط النهاية التي نولّد فيها نصًا، يمكنك أن تدفع ثمن الـ tokens بنفسك. ترويستان، إما كلتاهما أو لا شيء:
curl https://api.astroway.info/v1/ai/explain-aspect \-H "X-Api-Key: aw_live_YOUR_KEY" \-H "X-Provider: anthropic" \-H "X-Provider-Key: sk-ant-YOUR_PROVIDER_KEY" \-H "Content-Type: application/json" \-d '{"planet1":"Saturn","planet2":"Moon","aspectType":"Square"}'X-Provider واحد من openai، anthropic، google، groq، mistral، openrouter، deepseek، together؛ والعنوان لكل منها مثبّت من جهتنا ولا يؤخذ أبدًا من الطلب. X-Provider-Model اختياري ويتجاوز النموذج الافتراضي.
لا يوجد رجوع إلى سلسلتنا. إذا لم يعمل مفتاحك، فستحصل على حالة المزوّد ورسالته، لا على استجابة دفعنا نحن ثمنها: الرجوع الصامت كان سيستهلك tokens الخاصة بنا على طلب ظننته على حسابك، ولن يكون ممكنًا ملاحظة ذلك.
يكلف هذا الاستدعاء 5 أرصدة بدل سعر نقطة النهاية. نحن لا نزال نحسب الخريطة ونجمع الـ prompt ونشغّل الضوابط؛ أما الإكمال فاشتريته أنت.
مفتاحك لا يُسجَّل ولا يُخزَّن ولا يُخزَّن مؤقتًا في أي مكان. يذهب في ترويسة لأن جسم الطلب يُحوَّل إلى hash في مفتاحَي كاش، وسجل طلباتنا لا يكتب الترويسات إطلاقًا. خطأ المزوّد الذي اقتبس مفتاحك يُنقّح قبل أن يصل إلى سجلاتنا أو إلى استجابتك. الاستدعاء بمفتاحك يتجاوز الكاشين في الاتجاهين: لن يحصل أبدًا على استجابة صنعناها نحن، ولن تصل استجابته أبدًا إلى أحد آخر.
الترويسات موجودة في المواصفة. كل مسار يقبلها يعلن X-Provider وX-Provider-Key وX-Provider-Model في /v1/openapi.json، فيربطها العميل المولَّد كأي معامل آخر، ولا يحتاج إلى هذه الصفحة. وهي معلنة فقط حيث نستدعي نموذجًا فعلًا: يمكن إرسالها إلى /chart، لكن لن يحدث شيء، وستدفع السعر المعتاد لنقطة النهاية.
مواصفات قابلة للقراءة آليًا
Section titled “مواصفات قابلة للقراءة آليًا”تريد ربط REST API مباشرة أو تغذية وكيلك الخاص بالمواصفة؟
- AGENTS.md:
/AGENTS.md، تعليمات للوكيل (ما يمكن استدعاؤه بلا مفتاح، عقد الطلب، غلاف الاستجابة، ترويسات الحدود) - OpenAPI:
/v1/openapi.json - llms.txt:
/llms.txt· النص الكامل/llms-full.txt - Postman:
/postman/astroway-api.json - SDK: TypeScript, Python, PHP