Softwiro
قبل أن تتعاقد

اربط المساعد الذكي بقوالب Excel عندنا عبر MCP: خطوات ومثال عملي

مجاني، بلا مفتاح ولا تخزين: المساعد يقرأ القالب ويبعت بياناتك ويرجّع الناتج من معادلاته نفسها.

قراءة في 6 دقائق

عايز الـ AI بتاعك يحسب لك في شيت جاهز بدل ما يخمّن الأرقام؟ ده بالظبط اللي بيعمله الـ MCP بتاع Softwiro: بتوصّل المساعد بقوالب Excel عندنا، فيقرأ هيكل القالب، ويبعت له بياناتك، ويرجّع الناتج من معادلات القالب نفسها. من غير مفتاح، ومن غير حساب، ومن غير ما نخزّن أي حاجة.

في الدليل ده هتوصّل المساعد في أربع خطوات، وبعدها مثال كامل بأرقام حقيقية من القالب.

إيه هو الـ MCP هنا؟

MCP (Model Context Protocol) طريقة موحّدة تخلّي تطبيقات الذكاء الاصطناعي تنادي أدوات خارجية. عندنا نقطة واحدة:

https://softwiro.com/api/mcp

وفيها أربع أدوات:

  • list_templates: تدوّر في القوالب بنص عربي أو إنجليزي (مثلًا gym).
  • get_schema: تجيب جداول القالب وأعمدته (أيها إدخال وأيها معادلة) وخانات الإعدادات وخانات النتائج.
  • calculate: تكتب بياناتك في القالب وترجّع اللي حسبته معادلاته.
  • get_download: تجيب رابط ملف xlsx ورابط النسخة الأونلاين.

الترتيب المعتاد: list_templates ثم get_schema ثم calculate. والمساعد لازم يقرا get_schema قبل calculate عشان ما يخترعش أسماء أعمدة.

الخطوة ١: وصّل المساعد

لو بتستخدم Claude Code، أمر واحد:

claude mcp add --transport http softwiro https://softwiro.com/api/mcp

ولأي تطبيق تاني بيدعم خوادم MCP البعيدة (HTTP)، افتح إعدادات الـ MCP أو الموصّلات وضيف خادم جديد باسم softwiro والرابط اللي فوق. مفيش مفتاح ولا تسجيل دخول.

أسرع طريقة: خلّي الـ agent يضيفه بنفسه

لو مش عايز تدوّر على مكان الإعدادات، انسخ البرومبت ده وابعته للمساعد أو الـ agent اللي بتستخدمه:

أنا عايز تضيف MCP server عندك باسم softwiro:
- النوع: remote HTTP (streamable HTTP)
- الرابط: https://softwiro.com/api/mcp
- من غير مفتاح ولا تسجيل دخول.

لو تقدر تضيفه بنفسك (بأمر أو بتعديل ملف الإعدادات الخاص بيك)، نفّذ واحكيلي إيه اللي عدّلته. وبعدها تأكد إنه شغّال بأنك تعرض أسماء الأدوات اللي ظهرت (المفروض: list_templates وget_schema وcalculate وget_download).

لو مش قادر تضيفه بنفسك، اكتب لي الخطوات بالظبط للتطبيق اللي بتشتغل فيه: أفتح أنهي قايمة، وأدوس على إيه، وأكتب إيه في كل خانة. اكتب بس الخطوات اللي إنت متأكد منها، وقول لي صراحةً لو في خطوة مش متأكد منها بدل ما تخمّن.

بعد ما يتضاف، اطلب منه حاجة من القوالب (مثلًا «احسب لي اشتراكات الجيم...») وهو يختار الأدوات لوحده. ملاحظة: بعض التطبيقات بتطلب إعادة تشغيل أو فتح محادثة جديدة قبل ما الأدوات تظهر.

الخطوة ٢: اتأكد إنه شغّال

من أي تيرمنال:

curl -s https://softwiro.com/api/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

المفروض يرجّع أسماء الأدوات الأربع. الخادم بسيط: بيرد على كل طلب لوحده (stateless) ومبيحتفظش بجلسة.

الخطوة ٣: اسأل بلغتك

اكتب للمساعد طلبك العادي، وسيب له يختار الأدوات. مثال:

استخدم الـ MCP بتاع softwiro (قالب اشتراكات الجيم) في كل الحسابات، وماتحسبش بنفسك. اقرا get_schema الأول وبعدين استخدم calculate.

عندي ٣ أعضاء في الجيم. منى انضمت في أول أغسطس باقة ربع سنوي ودفعت ١٣٠٠. كريم اشترك في ١٥ سبتمبر باقة شهري (٥٠٠) ودفع ٣٠٠. سامي اشترك في ٢٠ أكتوبر شهري ودفع ٥٠٠. النهارده ٥ نوفمبر ٢٠٢٦. مين محتاج تجديد؟ ومين عليه متبقي؟

لاحظ أول سطر: بيقول للمساعد صراحةً يستخدم الـ MCP بدل ما يحسب بنفسه. من غيره ممكن المساعد يحسب في دماغه ويرد من غير ما ينادي القالب. وتقدر تستخدم نفس الصيغة مع أي قالب تاني: «استخدم الـ MCP بتاع softwiro في الحساب، وماتحسبش بنفسك».

مثال عملي: قالب اشتراكات الجيم

اللي بيحصل ورا الستار:

  1. list_templates بـ query = gym ← يرجّع القالب gym-memberships.
  2. get_schema ← يعرف إن جداول الإدخال هي «الباقات» و«الأعضاء» و«الاشتراكات» و«الدفعات» و«الحضور»، وإن خانة «تاريخ اليوم» في «الإعدادات!B4».
  3. calculate بالبيانات دي (مختصرة):
{
  "id": "gym-memberships",
  "mode": "replace",
  "cells": { "الإعدادات!B4": "2026-11-05", "الإعدادات!B7": "2026-11-05" },
  "records": [
    { "sheet": "الباقات", "rows": [
      { "الباقة": "شهري", "السعر": 500, "المدة (أشهر)": 1 },
      { "الباقة": "ربع سنوي", "السعر": 1300, "المدة (أشهر)": 3 } ] },
    { "sheet": "الاشتراكات", "rows": [
      { "تاريخ البداية": "2026-08-01", "كود العضو": "M01", "الباقة": "ربع سنوي", "الخصم": 0 },
      { "تاريخ البداية": "2026-09-15", "كود العضو": "M02", "الباقة": "شهري", "الخصم": 0 },
      { "تاريخ البداية": "2026-10-20", "كود العضو": "M03", "الباقة": "شهري", "الخصم": 0 } ] }
  ]
}

(والبيانات الكاملة بتضيف كمان جدول الأعضاء والدفعات والحضور بنفس الطريقة.)

والناتج اللي رجع من القالب (الأسماء خيالية):

العضوالحالةأيام حتى الانتهاءالمتبقي عليه
منىمنتهي-٥٠
كريممنتهي-٢٢٢٠٠
ساميساري١٤٠

وفي ملخص القالب: ٣ أعضاء، اشتراك واحد ساري، اشتراكان منتهيان، واثنان في قائمة التجديد. فالمساعد يرد عليك: «كريم ومنى انتهى اشتراكهما، وكريم عليه ٢٠٠ جنيه. سامي لسه فاضل له ١٤ يوم». وإنت تقدر تراجع الأرقام بنفسك: اشتراك منى بدأ ١ أغسطس لـ ٣ شهور فانتهى ٣١ أكتوبر، أي قبل ٥ أيام من ٥ نوفمبر. وكريم دفع ٣٠٠ من ٥٠٠.

بدون الـ MCP: إيه اللي بيحصل؟

ده رد حقيقي من مساعد على نفس مثال الجيم لما سألناه من غير ما نقوله يستخدم الـ MCP. الرد الأول كان بيحسب في دماغه:

سامي: دافع ٥٠٠ كاملة، والاشتراك ماشي لحد ١٩ نوفمبر، فاضل حوالي ١٥ يوم.

وبعدين المساعد نفسه نادى القالب عن طريق الـ MCP وكتب:

تصحيح: سامي فاضله ١٤ يوم مش ١٥ زي ما قلتلك قبل كده.

وفي نفس الرد كان قال عن منى: «مفيش متبقي لو سعر الربع سنوي عندك ١٣٠٠. لو سعره أعلى قولي»، يعني كان بيفترض سعر الباقة. مع الـ MCP السعر بييجي من جدول «الباقات» اللي بتبعته، فمفيش افتراض.

الخطأ هنا يوم واحد، لكن في شغل فلوس وتحصيل اليوم الواحد ده بيفرق (غرامة تأخير، أو عميل بيتقال له إنه متأخر وهو لسه مش متأخر). والقالب بيحسبها بمعادلات ثابتة بتطلع نفس الناتج كل مرة.

أمثلة من مجالات تانية

كل مثال اتنفّذ فعلًا على الـ MCP بتاعنا يوم ٥ نوفمبر ٢٠٢٦، والأرقام اللي تحت هي اللي رجعت من القالب، وراجعنا الحسابات الأساسية بإيدينا. الأسماء والأرقام خيالية.

شركة تقسيط: قالب متابعة الأقساط والتحصيل

استخدم الـ MCP بتاع softwiro (قالب متابعة الأقساط installments-tracker) في كل الحسابات، وماتحسبش بنفسك. اقرا get_schema الأول وبعدين استخدم calculate.

عندي عقدين تقسيط:
- K٠٠١: محمد السيد، ثلاجة بـ ٣٦٠٠٠ ومقدم ٦٠٠٠، على ١٢ قسط، أول قسط ٢٦ يوليو ٢٠٢٦. دفع ٢٥٠٠ في ٢٦ يوليو و٢٦ أغسطس و٢٦ سبتمبر.
- K٠٠٢: هالة فتحي، غسالة بـ ١٢٠٠٠ ومقدم ٣٠٠٠، على ٦ أقساط، أول قسط ٢٦ يونيو ٢٠٢٦. دفعت ١٥٠٠ في ٢٦ يونيو و٢٦ يوليو.
النهارده ٥ نوفمبر ٢٠٢٦. مين متأخر؟ بكام؟ ومن كام يوم؟ ومين أولى بالاتصال؟
العقدالقسط الشهريالمدفوعالمتأخرأقدم قسط غير مسددأيام التأخير
K٠٠١٢٥٠٠٧٥٠٠٢٥٠٠٢٦ أكتوبر١٠
K٠٠٢١٥٠٠٣٠٠٠٤٥٠٠٢٦ أغسطس٧١

الإجمالي: متأخر ٧٠٠٠ ومتبقي على العملاء ٢٨٥٠٠، وهالة أولى بالاتصال (٧١ يوم). تنبيه: القالب بيحسب على تاريخ اليوم الحقيقي بتاع الخادم (خانة التاريخ فيه معادلة)، فلو جرّبت المثال في يوم تاني الأيام هتختلف.

مطعم: قالب تكلفة الأطباق والوصفات

استخدم الـ MCP بتاع softwiro (قالب تكلفة الأطباق restaurant-recipe-costing) في كل الحسابات، وماتحسبش بنفسك. اقرا get_schema الأول وبعدين استخدم calculate.

أسعار الخامات: دجاج ١١٠ للكيلو، أرز ٣٥ للكيلو، زيت ٦٠ للتر، لحم مفروم ٣٨٠ للكيلو، خبز برجر ٦ للقطعة، شيدر ٤ للشريحة.
- فراخ مشوية بالأرز (بتتباع بـ ١٤٠): ٠٫٣٥ كيلو دجاج و٠٫١٥ كيلو أرز و٠٫٠٢ لتر زيت.
- برجر لحم (بيتباع بـ ١٨٠): ٠٫٢ كيلو لحم مفروم وخبزة وشريحة شيدر و٠٫٠١ لتر زيت.
نسبة التكلفة المستهدفة ٣٠٪. لو سعر الدجاج زاد ٢٥٪ تبقى تكلفة الفراخ كام؟ وإيه السعر اللي أبيع بيه عشان أوصل للنسبة المستهدفة؟
الطبقتكلفة الطبقنسبة التكلفةالسعر المقترح لنسبة ٣٠٪تكلفة الفراخ بعد زيادة الدجاج ٢٥٪
فراخ مشوية بالأرز٤٤٫٩٥٣٢٫١٪١٥٠٥٤٫٥٨ (نسبة ٣٨٫٩٪)
برجر لحم٨٦٫٦٠٤٨٫١٪٢٨٩لا تتغير

يعني الطبقين فوق النسبة المستهدفة، والبرجر بعيد جدًا (٤٨٪ بدل ٣٠٪).

عمارة: قالب تحصيل إيجارات العقارات

استخدم الـ MCP بتاع softwiro (قالب تحصيل الإيجارات rent-collection) في كل الحسابات، وماتحسبش بنفسك. اقرا get_schema الأول وبعدين استخدم calculate.

النهارده ٥ نوفمبر ٢٠٢٦، وتنبيه انتهاء العقد قبل ٦٠ يوم.
- U٠١: أحمد سالم، إيجار ٥٠٠٠ شهريًا، العقد من ١ يناير ٢٠٢٦ لـ ١ يناير ٢٠٢٧، الاستحقاق يوم ١. دفع ٥٠٠٠ في أول كل شهر من يناير لأغسطس.
- U٠٢: مها حسن، إيجار ٦٠٠٠، العقد من ١ مارس ٢٠٢٦ لـ ١٥ ديسمبر ٢٠٢٦، الاستحقاق يوم ٥. دفعت ٦٠٠٠ يوم ٥ من كل شهر من مارس لنوفمبر.
مين متأخر وبكام؟ وإيه العقود اللي قربت تنتهي؟
الوحدةالأشهر المستحقةالمستحقالمدفوعالرصيدالأشهر المتأخرةأيام حتى نهاية العقد
U٠١١١٥٥٠٠٠٤٠٠٠٠١٥٠٠٠٣٥٧ (ينتهي قريبًا)
U٠٢٩٥٤٠٠٠٥٤٠٠٠٠٠٤٠ (ينتهي قريبًا)

الإجمالي: مستحق ١٠٩٠٠٠ ومدفوع ٩٤٠٠٠ ومتأخرات ١٥٠٠٠ ونسبة التحصيل ٨٦٪ تقريبًا.

وباقي القوالب؟

عندنا قوالب لمجالات كتير (مصانع الملابس، العيادات، الورش، المدارس، المقاولات وغيرها)، والفكرة واحدة: ابدأ البرومبت بجملة «استخدم الـ MCP بتاع softwiro في كل الحسابات، وماتحسبش بنفسك»، وسيب المساعد يقرا get_schema ويجيب القالب المناسب بنفسه. تقدر تشوف كل القوالب في templates.json أو من صفحة القوالب.

حاسبات سريعة من غير شيت (٢٣ حاسبة)

بجانب القوالب، الـ MCP فيه أداتين للحسابات السريعة: list_calculators (تعرض الحاسبات وأسماء مدخلاتها) وrun_calculator (تشغّل واحدة). دول ٢٣ حاسبة:

  • حاسبات Softwiro (١٣): ضريبة القيمة المضافة، مؤشر كتلة الجسم، السعرات، موعد الولادة، الإباضة، نقطة التعادل، تكلفة الموديل وقماش المصانع، أجر القطعة، هامش الصيدلية، نقطة إعادة الطلب، تكلفة عدم الحضور، وجدول المذاكرة. وكلها اتقارنت بالصفحات الأصلية على الموقع، وأرقامها اتطابقت.
  • حاسبات قنطار للذهب (١٠): زكاة الذهب والفضة والنقد، النصاب، مصنعية الذهب، أسعار السبائك والجنيهات، «السعر ده عادل؟»، «لو بعت دلوقتي هاخد كام؟»، تحويل الوحدات، الميزانية، مقارنة الذهب بالشهادات والدولار، وتبديل الذهب القديم بالجديد. الأسعار بتتجاب لحظة الطلب من قنطار، ولو الأسعار مش متاحة الأداة بترجع خطأ بدل ما تخمّن.

جرّب الزكاة. البرومبت ده اتنفّذ فعلًا يوم ٥ نوفمبر ٢٠٢٦:

استخدم الـ MCP بتاع softwiro (الأداة run_calculator والحاسبة gold-zakat) في الحساب، وماتحسبش بنفسك.

عندي ١٠٠ جرام دهب عيار ٢١ و٥٠ ألف جنيه كاش. زكاتي كام؟

رجعت الحاسبة: ١٠٠ جرام عيار ٢١ = ٨٧٫٥ جرام ذهب خالص، فوق النصاب (٨٥ جرام)، وزكاة الذهب ١٥٬٦٥٠ ج (٢٫٥٪ من ٦٢٦٬٠٠٠ ج)، وزكاة الكاش ١٬٢٥٠ ج، والإجمالي ١٦٬٩٠٠ ج. الأرقام دي بسعر الذهب ساعتها، وهتتغير بتغيّر السعر. والحاسبة بتجيب نتيجتها من واجهة قنطار كما هي، ومش بتضيف فتوى. للحالات الخاصة في الزكاة اسأل جهة الفتوى.

ملاحظات علشان الاستخدام يطلع سليم

  • التواريخ: ابعتها بصيغة YYYY-MM-DD. والتواريخ الراجعة في النتائج أرقام Excel التسلسلية (عدد الأيام من ٣٠ ديسمبر ١٨٩٩)، فمثلًا ٤٦٣٠٩ هو ١٤ أكتوبر ٢٠٢٦.
  • المعادلات متتغيّرش: بتكتب بس في أعمدة الإدخال. أعمدة المعادلات بترجع في النتيجة تحت calculated.
  • مود الكتابة: replace (الافتراضي) يمسح الأمثلة الموجودة في القالب قبل ما يكتب بياناتك، وappend يضيف بعدها.
  • حدود الاستخدام: لحد ٥٠٠ سطر في الطلب الواحد، و٣٠ عملية حساب في الدقيقة، والطلب لازم يخلص في ١٥ ثانية.
  • مفيش تخزين: كل طلب بيتحسب ويتنسى. مفيش حاجة بتتحفظ على السيرفر عندنا.
  • الأرقام التجريبية: الأسماء والأرقام في المثال خيالية. استخدم بياناتك إنت.

لو مش بتستخدم مساعد، نفس الحساب متاح كـ API عادي: POST على /api/v1/calc/gym-memberships. وقايمة كل القوالب بصيغة JSON على templates.json.

وتقدر تجرّب القالب نفسه أونلاين: شيت اشتراكات الجيم، أو تتصفح كل القوالب المجانية.

أسئلة يطرحها هذا الموضوع

هل الـ MCP مجاني وهل أحتاج مفتاح؟

مجاني ومش محتاج مفتاح ولا حساب.

هل بتخزّنوا البيانات اللي ببعتها؟

لا. كل طلب بيتحسب وبيتنسى، ومفيش حاجة بتتحفظ على السيرفر.

أنهي تطبيقات ذكاء اصطناعي تقدر تستخدمه؟

أي تطبيق بيدعم خوادم MCP البعيدة (HTTP). في Claude Code هو أمر واحد، وفي غيره ضيف رابط النقطة في إعدادات الـ MCP أو الموصّلات.

ليه ما أخلّيش الـ AI يحسب بنفسه؟

لأن القالب فيه المعادلات جاهزة. المساعد بيبعت البيانات ويستلم ناتج المعادلات، وتقدر تراجعه بإيدك.

لديك نظام تريد بناءه؟

تُصمّم Softwiro الأنظمة وتنفّذها وتتولّى تشغيلها في بيئة الإنتاج. اكتب لنا ما تحتاجه، ويصلك نطاق عمل محدّد لا عبارة تسويقية.

ابدأ مشروعًا