Pagsasama ng Developer at AI

Ikonekta ang FTIR.fun sa Anumang AI Tool o App

Bigyan ang iyong AI assistant o sarili mong code ng direktang access sa 130,000+ reference spectra, knowledge-graph peak reasoning, at literature-backed interpretation. Pumili ng isa sa tatlong paraan para kumonekta — MCP para sa AI assistants, REST API para sa code, o isang ready-made Skill para sa no-code platforms. Ang bawat path sa ibaba ay may step-by-step na mga tagubilin na isinulat para sa mga bagong user.

Nasuri at nakalista sa

Bago ka magsimula — kunin ang iyong API key

Ang MCP at REST API ay parehong gumagamit ng isang FTIR.fun API key. Ang Coze/Doubao ay gumagamit ng service key na na-configure ng plugin publisher, kaya ang mga end user ay hindi nagpe-paste ng personal na key. Ang pagkuha ng personal key ay tumatagal ng halos isang minuto:

  1. Mag-sign in sa FTIR.fun Gumawa ng free account kung wala ka pa. Ang mga bagong account ay may kasamang free trial credits.
  2. Buksan ang API Keys dashboard Pumunta sa Account → API Keys at i-click ang Generate.
  3. Kopyahin at i-save agad ang key Ang buong key (nagsisimula ito sa ftir_) ay ipinapakita lamang nang isang beses. Itago ito sa isang ligtas na lugar. Kung mawala ito, bumuo na lang ng bago.
🔑 Handa na? Buksan ang API Keys Dashboard sa isang bagong tab, pagkatapos ay bumalik at sundan ang landas na iyong pinili sa itaas.
⚠️ Ang naka-host na MCP server ay tumatanggap lamang ng account API key na nabuo sa FTIR.fun API Keys Dashboard (nagsisimula sa ftir_). Ang server-side master keys ay para sa mga REST operator at hindi makakapag-sign in sa naka-host na MCP.

Hakbang 1 — Aling koneksyon ang tama para sa iyo?

Lahat ng tatlo ay kumokonekta sa parehong engine: 130,000+ spectra, knowledge-graph reasoning, at literature citations. Isa lang ang kailangan mo. Pumili ayon sa iyong paraan ng pagtatrabaho — hindi sigurado? Ang MCP ang pinakasikat na pagpipilian para sa sinumang gumagamit ng AI assistant.

Kung ano ang aktwal na magagawa ng iyong AI

Ang kasalukuyang MCP, REST, n8n, at LangChain distributions ay nagpapakita ng pitong operations. Ang nai-publish na Coze plugin ay nagpapakita ng tatlong tools (analyze, find, explain), at ang iba pang templates ay maaaring magpakita ng mas maliit na declared set; suriin ang bawat platform card bago gamitin. Ang mga operations sa ibaba ay nagbabahagi ng parehong FTIR.fun services.

Gawain MCP tool REST endpoint Sabihin ito sa iyong AI
Basahin ang isang instrument file parse_ftir_spectrum POST /parse-spectrum I-parse ang sample.spc at ilista ang mga natukoy na peak.
Kilalanin ang isang hindi kilalang spectrum analyze_ftir_spectrum POST /ftir/analyze_spectrum Kilalanin kung anong polymer ang spectrum na ito.
Isumite ang isang buong tri-axis na ulat submit_ftir_report POST /ftir/reports Isumite ang sample.spa para sa isang buong ulat sa ATR mode.
I-poll at kunin ang ulat na iyon get_ftir_report_status GET /ftir/reports/{task_id} Suriin ang report task at ibigay sa akin ang link kapag tapos na.
Ipaliwanag ang mga peak explain_peaks POST /ftir/explain_peak_assignments Ano ang ipinapahiwatig ng mga peak sa 1715 at 1450 cm-1?
Maghanap ng kilalang reference spectrum find_spectra POST /ftir/find_spectra Hanapin ang reference spectra para sa polystyrene.
Buksan muli ang isang naunang resulta fetch_result GET /ftir/result/{result_num} Kunin ang resulta 20260528100755416137536

Mga sinusuportahang file: SPA, SPC, OPUS, JCAMP-DX, CSV, TSV, Excel, JSON. Ang mga wastong halaga ng sampling_mode ay KBr Pellet, Vapor, Solvent, Thin Film, Paraffin Mull, ATR, Diffuse Reflectance, Micro IR, at Iba Pa. Ang Transmission ay hindi wastong halaga. Panatilihin ang orihinal na extension ng file upang mapili ng FTIR.fun ang tamang parser.

halimbawa ng tugon ng find_spectra

tugon ng 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": [...]}
  ]
}

halimbawa ng tugon ng explain_peaks

tugon ng 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..."
}

Pagkuha ng buong report (async)

Ang mabilis na screening (analyze_spectrum) ay agad na nagbabalik. Ang buong tri-axis na ulat ay tumatakbo sa background at karaniwang tumatagal ng 30–90 segundo. Huwag mag-resubmit habang ang isang ulat ay tumatakbo — panatilihin ang task_id at i-poll ito.

  1. Isumite Tawagan ang submit_ftir_report (MCP) o POST /ftir/reports (REST). Makakakuha ka ng task_id at isang reserved na result_num. Ang file_base64 field ay kinakailangan; ang ibang field (sampling_mode, prior_context, language_code, sample_name, sample_order_no) ay opsyonal.
    Halimbawa ng pagsusumite (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"}'
    Isumite ang tugon
    {"success": true, "task_id": "rpt_abc123...", "result_num": "20260713...", "status": "queued"}
  2. Botohan Tawagan ang get_ftir_report_status (MCP) o GET /ftir/reports/{task_id} bawat 5–10 segundo hanggang ang completed ay true. Ang kumpletong tugon ay may kasamang report_url, report_view (naka-structure na nilalaman ng ulat), at result_num.
    Halimbawa ng poll
    curl https://ftir.fun/ftir/reports/rpt_abc123 \
      -H "X-API-Key: ftir_your_key_here"
    Tugon ng poll (nagpapatuloy)
    {"success": true, "task_id": "rpt_abc123", "status": "running", "progress": 45, "completed": false}
    Tugon ng poll (natapos)
    {"success": true, "task_id": "rpt_abc123", "status": "completed", "completed": true,
     "result_num": "20260713...", "report_url": "https://ftir.fun/outputdata/?num=20260713..."}
  3. Buksan ang huling report Buksan ang buong URL https://ftir.fun/outputdata/?num={result_num} sa isang browser upang makita ang kumpletong tri-axis result page na nirender ng FTIR.fun.
⚠️ Huwag isumite muli ang parehong ulat habang ito ay naka-queue o tumatakbo. Panatilihin ang task_id at patuloy na mag-poll hanggang ito ay kumpleto o nabigo. Ang mga duplicate na pagsusumite ay nagsasayang ng mga puntos.

Pag-troubleshoot

Kung ano ang nakikita mo Kung ano ang ibig sabihin nito Ano ang gagawin
Binubuksan ng client ang isang pahina ng awtorisasyon ng browser, o sinasabing wala ang pahina ng awtorisasyon. Ang iyong client ay gumagamit ng lumang OAuth-style server entry. Ang FTIR.fun ay hindi gumagamit ng OAuth — API key lamang. Tanggalin ang lumang ftirfun server entry, i-paste ang eksaktong config mula sa pahinang ito, i-reload ang client, at simulan muli ang ftirfun.
401 (MCP) / 401 invalid_api_key (REST) Ang API key ay nawawala, nag-expire, binawi, o hindi tama ang pagkaka-paste. I-restart ang server at i-paste lamang ang raw key (nagsisimula sa ftir_). Bumuo ng bagong key mula sa Dashboard ng mga API Key kung kinakailangan.
Nagsimula ang server ngunit walang lumilitaw na mga tool. Ang client ay hindi nirefresh ang catalog nito, o ang config ay gumagamit ng maling key name. Para sa VS Code, kumpirmahin ang mcp.json ay gumagamit ng servers (hindi mcpServers). Pagkatapos, ihinto at simulan ang ftirfun, o i-reload ang window.
403 insufficient_balance Ang account ay walang sapat na puntos para sa analysis na iyon. Suriin ang iyong balanse o subscription sa FTIR.fun, pagkatapos ay subukan muli.
429 rate_limit_exceeded Ang REST analysis at parsing ay nagpapahintulot ng 60 na kahilingan bawat minuto bawat API key; ang REST result at report-status reads ay gumagamit ng hiwalay na 120 kahilingan bawat minutong bucket; ang MCP ay nagpapahintulot ng 60 tawag bawat minuto para sa bawat API key at tool. Maghintay para sa retry period na iniulat ng tool bago tumawag muli.
Ang isang ulat ay nananatiling naka-queue o tumatakbo. Ang buong reports ay tumatakbo nang asynchronously at mas matagal kaysa quick screening. Panatilihin ang parehong task_id at magpatuloy sa pag-poll. Huwag lumikha ng mga duplicate na gawain ng ulat.
422 o missing_input Ang request body ay kulang sa mga kinakailangang field o may hindi valid na format. Para sa analyze_spectrum, dapat kang magbigay ng kahit isa sa: peaks, query, o file_base64. Suriin na valid ang iyong JSON, Content-Type ay application/json, at ang mga kinakailangang field ay naroroon. Tingnan ang mga halimbawang request sa itaas.
413 file_too_large Ang na-upload na spectrum file ay lumampas sa limitasyon ng laki. Mag-export ng mas maliit na file o gamitin lamang ang peak positions sa pamamagitan ng spectrum.peaks field.

Handa nang bumuo?

Ang buong REST reference ay mayroong bawat endpoint, format ng request at response, authentication, rate limits, error codes, MCP tool definitions, at mga halimbawa ng code sa Python at curl.

Isumite ang Kahilingan Formularyo