Интеграция за разработчици и AI

Свържете FTIR.fun с всеки AI инструмент или приложение

Дайте на вашия AI асистент или на вашия собствен код директен достъп до 130 000+ референтни спектъра, разсъждения върху пикове на базата на знание и интерпретация, подкрепена от литература. Изберете един от трите начина за свързване — MCP за AI асистенти, REST API за код или готов Skill за платформи без код. Всеки път по-долу има инструкции стъпка по стъпка, написани за начинаещи.

Прегледано и добавено в

Преди да започнете — вземете своя API ключ

MCP и REST API използват един FTIR.fun API ключ. Coze/Doubao използва сервизен ключ, конфигуриран от издателя на плъгина, така че крайните потребители не поставят личен ключ. Получаването на личен ключ отнема около минута:

  1. Влезте в FTIR.fun Създайте безплатен акаунт, ако нямате такъв. Новите акаунти включват безплатни пробни кредити.
  2. Отворете таблото за API ключове Отидете на Акаунт → API ключове и щракнете върху Генериране.
  3. Копирайте и запазете ключа веднага Пълният ключ (започва с ftir_) се показва само веднъж. Съхранявайте го на сигурно място. Ако го загубите, просто генерирайте нов.
🔑 Готови ли сте? Отворете таблото за API ключове в нов раздел, след това се върнете и следвайте пътя, който избрахте по-горе.
⚠️ Хостваният MCP сървър приема само акаунт API ключ, генериран в таблото за API ключове на FTIR.fun (започва с ftir_). Сървърните главни ключове са за REST оператори и не могат да влизат в хоствания MCP.

Стъпка 1 — Коя връзка е подходяща за вас?

И трите се свързват с един и същ двигател: над 130 000 спектъра, разсъждения чрез граф на знанието и литературни цитати. Имате нужда само от един. Изберете според начина си на работа — не сте сигурни? MCP е най-популярният избор за всеки, който използва AI асистент.

Какво всъщност може да прави вашият AI

Текущите дистрибуции MCP, REST, n8n и LangChain предоставят седем операции. Публикуваният плъгин за Coze предоставя три инструмента (analyze, find, explain), а други шаблони може да предоставят по-малък деклариран набор; проверете картата на всяка платформа преди употреба. Операциите по-долу споделят същите услуги на FTIR.fun.

Задача Инструмент MCP REST крайна точка Кажете това на вашия AI
Прочетете файл от инструмент parse_ftir_spectrum POST /parse-spectrum Анализирайте sample.spc и избройте откритите пикове.
Идентифицирайте неизвестен спектър 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 cm-1?
Намерете познат референтен спектър find_spectra POST /ftir/find_spectra Намерете референтни спектри за полистирен.
Отворете отново по-ранен резултат fetch_result GET /ftir/result/{result_num} Извлечете резултат 20260528100755416137536.

Поддържани файлове: SPA, SPC, OPUS, JCAMP-DX, CSV, TSV, Excel, JSON. Валидните стойности на sampling_mode са KBr Pellet, Vapor, Solvent, Thin Film, Paraffin Mull, ATR, Diffuse Reflectance, Micro IR и Others. Transmission не е валидна стойност. Запазете оригиналното разширение на файла, за да може FTIR.fun да избере правилния анализатор.

примерен отговор на find_spectra

отговор на find_spectra
{
  "success": true,
  "query": "polystyrene",
  "match_mode": "synonym",
  "match_count": 3,
  "summary": "Found 3 reference spectrum candidates for 'polystyrene'.",
  "results": [
    {"num": 555, "spectrum_number": 555, "name": "PS/PPO",
     "cas": "-", "source_type": "direct_read:spa",
     "peaks": [697, 756, 1028, ...], "x": [...], "y": [...]}
  ]
}

примерен отговор на explain_peaks

отговор на explain_peaks
{
  "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..."
}

Получаване на пълния отчет (async)

Бързото скриниране (analyze_spectrum) връща веднага. Пълният триосен отчет се изпълнява на заден план и обикновено отнема 30–90 секунди. Не подавайте отново, докато отчетът се изпълнява — запазете task_id и го питайте.

  1. Изпрати Извикайте 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) са опционални.
    Пример за изпращане (REST)
    curl -X POST https://ftir.fun/ftir/reports \
      -H "X-API-Key: ftir_your_key_here" \
      -H "Content-Type: application/json" \
      -d '{"file_base64": "V2F2ZW51bWJlci...", "filename": "sample.spa", "sampling_mode": "ATR", "language_code": "en"}'
    Изпратете отговор
    {"success": true, "task_id": "rpt_abc123...", "result_num": "20260713...", "status": "queued"}
  2. Анкета Извикайте get_ftir_report_status (MCP) или GET /ftir/reports/{task_id} на всеки 5–10 секунди, докато completed стане true. Завършеният отговор включва report_url, report_view (структурирано съдържание на отчета) и result_num.
    Пример за polling
    curl https://ftir.fun/ftir/reports/rpt_abc123 \
      -H "X-API-Key: ftir_your_key_here"
    Отговор на polling (в процес)
    {"success": true, "task_id": "rpt_abc123", "status": "running", "progress": 45, "completed": false}
    Отговор от запитване (завършено)
    {"success": true, "task_id": "rpt_abc123", "status": "completed", "completed": true,
     "result_num": "20260713...", "report_url": "https://ftir.fun/outputdata/?num=20260713..."}
  3. Отворете крайния отчет Отворете пълния 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 и продължете да питате. Не създавайте дублиращи се задачи за отчети.
422 или missing_input Тялото на заявката липсва задължителни полета или има невалиден формат. За analyze_spectrum трябва да предоставите поне едно от: peaks, query или file_base64. Проверете дали вашият JSON е валиден, Content-Type е application/json и задължителните полета присъстват. Вижте примерните заявки по-горе.
413 file_too_large Каченият спектрален файл надвишава ограничението за размер. Експортирайте по-малък файл или използвайте само позиции на пикове чрез полето spectrum.peaks.

Готови ли сте да изграждате?

Пълната REST справка съдържа всяка крайна точка, формати на заявки и отговори, удостоверяване, ограничения на скоростта, кодове за грешки, дефиниции на MCP инструменти и примери за код на Python и curl.

Подаване на заявка Формуляр