Ontwikkelaar & AI-integratie

Verbind FTIR.fun met elke AI-tool of app

Geef je AI-assistent of je eigen code rechtstreeks toegang tot 320,000+ referentiespectra, piekredenering op basis van een kennisgrafiek en literatuuronderbouwde interpretatie. Kies een van drie manieren om verbinding te maken — MCP voor AI-assistenten, de REST API voor code of een kant-en-klare Skill voor no-codeplatforms. Hieronder vind je voor elke route stapsgewijze instructies voor nieuwe gebruikers.

Vermeld op

Voordat je begint — haal je API-sleutel op

MCP en de REST API gebruiken beide één FTIR.fun API-sleutel. Coze/Doubao gebruikt een servicesleutel die door de pluginuitgever is geconfigureerd, zodat eindgebruikers via de plugin werken zonder een persoonlijke sleutel in te voeren. Het verkrijgen van een persoonlijke sleutel duurt ongeveer een minuut:

  1. Meld u aan bij FTIR.fun Maak een gratis account aan (nieuwe accounts bevatten gratis proefcredits).
  2. Open het API-sleutels dashboard Ga naar Account → API-sleutels en klik op Genereren.
  3. Bekijk of kopieer je API-sleutel De volledige sleutel (deze begint met ftir_) blijft beschikbaar in het API Keys-dashboard. U kunt daar terugkeren om deze te bekijken, kopiëren of in te trekken.
🔑 Klaar? Open het API-sleuteldashboard in een nieuw tabblad, kom dan terug en volg het pad dat u hierboven hebt gekozen.

Stap 1 — Welke verbinding is geschikt voor u?

Alle drie maken verbinding met dezelfde engine: 320,000+ spectra, kennisgrafiekredenering en literatuurcitaten. U hebt er maar één nodig. Kies de route die aansluit bij uw werkwijze; MCP is een handige optie voor gebruikers van AI-assistenten.

Wat uw AI daadwerkelijk kan doen

De uniforme MCP- en REST-services bieden dezelfde catalogus van FTIR.fun-bewerkingen. API-sleutels kunnen een beperktere bevoegdheidsscope hebben, terwijl platformspecifieke declaraties opzettelijk slechts een subset kunnen publiceren. De onderstaande bewerkingen maken gebruik van dezelfde FTIR.fun-services.

Taak MCP-tool REST-eindpunt Zeg dit tegen je AI
Lees een instrumentbestand parse_ftir_spectrum POST /parse-spectrum Parseer sample.spc en vermeld de gedetecteerde pieken.
Converteer native data en bewaar metadata convert_native_spectrum POST /native-spectrum/convert Converteer sample.spa naar JDX en behoud de bronmetadata.
Identificeer een onbekend spectrum analyze_ftir_spectrum POST /ftir/analyze_spectrum Identificeer welk polymeer dit spectrum is.
Dien een volledig tri-axis rapport in submit_ftir_report POST /ftir/reports Dien sample.spa in voor een volledig rapport in ATR-modus.
Vraag dat rapport op en haal het op get_ftir_report_status GET /ftir/reports/{task_id} Controleer de rapporttaak en geef me de link wanneer klaar.
Leg pieken uit explain_peaks POST /ftir/explain_peak_assignments Wat geven de pieken bij 1715 en 1450 cm-1 aan?
Vind een bekend referentiespectrum find_spectra POST /ftir/find_spectra Zoek referentiespectra voor polystyreen.
Open een eerder resultaat opnieuw fetch_result GET /ftir/result/{result_num} Haal resultaat 20260528100755416137536 op.
🎓 Academische Pieken Toewijzing — Voor monsters met een bekende samenstelling wijst de geavanceerde FTIR.fun REST/MCP-functionaliteit elke gemeten piek toe met literatuurgebaseerd, traceerbaar bewijsmateriaal. Elke inzending kost 30 punten of is gratis met een actief abonnement; statusopvragingen worden niet in rekening gebracht. Beschrijf de taak op natuurlijke wijze (bijvoorbeeld: “Wijs alle gemeten FTIR-pieken toe voor dit spectrum; het monster is bekend PMMA; e-mail het rapport naar mij”) — de klant levert het bestand en u hoeft zelf nooit JSON of Base64 te construeren. Voltooide resultaten retourneren zowel de JSON-status als beschermde rapportadressen; rapporten worden niet blootgesteld aan een openbaar downloadpad.

Ondersteunde spectrum bestandsextensies (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. Behoud de oorspronkelijke bestandsextensie. Niet-ondersteunde of onleesbare bestanden retourneren supported_extensions en supported_formats. Geldige sampling_mode-waarden zijn KBr Pellet, Vapor, Solvent, Thin Film, Paraffin Mull, ATR, Diffuse Reflectance, Micro IR en Others. Transmission is geen geldige waarde.

find_spectra antwoordvoorbeeld

find_spectra antwoord
{
  "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": "instrument_import",
     "peaks": [697, 756, 1028, ...], "x": [...], "y": [...]}
  ]
}

explain_peaks antwoordvoorbeeld

explain_peaks respons
{
  "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..."
}

Het volledige rapport verkrijgen (async)

Snelle screening (analyze_spectrum) retourneert onmiddellijk. Het volledige tri-axiale rapport wordt op de achtergrond uitgevoerd en duurt doorgaans 30–90 seconden. Bewaar de task_id en voer polling uit in plaats van de taak opnieuw in te dienen.

  1. Verzenden Roep submit_ftir_report (MCP) of POST /ftir/reports (REST) aan. U ontvangt een task_id en een gereserveerd result_num. Het veld file_base64 is vereist; andere velden (sampling_mode, prior_context, language_code, sample_name, sample_order_no) zijn optioneel.
    Indieningsvoorbeeld (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"}'
    Antwoord indienen
    {"success": true, "task_id": "rpt_abc123...", "result_num": "20260713...",
     "status": "queued", "status_url": "https://ftir.fun/ftir/reports/rpt_abc123..."}
  2. Peiling Roep get_ftir_report_status (MCP) of GET /ftir/reports/{task_id} elke 5–10 seconden aan totdat completed true is. De voltooide respons bevat report_url, een report-object (gestructureerde resultaatinhoud, met de gedetailleerde report_view erin) en result_num.
    Poll-voorbeeld
    curl https://ftir.fun/ftir/reports/rpt_abc123 \
      -H "X-API-Key: ftir_your_key_here"
    Poll-antwoord (bezig)
    {"success": true, "task_id": "rpt_abc123", "status": "running", "progress": 45, "completed": false}
    Poll-respons (voltooid)
    {"success": true, "task_id": "rpt_abc123", "status": "completed", "completed": true,
     "result_num": "20260713...", "report_url": "https://ftir.fun/outputdata/?num=20260713..."}
  3. Open het eindrapport Open de volledige URL https://ftir.fun/outputdata/?num={result_num} in een browser om de volledige tri-axis resultaatpagina te bekijken, gerenderd door FTIR.fun.
⚠️ Bewaar de task_id en blijf pollen totdat de taak is voltooid of mislukt. Dubbele indieningen terwijl de taak in de wachtrij staat of wordt uitgevoerd, verspillen punten.

Problemen oplossen

Wat u ziet Wat het betekent Wat te doen
De client opent een browserautorisatiepagina, of geeft aan dat de autorisatiepagina niet bestaat. Uw client gebruikt een oude OAuth-stijl serververmelding. FTIR.fun gebruikt geen OAuth — alleen een API-sleutel. Verwijder de oude ftirfun-serververmelding, plak de exacte configuratie van deze pagina, laad de client opnieuw en start ftirfun opnieuw.
401 (MCP) / 401 invalid_api_key (REST) De API-sleutel ontbreekt, is verlopen, ingetrokken of onjuist geplakt. Herstart de server en plak alleen de ruwe sleutel (begint met ftir_). Genereer een nieuwe sleutel vanuit de API-sleutels Dashboard Indien nodig.
De server start maar er verschijnen geen tools. De client heeft zijn catalogus niet ververst, of de config gebruikt de verkeerde sleutelnaam. Bevestig voor VS Code dat mcp.json servers gebruikt (niet mcpServers). Stop en start vervolgens ftirfun, of herlaad het venster.
403 insufficient_balance Het account heeft niet genoeg punten voor die analyse. Controleer je saldo of abonnement in FTIR.fun en probeer het opnieuw.
429 rate_limit_exceeded REST-analyse en parsing staan 60 verzoeken per minuut per API-sleutel toe; REST-resultaat en rapportstatus-lezen gebruiken een aparte bucket van 120 verzoeken per minuut; MCP staat 60 aanroepen per minuut toe voor elke API-sleutel en tool. Wacht op de door de tool gerapporteerde herstelperiode voordat je opnieuw aanroept.
Een rapport blijft in de wachtrij of actief. Volledige rapporten worden asynchroon uitgevoerd en duren langer dan snelle screening. Behoud dezelfde task_id en voer polling uit. Als u de task_id bent kwijtgeraakt, roep GET /ftir/tasks aan om uw recente taken weer te geven en deze opnieuw te vinden.
422 of missing_input De aanvraagbody mist vereiste velden of heeft een ongeldig formaat. Voor analyze_spectrum moet u ten minste een van de volgende opgeven: peaks, query of file_base64. Controleer of uw JSON geldig is, Content-Type application/json is en vereiste velden aanwezig zijn. Zie de voorbeeldverzoeken hierboven.
413 file_too_large Het geüploade spectrumbestand overschrijdt de maximale grootte. Exporteer een kleiner bestand of gebruik alleen piekposities via het spectrum.peaks-veld.

Klaar om te bouwen?

De volledige REST-referentie heeft elk eindpunt, verzoek- en antwoordformaten, authenticatie, snelheidslimieten, foutcodes, MCP-tooldefinities en codevoorbeelden in Python en curl.

Vereiste indienen Formulier