開發者與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 Keys 儀表板 在新分頁中,然後回來按照您上面選擇的路徑操作。
⚠️ 託管 MCP 伺服器僅接受在 FTIR.fun API Keys 儀表板中生成的帳戶 API 金鑰(以 ftir_ 開頭)。伺服器端主金鑰僅供 REST 操作員使用,無法登入託管 MCP。

步驟 1 — 哪種連線適合你?

三者皆連接到同一個引擎:超過 130,000 個光譜、知識圖譜推理與文獻引用。你只需要一個。根據你的工作方式選擇 — 不確定?MCP 是使用 AI 助手最受歡迎的選擇。

您的 AI 實際上能做什麼

目前的 MCP、REST、n8n 和 LangChain 發行版公開了七個操作。已發佈的 Coze 外掛程式公開了三個工具(分析、尋找、解釋),其他範本可能公開較小的宣告集;使用前請檢查每個平台卡。以下操作共享相同的 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..."
}

獲取完整報告(非同步)

快速篩選(analyze_spectrum)立即返回。完整的三軸報告在背景執行,通常需要 30–90 秒。請勿在報告執行時重新提交 — 保留 task_id 並輪詢。

  1. 提交 呼叫 submit_ftir_report (MCP) 或 POST /ftir/reports (REST)。您會收到一個 task_id 和一個保留的 result_numfile_base64 欄位是必需的;其他欄位(sampling_modeprior_contextlanguage_codesample_namesample_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. 輪詢 每 5–10 秒呼叫 get_ftir_report_status(MCP)或 GET /ftir/reports/{task_id},直到 completedtrue。完成回應包含 report_urlreport_view(結構化報告內容)和 result_num
    輪詢範例
    curl https://ftir.fun/ftir/reports/rpt_abc123 \
      -H "X-API-Key: ftir_your_key_here"
    輪詢回應(進行中)
    {"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 分析和解析允許每個 API 金鑰每分鐘 60 次請求;REST 結果和報告狀態讀取使用單獨的每分鐘 120 次請求儲存桶;MCP 允許每個 API 金鑰和工具每分鐘 60 次呼叫。 請等待工具報告的重試時間後再重新呼叫。
報告保持在佇列中或正在執行。 完整報告是非同步執行的,且比快速篩選需要更長時間。 保持相同的 task_id 並持續輪詢。請勿建立重複的報告任務。
422missing_input 請求體缺少必要欄位或格式無效。對於 analyze_spectrum,您必須提供至少以下一項:peaks、query 或 file_base64。 請檢查您的 JSON 是否有效、Content-Type 是否為 application/json,以及必要欄位是否存在。請參閱上面的範例請求。
413 file_too_large 上傳的光譜檔案超過大小限制。 匯出較小的檔案或僅透過 spectrum.peaks 欄位使用峰值位置。

準備好建立了嗎?

完整的 REST 參考包含每個端點、請求和回應格式、驗證、速率限制、錯誤代碼、MCP 工具定義,以及 Python 和 curl 的程式碼範例。

提交請求 表單