Forbind FTIR.fun til ethvert AI-værktøj eller -app
Giv din AI-assistent eller din egen kode direkte adgang til 320,000+ referencespektre, peakræsonnering baseret på vidensgrafer og litteraturunderstøttet fortolkning. Vælg én af tre måder at oprette forbindelse på — MCP til AI-assistenter, REST API'et til kode eller en klargjort Skill til no-code-platforme. Alle nedenstående muligheder indeholder trin-for-trin-instruktioner skrevet til førstegangsbrugere.
MCP og REST API'et bruger begge én FTIR.fun-API-nøgle. Coze/Doubao bruger en tjenestenøgle, der er konfigureret af pluginudgiveren, så slutbrugere arbejder gennem pluginet uden at indsætte en personlig nøgle. Det tager cirka et minut at få en personlig nøgle:
Log ind på FTIR.funOpret en gratis konto (nye konti inkluderer gratis prøvecredits).
Vis eller kopiér din API-nøgleDen fulde nøgle (den starter med ftir_) forbliver tilgængelig i API-nøgledashboardet. Du kan vende tilbage dertil for at se, kopiere eller tilbagekalde den.
Alle tre opretter forbindelse til den samme motor: 320,000+ spektre, viden-grafbaseret ræsonnering og litteraturhenvisninger. Du behøver kun én. Vælg den adgangsvej, der passer til din arbejdsform; MCP er en praktisk mulighed for brugere af AI-assistenter.
MCPSti A — MCP-server
MCP (Model Context Protocol) er standardmetoden til, at AI-assistenter kan kalde eksterne værktøjer. FTIR.fun kører en hostet MCP-server — ingen lokal installation er nødvendig. Du tilføjer én lille konfiguration til din AI-klient, indtaster din API-nøgle, og din assistent får adgang til de FTIR.fun-værktøjer, der er aktiveret for denne nøgle.
✓Sådan fungerer login (læs dette først):
FTIR.fun autentificerer med API-nøglen fra din konto, sendt som en Authorization: Bearer-header. Der er ingen OAuth-browser-login og ingen separat autorisationsside. Hvis en klient nogensinde forsøger at åbne en autorisationswebside, bruger den en forældet konfiguration — se Fejlfinding nedenfor.
Vælg din klient for præcise trin:
VS
Opsæt FTIR.fun MCP i VS Code
Kræver en aktuel VS Code med GitHub Copilot Chat i agenttilstand.
Åbn dit projekt, og opret derefter filen .vscode/mcp.jsonInde i din projektmappe skal du oprette en mappe med navnet .vscode (hvis den ikke findes) og en fil med navnet mcp.json inde i den. Ønsker du FTIR.fun tilgængelig i alle projekter? Placer den samme JSON i dine brugerindstillinger: Åbn kommandopaletten, søg efter 'Preferences: Open User Settings (JSON)', og tilføj en mcp.servers-post der i stedet.
Indsæt denne præcise konfigurationKopiér det som det er. Behold ${input:...}-pladsholderen — VS Code beder sikkert om nøglen, når serveren starter.
Start ftirfun-serverenÅbn kommandopaletten, kør “MCP: List Servers”, vælg ftirfun, og vælg Start. Nogle VS Code-versioner viser en Start-handling lige over serveren i mcp.json — det fungerer også.
Indsæt kun din API-nøgle, når du bliver bedt om detNår VS Code beder om ftirfun-api-key, skal du indsætte kun den rå nøgle (starter med ftir_). Konfigurationen tilføjer automatisk Bearer.
Bekræft, at den er tilsluttetÅbn Copilot Chat i Agent-tilstand, og kontrollér værktøjslisten. FTIR.fun bør vise det samlede værktøjskatalog; kald uden for denne nøgles kapabilitetsområde returnerer en tilladelsesfejl. Prøv derefter testprompten nedenfor.
Use FTIR.fun to explain the FTIR peak at 1715 cm-1.
💬Har du set en autorisationsside eller en fejl med "autorisationsside findes ikke" før? Det var en forældet OAuth-stil konfiguration. Slet den gamle ftirfun-post, indsæt JSON'en ovenfor, genindlæs VS Code, og start det igen. Fuld løsning i Fejlfinding.
A
Opsæt FTIR.fun MCP i Claude
Officielt opført på Anthropic MCP Registry. Fungerer i Claude Desktop og Claude Code.
Åbn MCP-serverindstillingerI Claude Desktop skal du gå til Indstillinger → Forbindelser → Tilføj brugerdefineret forbindelse. I Claude Code skal du redigere din MCP-konfigurationsfil.
Tilføj fjernserveren og Bearer-headerenBrug den hostede URL og tilføj din API-nøgle som en Authorization-header. Erstat pladsholderen med din rigtige nøgle (starter med ftir_).
Genstart Claude og bekræftGenstart Claude Desktop, åbn panelet for forbindelser/værktøjer, og bekræft at FTIR.fun-værktøjerne vises. Stil derefter et spørgsmål på almindeligt sprog.
Identify this polymer from its FTIR peaks: 2915, 1715, 1450 cm-1.
📎Foretrækker du Claude Code CLI? Kør `claude mcp add --transport http ftirfun https://ftir.fun/mcp --header "Authorization: Bearer ftir_your_key_here"`.
Cu
Opsæt FTIR.fun MCP i Cursor
Rediger Cursors MCP-konfiguration, så din AI-kodeeditor kan kalde FTIR.fun uden at forlade IDE'en.
Åbn MCP-konfigurationsfilenOpret eller rediger ~/.cursor/mcp.json (global) eller .cursor/mcp.json i dit projekt.
Indsæt serverblokkenErstat pladsholderen med din rigtige nøgle (starter med ftir_).
Genindlæs Cursor og bekræftGenåbn Cursor, tjek Indstillinger → MCP for ftirfun-serveren og dens grønne status, spørg derefter i chatten.
Cx
Opsæt FTIR.fun MCP i Codex eller et hvilket som helst MCP-stillads
Fungerer med OpenAI Codex og enhver MCP-kompatibel klient, der understøtter eksterne HTTP-servere.
Tilføj serveren til din Codex-konfigurationAngiv den hostede URL for klienten, og sørg for, at den sender din API-nøgle som en Bearer-header. Erstat pladsholderen med din rigtige nøgle.
Genstart og bekræft at værktøjerne indlæsesGenstart klienten, og bekræft, at FTIR.fun-værktøjskataloget er angivet, før du sender forespørgsler. API-nøglen styrer, hvilke funktioner der kan kaldes.
Gm
Opsæt FTIR.fun MCP i Gemini CLI
Tilføj FTIR.fun til en MCP-kompatibel Gemini-klient med den samme hosted URL og Bearer-header.
Rediger ~/.gemini/settings.jsonTilføj en httpUrl-serverindgang med din API-nøgleheader. Erstat pladsholderen med din rigtige nøgle.
Genstart Gemini CLI og bekræftKør /mcp for at liste servere og bekræft, at ftirfun er forbundet, før du spørger.
🧩Bruger du en anden MCP-klient? Enhver klient, der understøtter en ekstern streamable-HTTP-server, fungerer: indstil URL'en til https://ftir.fun/mcp og send Authorization: Bearer <your key>. Se det offentlige serverkort for det fulde værktøjsskema: server-card.json
✓Efter en vellykket forbindelse bør din AI-klient liste disse 7 værktøjer:parse_ftir_spectrum, analyze_ftir_spectrum, submit_ftir_report, get_ftir_report_status, explain_peaks, find_spectra, fetch_result.
Hvis du ser færre værktøjer eller slet ingen, så tjek fejlfinding nedenfor.
APISti B — REST API
Kald den samlede FTIR.fun REST-tjeneste fra din egen kode på et hvilket som helst sprog — Python, JavaScript, R, MATLAB, Java, Go. Din API-nøgle styrer de tilgængelige funktioner, fra identifikation af ukendte spektre og forklaring af toppe til referencesøgning, rapporter, LIMS-arbejdsgange og andre kontobaserede handlinger.
Kontroller, at REST-tjenesten er onlineSundhedsendepunktet er offentligt og forbruger ikke point. Det skal returnere JSON nedenfor. Hvis du ser en HTML-side eller en timeout, kan tjenesten være midlertidigt nede.
curl
curl https://ftir.fun/health
Forventet svar
{"status":"ok","service":"ftirfun-api"}
Godkend med X-API-Key-headerenHvert beskyttet endpoint kræver din nøgle i en X-API-Key-header. De samme kontoregler gælder som i webappen: point, abonnement og hastighedsbegrænsninger. Hvis nøglen er forkert eller mangler, får du en 401 JSON-fejl; hvis dens capability-scope ikke omfatter operationen, får du et 403 capability_not_enabled-svar.
Auth-header
X-API-Key: ftir_your_key_here
Foretag dit første kald — identificer et ukendt spektrumSend en peak-liste (eller en uploadet fil) og få rangerede kandidatmaterials med lighedsscore og peak-bevis. Indstillingsblokken er valgfri — standardværdier er top_k=15 (interval 1–50) og tolerance_cm1=8 (interval 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..."
}
Udforsk resten af endepunkterneDen fulde reference dækker alle slutpunkter, anmodnings- og svarformater, fejlkoder og flere kodeeksempler. Se API-dokumentation.
Hvad du ønsker
Endepunkt
Indtastning
Identificer et ukendt spektrum
POST /ftir/analyze_spectrum
JSON-brødtekst med spectrum.peaks eller file_base64
Forklar en eller flere toppe
POST /ftir/explain_peak_assignments
JSON-brødtekst med peak-liste eller forespørgselstekst
Find et kendt referencespektrum
POST /ftir/find_spectra
JSON-brødtekst med forespørgselsstreng
Hent et tidligere resultat efter rapportnummer
GET /ftir/result/{result_num}
Sti-parameter, valgfri ?language_code=en
Indsend en fuld asynkron rapport, og poll derefter
POST /ftir/reports · GET /ftir/reports/{task_id}
JSON-brødtekst med file_base64 (påkrævet)
Gendan en mistet task_id, eller list dine seneste analyser
GET /ftir/tasks
Ingen brødtekst; returnerer dine seneste opgaver med task_id, status og result_num
Parse en instrumentfil til toppe
POST /parse-spectrum
Multipart filupload ELLER JSON med file_base64
Konverter en native fil med metadatabevaring
POST /native-spectrum/convert
Multipart-fil plus output_format ELLER JSON med file_base64, filename og output_format
💡Tip: POST /ftir/analyze_spectrum er det eneste anbefalede indgangspunkt til spektrumidentifikation. De ældre /v1/search, /ftir/identify_material og /ftir/match_library_topk-endepunkter forbliver tilgængelige som kompatibilitetsaliasser — nye integrationer behøver kun analyze_spectrum.
Nøgleparameter reference
Parameter
Type
Standard
Område
Brugt af
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
(tom)
Se liste nedenfor
reports, explain_peaks
language_code
string
"en"
ISO 639-1
reports, fetch_result
include_report
bool
true
—
get_ftir_report_status
📘Bygger du en tilpasset GPT eller importerer til et andet værktøj? Importer vores OpenAPI-skema direkte: openapi.platform.yaml.
Pars en instrumentfil (to måder)
Slutpunktet /parse-spectrum accepterer enten en multipart filupload eller en JSON-brødtekst med base64-kodet indhold. Begge returnerer det samme svar: detekterede peaks og den fulde kurve.
Konverter en native instrumentfil (CSV, JDX eller JSON)
Brug den native converter når du har brug for en kanonisk kurve, kilde metadata, provenance og eksplicitte bevaringsadvarsler. Den beholder original parserens metadata i metadata.raw og returnerer det konverterede artifact som content_base64.
↗Foretrækker du browser-workflow? Åbn Native FTIR Spektrumkonverter. Arkiver og rapport-/dokumentformater afvises; konverteren er separat fra Billede → CSV.
SkillSti C — Færdigheder og plugins
Til populære AI- og automatiseringsplatforme leverer vi færdige pakker med forudbygget API-integration. Installér en pakke eller importér et plugin, så FTIR.fun bliver en byggesten i din arbejdsgang. Hvert kort nedenfor fortæller dig præcis, hvad du skal køre eller importere.
LC
LangChain
Python-pakke · PyPI
Offentliggjort
Drop-in værktøjer til at bygge FTIR-bevidste agenter. Håndterer Base64-kodning, forsøg og asynkrone kald for dig.
Installér
pip install langchain-ftirfun
Minimalt kald
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)
Importér FTIRFUN_TOOLS for at hente den offentliggjorte funktionsliste. Hver funktion tager api_base_url og api_key som de to første argumenter; serveren håndhæver de funktioner, der er aktiveret for den pågældende nøgle.
Coze cloud-pluginnet er udgivet med tre værktøjer: spektrumanalyse, søgning i referencebibliotek og peak-forklaring. Slutbrugere kan bruge det direkte i Doubao uden at konfigurere nogen API-nøgle.
Kvote spores pr. bruger via Coze sys_uuid. Pluginnet bruger en udgiverkonfigureret service-nøgle.
GPT
ChatGPT
Custom GPT · GPT-handlinger
Skema klar
Byg en brugerdefineret GPT, der analyserer spektre, forklarer toppe og finder referencespektre. Importer vores OpenAPI-skema som en handling. Kræver ChatGPT Plus.
Importer URL
https://ftir.fun/openapi.platform.yaml
I GPT-editoren: Configure → Actions → Import from URL. Indstil auth til API Key (header X-API-Key).
Brug færdiglavede funktionsdeklarationer til at kalde FTIR.fun fra Gemini API'ets funktionskald-flow i din egen kode.
Erklæringerne dækker de offentliggjorte funktioner, herunder parsing og asynkrone fuldstændige rapporter. Serveren håndhæver de funktioner, der er aktiveret for hver API-nøgle.
De samlede MCP- og REST-tjenester viser det samme FTIR.fun-operationskatalog. API-nøgler kan have et mindre kapabilitetsomfang, mens platformspecifikke deklarationer med vilje kun kan offentliggøre en delmængde. Operationerne nedenfor deler de samme FTIR.fun-tjenester.
Opgave
MCP-værktøj
REST-endpoint
Sig dette til din AI
Læs en instrumentfil
parse_ftir_spectrum
POST /parse-spectrum
Pars sample.spc og list de detekterede toppe.
Konverter native data og bevar metadata
convert_native_spectrum
POST /native-spectrum/convert
Konverter sample.spa til JDX og behold kilde-metadata.
Identificer et ukendt spektrum
analyze_ftir_spectrum
POST /ftir/analyze_spectrum
Identificer hvilken polymer dette spektrum er.
Indsend en fuld tri-akse rapport
submit_ftir_report
POST /ftir/reports
Indsend sample.spa for en fuld rapport i ATR-tilstand.
Afstem og hent den rapport
get_ftir_report_status
GET /ftir/reports/{task_id}
Kontrollér rapportopgaven og giv mig linket, når den er færdig.
Forklar toppe
explain_peaks
POST /ftir/explain_peak_assignments
Hvad indikerer toppene ved 1715 og 1450 cm-1?
Find et kendt referencespektrum
find_spectra
POST /ftir/find_spectra
Find referencespektre for polystyren.
Genåbn et tidligere resultat
fetch_result
GET /ftir/result/{result_num}
Hent resultat 20260528100755416137536.
🎓Akademisk peak-tildeling —
For prøver med en kendt sammensætning tilordner den avancerede FTIR.fun REST/MCP-funktionalitet hver målt top med litteraturunderstøttet evidens. Hver indsendelse koster 30 point eller er gratis med et aktivt abonnement; statusforespørgsler opkræves ikke.
Beskriv opgaven naturligt (for eksempel: “Tildel alle målte FTIR-toppe for dette spektrum; prøven er kendt PMMA; e-mail rapporten til mig”) — klienten leverer filen, og du behøver aldrig selv at konstruere JSON eller Base64. Fuldførte resultater returnerer både JSON-status og beskyttede rapportadresser; rapporter er ikke tilgængelige på en offentlig downloadsti.
Understøttede spektrumfiltypenavne (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. Behold det originale filtypenavn. Ikke-understøttede eller ulæselige filer returnerer supported_extensions og supported_formats. Gyldige sampling_mode værdier er KBr Pellet, Vapor, Solvent, Thin Film, Paraffin Mull, ATR, Diffuse Reflectance, Micro IR og Others. Transmission er ikke en gyldig værdi.
{
"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..."
}
Få den fulde rapport (async)
Hurtig screening (analyze_spectrum) returnerer straks. Den fulde treaksede rapport kører i baggrunden og tager typisk 30–90 sekunder. Gem task_id, og afvent resultatet i stedet for at indsende igen.
IndsendKald submit_ftir_report (MCP) eller POST /ftir/reports (REST). Du får et task_id og et reserveret result_num tilbage. Feltet file_base64 er påkrævet; andre felter (sampling_mode, prior_context, language_code, sample_name, sample_order_no) er valgfrie.
AfstemningKald get_ftir_report_status (MCP) eller GET /ftir/reports/{task_id} hvert 5–10 sekund, indtil completed er true. Det fuldførte svar inkluderer report_url, et report-objekt (struktureret resultatindhold med den detaljerede report_view inde i det) og result_num.
Åbn den endelige rapportÅbn den fulde URL https://ftir.fun/outputdata/?num={result_num} i en browser for at se den komplette tri-akse resultatside renderet af FTIR.fun.
⚠️Bevar task_id, og afvent ved at polle, indtil processen er fuldført eller mislykkes. Dobbeltindsendelser, mens den står i kø eller kører, spilder point.
Fejlfinding
Hvad du ser
Hvad det betyder
Hvad skal du gøre
Klienten åbner en browserautorisationsside eller siger, at autorisationssiden ikke findes.
Din klient bruger en gammel OAuth-serverindgang. FTIR.fun bruger ikke OAuth — kun en API-nøgle.
Slet den gamle ftirfun-serverindgang, indsæt den nøjagtige konfiguration fra denne side, genindlæs klienten, og start ftirfun igen.
401 (MCP) / 401 invalid_api_key (REST)
API-nøglen mangler, er udløbet, tilbagekaldt eller indsat forkert.
Genstart serveren og indsæt kun den rå nøgle (starter med ftir_). Generer en ny nøgle fra API-nøgler dashboard om nødvendigt.
Serveren starter, men der vises ingen værktøjer.
Klienten har ikke opdateret sit katalog, eller konfigurationen bruger det forkerte nøglenavn.
For VS Code, bekræft at mcp.json bruger servers (ikke mcpServers). Stop derefter og start ftirfun, eller genindlæs vinduet.
403 insufficient_balance
Kontoen har ikke nok point til den analyse.
Tjek din saldo eller abonnement i FTIR.fun, og prøv igen.
429 rate_limit_exceeded
REST-analyse og -parsing tillader 60 anmodninger pr. minut pr. API-nøgle; REST-resultat- og rapportstatus-læsninger bruger en separat bucket på 120 anmodninger pr. minut; MCP tillader 60 kald pr. minut for hver API-nøgle og værktøj.
Vent på den genforsøgsperiode, som værktøjet rapporterer, før du kalder igen.
En rapport forbliver i kø eller kører.
Fuldstændige rapporter kører asynkront og tager længere tid end hurtig screening.
Bevar det samme task_id, og afstem løbende. Hvis du har mistet task_id, skal du kalde GET /ftir/tasks for at liste dine seneste opgaver og finde det igen.
422 eller missing_input
Anmodningens brødtekst mangler påkrævede felter eller har ugyldigt format. For analyze_spectrum skal du angive mindst én af: peaks, query eller file_base64.
Kontrollér, at din JSON er gyldig, Content-Type er application/json, og at påkrævede felter er til stede. Se eksempelanmodningerne ovenfor.
413 file_too_large
Den uploadede spektrumfil overskrider størrelsesgrænsen.
Eksporter en mindre fil eller brug kun peak-positioner via feltet spectrum.peaks.
Klar til at bygge?
Den fulde REST-reference har alle endepunkter, anmodnings- og svarformater, autentificering, rate limits, fejlkoder, MCP-værktøjsdefinitioner og kodeeksempler i Python og curl.