امنح مساعد الذكاء الاصطناعي أو شفرتك الخاصة وصولًا مباشرًا إلى 320,000+ من الأطياف المرجعية، واستدلال القمم القائم على الرسم البياني المعرفي، والتفسير المدعوم بالمراجع العلمية. اختر إحدى الطرق الثلاث للاتصال — MCP لمساعدي الذكاء الاصطناعي، أو REST API للشفرة، أو Skill جاهزة للمنصات التي لا تتطلب برمجة. يتضمن كل مسار أدناه تعليمات خطوة بخطوة مكتوبة للمستخدمين الجدد.
يستخدم كل من MCP وREST API مفتاح API واحدًا خاصًا بـ FTIR.fun. ويستخدم Coze/Doubao مفتاح خدمة يضبطه ناشر الإضافة، لذلك يعمل المستخدمون النهائيون من خلال الإضافة دون لصق مفتاح شخصي. يستغرق الحصول على مفتاح شخصي نحو دقيقة واحدة:
تسجيل الدخول إلى FTIR.funأنشئ حسابًا مجانيًا (تتضمن الحسابات الجديدة أرصدة تجريبية مجانية).
عرض أو نسخ مفتاح API الخاص بكالمفتاح الكامل (يبدأ بـ ftir_) يظل متاحًا في لوحة تحكم مفاتيح API. يمكنك العودة إلى هناك لعرضه أو نسخه أو إبطاله.
🔑هل أنت مستعد؟ افتح لوحة مفاتيح API في علامة تبويب جديدة، ثم عد واتبع المسار الذي اخترته أعلاه.
الخطوة 1 - أي اتصال مناسب لك؟
تتصل المسارات الثلاثة جميعها بالمحرك نفسه: 320,000+ من الأطياف، والاستدلال عبر الرسم البياني للمعرفة، والاستشهادات العلمية. لا تحتاج إلا إلى مسار واحد. اختر المسار الذي يتوافق مع طريقة عملك؛ يُعد MCP خيارًا ملائمًا لمستخدمي مساعدات الذكاء الاصطناعي.
MCPالمسار A — خادم MCP
يُعدّ MCP (بروتوكول سياق النموذج) الطريقة القياسية للمساعدين بالذكاء الاصطناعي لاستدعاء الأدوات الخارجية. يشغّل FTIR.fun خادم MCP مستضافًا — ولا يلزم تثبيت محلي. ما عليك سوى إضافة إعداد صغير واحد إلى عميل الذكاء الاصطناعي الخاص بك، وإدخال مفتاح API الخاص بك، وسيحصل مساعدك على أدوات FTIR.fun المفعّلة لهذا المفتاح.
✓كيف يعمل تسجيل الدخول (اقرأ هذا أولاً):
FTIR.fun تتحقق من الهوية باستخدام مفتاح API من حسابك، يتم إرساله كرأس Authorization: Bearer. لا يوجد تسجيل دخول عبر المتصفح OAuth ولا صفحة تفويض منفصلة. إذا حاول عميل فتح صفحة تفويض على الويب، فهو يستخدم تكوينًا قديمًا — انظر استكشاف الأخطاء وإصلاحها أدناه.
اختر عميلك للحصول على الخطوات الدقيقة:
VS
إعداد FTIR.fun MCP في VS Code
يتطلب VS Code حالي مع GitHub Copilot Chat في وضع الوكيل.
افتح مشروعك، ثم أنشئ الملف .vscode/mcp.jsonداخل مجلد مشروعك، أنشئ مجلدًا باسم .vscode (إذا لم يكن موجودًا) وملفًا باسم mcp.json داخله. هل تريد أن تكون FTIR.fun متاحة في كل مشروع؟ ضع نفس JSON في إعدادات المستوى الخاص بك: افتح لوحة الأوامر، وابحث عن 'Preferences: Open User Settings (JSON)'، وأضف إدخال mcp.servers هناك بدلاً من ذلك.
الصق هذا التكوين بالضبطانسخه كما هو. احتفظ بالعنصر النائب ${input:...} — سيطلب VS Code المفتاح بأمان عند بدء تشغيل الخادم.
ابدأ خادم ftirfunافتح لوحة الأوامر، وقم بتشغيل "MCP: List Servers"، واختر ftirfun، واختر بدء. بعض إصدارات VS Code تظهر إجراء بدء أعلى الخادم مباشرة في mcp.json — هذا يعمل أيضًا.
الصق مفتاح API الخاص بك فقط عندما يُطلب منك ذلكعندما يطلب VS Code المفتاح ftirfun-api-key، الصق المفتاح الخام فقط (الذي يبدأ بـ ftir_). يضيف الإعداد Bearer تلقائيًا.
تأكد من اتصالهافتح Copilot Chat في وضع Agent وتحقق من قائمة الأدوات. يجب أن يعرض FTIR.fun كتالوج الأدوات الموحّد؛ وتُرجع الاستدعاءات خارج نطاق إمكانات هذا المفتاح خطأً في الأذونات. ثم جرّب المطالبة الاختبارية أدناه.
Use FTIR.fun to explain the FTIR peak at 1715 cm-1.
💬هل رأيت صفحة تفويض أو خطأ "صفحة التفويض غير موجودة" من قبل؟ كان ذلك تكوينًا قديمًا بنمط OAuth. احذف الإدخال القديم ftirfun، والصق JSON أعلاه، وأعد تحميل VS Code، وابدأ تشغيله مرة أخرى. الإصلاح الكامل في استكشاف الأخطاء وإصلاحها.
A
قم بإعداد FTIR.fun MCP في Claude
مدرج رسميًا في سجل Anthropic MCP. يعمل في Claude Desktop و Claude Code.
افتح إعدادات خادم MCPفي Claude Desktop، اذهب إلى الإعدادات → الموصلات → إضافة موصل مخصص. في Claude Code، قم بتحرير ملف إعداد MCP الخاص بك.
أضف الخادم البعيد ورأس Bearerاستخدم عنوان URL المستضاف وأضف مفتاح API الخاص بك كرأس Authorization. استبدل العنصر النائب بمفتاحك الحقيقي (يبدأ بـ ftir_).
أعد تحميل المؤشر وأكدأعد فتح Cursor، وتحقق من الإعدادات ← MCP لخادم ftirfun وحالته الخضراء، ثم اسأل في الدردشة.
Cx
قم بإعداد FTIR.fun MCP في Codex أو أي أداة MCP
يعمل مع OpenAI Codex وأي عميل متوافق مع MCP يدعم خوادم HTTP البعيدة.
أضف الخادم إلى إعداد Codex الخاص بكوجّه العميل إلى عنوان URL المستضاف وتأكد من أنه يرسل مفتاح API الخاص بك في ترويسة Bearer. استبدل العنصر النائب بمفتاحك الحقيقي.
أعد التشغيل وتأكد من تحميل الأدواتأعد تشغيل العميل وتأكد من إدراج كتالوج أدوات FTIR.fun قبل إرسال الطلب. يتحكم مفتاح API في الإمكانات التي يمكن استدعاؤها.
Gm
إعداد FTIR.fun MCP في Gemini CLI
أضف FTIR.fun إلى عميل Gemini القادر على MCP باستخدام نفس عنوان URL المستضاف ورأس Bearer.
تحرير ~/.gemini/settings.jsonأضف إدخال خادم httpUrl مع رأس مفتاح API الخاص بك. استبدل العنصر النائب بمفتاحك الحقيقي.
أعد تشغيل Gemini CLI وأكدشغّل /mcp لعرض الخوادم وتأكد من اتصال ftirfun قبل المطالبة.
🧩هل تستخدم عميل MCP آخر؟ أي عميل يدعم خادم HTTP قابل للبث عن بُعد يعمل: قم بتعيين عنوان URL إلى https://ftir.fun/mcp وإرسال Authorization: Bearer <your key>. انظر إلى بطاقة الخادم العامة للحصول على مخطط الأداة الكامل: server-card.json
✓بعد الاتصال الناجح، يجب على عميل الذكاء الاصطناعي الخاص بك سرد هذه الأدوات السبعة:parse_ftir_spectrum, analyze_ftir_spectrum, submit_ftir_report, get_ftir_report_status, explain_peaks, find_spectra, fetch_result.
إذا رأيت أدوات أقل أو لا ترى أي أدوات على الإطلاق، فتحقق من استكشاف الأخطاء وإصلاحها أدناه.
APIالمسار ب — REST API
استدعِ خدمة REST الموحدة لـ FTIR.fun من شفرتك الخاصة بأي لغة — Python أو JavaScript أو R أو MATLAB أو Java أو Go. يتحكم مفتاح API الخاص بك في الإمكانات المتاحة، بدءًا من تحديد الأطياف المجهولة وشرح القمم، وصولًا إلى البحث عن المراجع والتقارير وسير عمل نظام إدارة معلومات المختبر (LIMS) والعمليات الأخرى المفعّلة لحسابك.
تحقق من أن خدمة REST متصلة بالإنترنتنقطة الصحة عامة ولا تستهلك نقاطًا. يجب أن تعيد JSON أدناه. إذا رأيت صفحة HTML أو مهلة، فقد تكون الخدمة معطلة مؤقتًا.
curl
curl https://ftir.fun/health
الاستجابة المتوقعة
{"status":"ok","service":"ftirfun-api"}
المصادقة باستخدام رأس X-API-Keyيتطلب كل طرف محمي مفتاحك في ترويسة X-API-Key. وتنطبق قواعد الحساب نفسها كما في تطبيق الويب: النقاط والاشتراك وحدود المعدل. إذا كان المفتاح غير صحيح أو مفقودًا، فستتلقى خطأ JSON بحالة 401؛ وإذا لم يتضمن نطاق صلاحياته العملية المطلوبة، فستتلقى استجابة 403 باسم capability_not_enabled.
رأس المصادقة
X-API-Key: ftir_your_key_here
قم بأول استدعاء — تعرف على طيف غير معروفأرسل قائمة بالقمم (أو ملف مرفوع) واحصل على مواد مرشحة مرتبة مع درجات التشابه وأدلة القمم. كتلة الخيارات اختيارية — الافتراضيات هي top_k=15 (النطاق 1–50) و tolerance_cm1=8 (النطاق 1–30).
{
"success": true,
"search_mode": "peak_only",
"n_matches": 5,
"confidence": 0.42,
"confidence_source": "peak_match_score",
"summary": "Peak-based FTIR matching ranks Styrene/acrylonitrile copolymer first...",
"matches": [
{"rank": 1, "name": "Styrene/acrylonitrile copolymer", "cas": "9003-54-7",
"num": 119319, "score": 0.4214, "matched": 6}
],
"evidence": ["3026 cm-1 -> alkyl C-H vibration (DOI 10.5650/jos.ess14201)"],
"peak_explanations": [
{"peak_cm1": 3026, "assignment": "alkyl C-H vibration",
"evidence_type": "kg_peak_group"}
],
"uncertainty": "The leading match is close to the runner-up..."
}
استكشف بقية نقاط النهايةيغطي المرجع الكامل كل نقطة نهاية، وتنسيقات الطلبات والاستجابات، ورموز الأخطاء، والمزيد من نماذج الأكواد. انظر إلى توثيق API.
ما تريده
نقطة النهاية
الإدخال
تحديد طيف غير معروف
POST /ftir/analyze_spectrum
نص JSON مع spectrum.peaks أو file_base64
شرح قمة واحدة أو أكثر
POST /ftir/explain_peak_assignments
نص JSON مع قائمة القمم أو نص الاستعلام
ابحث عن طيف مرجعي معروف
POST /ftir/find_spectra
نص JSON مع سلسلة استعلام
جلب نتيجة سابقة برقم التقرير
GET /ftir/result/{result_num}
معامل المسار، اختياري ?language_code=en
أرسل تقريرًا غير متزامن كاملاً، ثم تتبعه
POST /ftir/reports · GET /ftir/reports/{task_id}
نص JSON مع file_base64 (مطلوب)
استرجع task_id المفقود، أو قائمة بتحليلاتك الأخيرة
GET /ftir/tasks
لا يوجد نص؛ تُرجع أحدث مهامك مع task_id وstatus وresult_num
تحليل ملف جهاز إلى قمم
POST /parse-spectrum
تحميل ملف متعدد الأجزاء أو JSON مع file_base64
حوّل ملف أصلي مع صيانة البيانات الوصفية
POST /native-spectrum/convert
ملف متعدد الأجزاء بالإضافة إلى output_format OR JSON مع file_base64 و اسم الملف و output_format
💡نصيحة: POST /ftir/analyze_spectrum هي نقطة الدخول الموصى بها الوحيدة لتحديد الطيف. تظل نقاط النهاية الأقدم /v1/search و /ftir/identify_material و /ftir/match_library_topk متاحة كأسماء توافقية — التكاملات الجديدة تحتاج فقط إلى analyze_spectrum.
مرجع المعاملات الرئيسية
معامل
النوع
افتراضي
النطاق
تُستخدم بواسطة
top_k
int
15
1–50
analyze_spectrum
tolerance_cm1
int
8
1–30
analyze_spectrum
limit
int
10
1–20
find_spectra
sampling_mode
string
(فارغ)
انظر القائمة أدناه
reports, explain_peaks
language_code
string
"en"
ISO 639-1
reports, fetch_result
include_report
bool
true
—
get_ftir_report_status
📘هل تقوم ببناء GPT مخصص أو استيراده إلى أداة أخرى؟ قم باستيراد مخطط OpenAPI الخاص بنا مباشرة: openapi.platform.yaml.
تحليل ملف الجهاز (طريقتان)
يقبل نقطة النهاية /parse-spectrum إما تحميل ملف متعدد الأجزاء أو نص JSON مع محتوى مشفر بـ base64. كلاهما يعيد نفس الرد: القمم المكتشفة والمنحنى الكامل.
استخدم المحول الأصلي عندما تحتاج إلى منحنى كانوني وبيانات وصفية مصدر وأصلية وتحذيرات صيانة صريحة. يحتفظ بالبيانات الوصفية الأصلية للمحلل في metadata.raw ويعيد المنتج المحوّل كـ content_base64.
↗هل تفضل سير العمل في المتصفح؟ فتح محوّل طيف FTIR أصلي. تنسيقات الأرشيفات والتقارير/الوثائق مرفوضة؛ المحوّل منفصل عن الصورة → CSV.
Skillالمسار C — المهارات والإضافات
بالنسبة إلى منصات الذكاء الاصطناعي والأتمتة الشائعة، نوفر حزمًا جاهزة تتضمن تكاملًا مُسبق البناء مع واجهة API. ثبّت حزمة أو استورد مكوّنًا إضافيًا، وسيصبح FTIR.fun لبنة أساسية في سير عملك. توضّح كل بطاقة أدناه ما يجب تشغيله أو استيراده تحديدًا.
LC
LangChain
حزمة Python · PyPI
منشور
أدوات جاهزة لبناء وكلاء واعين بـ FTIR. تتعامل مع ترميز Base64 وإعادة المحاولة والاستدعاءات غير المتزامنة نيابة عنك.
تثبيت
pip install langchain-ftirfun
استدعاء أدنى
from langchain_ftirfun import explain_peaks
result = explain_peaks(
api_base_url="https://ftir.fun",
api_key="ftir_your_key_here",
peaks=[1715],
)
print(result)
استورد FTIRFUN_TOOLS للحصول على قائمة الدوال المنشورة. تأخذ كل دالة api_base_url وapi_key كأول وسيطين؛ ويفرض الخادم الإمكانات المفعّلة لهذا المفتاح.
يتم نشر ملحق Coze السحابي بثلاث أدوات: تحليل الطيف، البحث في المكتبة المرجعية، وشرح القمم. يمكن للمستخدمين النهائيين استخدامه مباشرة في Doubao دون تكوين أي مفتاح API.
توفّر خدمات MCP وREST الموحّدة كتالوج عمليات FTIR.fun نفسه. وقد تتلقى مفاتيح API نطاقًا أصغر من القدرات، بينما يمكن للإعلانات الخاصة بالمنصة أن تنشر عمدًا مجموعة فرعية فقط. تشترك العمليات أدناه في خدمات FTIR.fun نفسها.
مهمة
أداة MCP
نقطة نهاية REST
قل هذا لذكائك الاصطناعي
قراءة ملف جهاز
parse_ftir_spectrum
POST /parse-spectrum
قم بتحليل sample.spc وسرد القمم المكتشفة.
تحويل البيانات الأصلية وحفظ البيانات الوصفية
convert_native_spectrum
POST /native-spectrum/convert
تحويل sample.spa إلى JDX والحفاظ على البيانات الوصفية المصدرية.
تحديد طيف غير معروف
analyze_ftir_spectrum
POST /ftir/analyze_spectrum
تحديد أي بوليمر هذا الطيف.
تقديم تقرير ثلاثي المحاور كامل
submit_ftir_report
POST /ftir/reports
أرسل sample.spa للحصول على تقرير كامل في وضع ATR.
اسأل واسترجع ذلك التقرير
get_ftir_report_status
GET /ftir/reports/{task_id}
تحقق من مهمة التقرير وأعطني الرابط عند الانتهاء.
شرح القمم
explain_peaks
POST /ftir/explain_peak_assignments
ماذا تشير القمم عند 1715 و1450 سم-1؟
ابحث عن طيف مرجعي معروف
find_spectra
POST /ftir/find_spectra
ابحث عن أطياف مرجعية للبوليستيرين.
أعد فتح نتيجة سابقة
fetch_result
GET /ftir/result/{result_num}
احصل على النتيجة 20260528100755416137536.
🎓تخصيص القمم الأكاديمية —
بالنسبة للعينات ذات التركيب المعروف، تُعيّن قدرة FTIR.fun REST/MCP المتقدمة كل قمة مقاسة مع أدلة موثقة في المراجع. تبلغ تكلفة كل إرسال 30 نقطة، أو يكون مجانيًا مع اشتراك نشط؛ ولا تُفرض رسوم على استعلامات الحالة.
صف المهمة بشكل طبيعي (على سبيل المثال: "خصص جميع قمم FTIR المقاسة لهذا الطيف؛ العينة معروفة PMMA؛ أرسل التقرير بالبريد الإلكتروني إلي") — يوفر العميل الملف ولا تحتاج أبدًا إلى إنشاء JSON أو Base64 بنفسك. تعيد النتائج المكتملة حالة JSON وعناوين التقارير المحمية؛ لا يتم كشف التقارير على مسار تنزيل عام.
امتدادات أسماء ملفات الطيف المدعومة (36): .spa, .spc, .sp, .abs, .irf, .irs, .dt, .jws, .jdx, .dx, .asc, .dpt, .opju, .opus, .ispd, .[0-9]+, .xlsx, .xls, .ods, .csv, .dat, .txt, .tsv, .json, .tab, .a2r, .asp, .spe, .map, .bsp, .spg, .srs, .smf, .ird, .fsm, .mat. احتفظ بامتداد اسم الملف الأصلي. الملفات غير المدعومة أو غير القابلة للقراءة تُرجع supported_extensions وsupported_formats. قيم sampling_mode الصالحة هي قرص KBr، بخار، مذيب، غشاء رقيق، معلق بارافين، ATR، انعكاس منتشر، أشعة تحت الحمراء الدقيقة، وأخرى. النفاذية ليست قيمة صالحة.
{
"success": true,
"search_mode": "peak_explanation",
"peak_explanations": [
{"peaks_cm1": [1715, 1450],
"assignment": "1715 cm-1 suggests C=O stretching (ester or carboxylic acid)...",
"evidence_type": "llm_general_knowledge"}
],
"summary": "Peak explanation based on general FTIR knowledge..."
}
الحصول على التقرير الكامل (غير متزامن)
تُرجع الفحوصات السريعة (analyze_spectrum) النتيجة فورًا. ويعمل التقرير الكامل ذي المحاور الثلاثة في الخلفية ويستغرق عادةً من 30 إلى 90 ثانية. احتفظ بـ task_id وأجرِ استطلاعًا له بدلًا من إعادة الإرسال.
إرسالاستدع submit_ftir_report (MCP) أو POST /ftir/reports (REST). ستحصل على task_id و result_num محجوز. حقل file_base64 مطلوب؛ الحقول الأخرى (sampling_mode, prior_context, language_code, sample_name, sample_order_no) اختيارية.
استطلاع رأياتصل get_ftir_report_status (MCP) أو GET /ftir/reports/{task_id} كل 5-10 ثوانٍ حتى يصبح completedtrue. تتضمن الاستجابة المكتملة report_url وكائن report (محتوى النتيجة المنظم، مع report_view التفصيلي بداخله) و result_num.
افتح التقرير النهائيافتح عنوان URL الكامل https://ftir.fun/outputdata/?num={result_num} في متصفح لعرض صفحة النتائج ثلاثية المحاور الكاملة التي يعرضها FTIR.fun.
⚠️احتفظ بـ task_id واستمر في الاستطلاع حتى يكتمل أو يفشل. تؤدي عمليات الإرسال المكررة أثناء الانتظار في قائمة الانتظار أو التشغيل إلى إهدار النقاط.
استكشاف الأخطاء وإصلاحها
ما تراه
ماذا يعني
ماذا تفعل
يفتح العميل صفحة تفويض المتصفح، أو يقول أن صفحة التفويض غير موجودة.
عميلك يستخدم إدخال خادم قديم بنمط OAuth. FTIR.fun لا تستخدم OAuth — فقط مفتاح API.
احذف إدخال خادم ftirfun القديم، والصق التكوين الدقيق من هذه الصفحة، وأعد تحميل العميل، وابدأ ftirfun مرة أخرى.
401 (MCP) / 401 invalid_api_key (REST)
مفتاح API مفقود أو منتهي الصلاحية أو تم إلغاؤه أو لصقه بشكل غير صحيح.
أعد تشغيل الخادم والصق المفتاح الخام فقط (يبدأ بـ ftir_). إنشاء مفتاح جديد من لوحة تحكم مفاتيح API إذا لزم الأمر.
يبدأ الخادم ولكن لا تظهر أدوات.
العميل لم يقم بتحديث الكتالوج الخاص به، أو التكوين يستخدم اسم مفتاح خاطئ.
بالنسبة لـ VS Code، تأكد من أن mcp.json يستخدم servers (وليس mcpServers). ثم أوقف وأعد تشغيل ftirfun، أو أعد تحميل النافذة.
403 insufficient_balance
الحساب لا يحتوي على نقاط كافية لهذا التحليل.
تحقق من رصيدك أو اشتراكك في FTIR.fun، ثم حاول مرة أخرى.
429 rate_limit_exceeded
تحليل REST وتحليله يسمح بـ 60 طلبًا في الدقيقة لكل مفتاح API؛ قراءات نتيجة REST وحالة التقرير تستخدم حاوية منفصلة تبلغ 120 طلبًا في الدقيقة؛ MCP يسمح بـ 60 استدعاء في الدقيقة لكل مفتاح API وأداة.
انتظر فترة إعادة المحاولة التي أبلغتها الأداة قبل الاتصال مرة أخرى.
يبقى التقرير في قائمة الانتظار أو قيد التشغيل.
تعمل التقارير الكاملة بشكل غير متزامن وتستغرق وقتًا أطول من الفحص السريع.
احتفظ بنفس task_id وأجرِ الاستطلاع. إذا فقدت task_id، فاتصل بـ GET /ftir/tasks لسرد مهامك الأخيرة والعثور عليه مجددًا.
422 أو missing_input
نص الطلب يفتقر إلى الحقول المطلوبة أو يحتوي على تنسيق غير صحيح. بالنسبة إلى analyze_spectrum، يجب عليك تقديم واحد على الأقل من: peaks أو query أو file_base64.
تحقق من أن JSON الخاص بك صالح، وأن Content-Type هو application/json، وأن الحقول المطلوبة موجودة. راجع أمثلة الطلبات أعلاه.
413 file_too_large
يتجاوز ملف الطيف المرفوع حد الحجم.
قم بتصدير ملف أصغر أو استخدم فقط مواقع القمم عبر حقل spectrum.peaks.
هل أنت مستعد للبناء؟
مرجع REST الكامل يحتوي على كل نقطة نهاية، تنسيقات الطلب والاستجابة، التحقق من الهوية، حدود المعدل، رموز الأخطاء، تعريفات أداة MCP، وأمثلة الكود في Python و curl.