開発者 & AI統合

FTIR.funを任意のAIツールやアプリに接続

AIアシスタントや独自のコードに、13万件以上のリファレンススペクトル、ナレッジグラフによるピーク推論、文献に基づく解釈への直接アクセスを提供します。接続方法は3つから選択できます — AIアシスタント向けのMCP、コード向けのREST API、ノーコードプラットフォーム向けの既製スキル。以下の各パスには、初めてのユーザー向けのステップバイステップの手順が記載されています。

レビュー済み、掲載先:

開始する前に — APIキーを取得してください

MCPとREST APIはどちらも1つのFTIR.fun APIキーを使用します。Coze/Doubaoはプラグインパブリッシャーが設定したサービスキーを使用するため、エンドユーザーは個人キーを貼り付けません。個人キーの取得には約1分かかります:

  1. FTIR.funにサインイン アカウントをお持ちでない場合は無料アカウントを作成してください。新しいアカウントには無料トライアルクレジットが含まれています。
  2. APIキーダッシュボードを開く 移動 アカウント → APIキー そして「生成」をクリックしてください。
  3. キーをすぐにコピーして保存します 完全なキー(ftir_で始まる)は一度だけ表示されます。安全な場所に保存してください。紛失した場合は、新しいキーを生成してください。
🔑 準備はできましたか? APIキーダッシュボードを開く 新しいタブで開き、その後戻って上で選択したパスをたどってください。
⚠️ ホスト型MCPサーバーは、FTIR.fun API Keys Dashboardで生成されたアカウントAPIキー(ftir_で始まる)のみを受け付けます。サーバー側のマスターキーはRESTオペレーター用であり、ホスト型MCPにサインインできません。

ステップ1 — どの接続があなたに適していますか?

3つすべてが同じエンジンに接続します:130,000以上のスペクトル、知識グラフ推論、文献引用。必要なのは1つだけです。作業方法で選んでください。不明な場合?MCPはAIアシスタントを使用する方に最も人気のある選択肢です。

AIが実際にできること

現在のMCP、REST、n8n、およびLangChainディストリビューションは7つの操作を公開しています。公開されているCozeプラグインは3つのツール(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 ATRモードで完全なレポートのためにsample.spaを送信します。
そのレポートをポーリングして取得する get_ftir_report_status GET /ftir/reports/{task_id} レポートタスクを確認し、完了したらリンクを教えてください。
ピークの説明 explain_peaks POST /ftir/explain_peak_assignments 1715 cm-1と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_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秒ごとに呼び出し、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がサーバー(mcpServersではない)を使用していることを確認してください。その後、ftirfunを停止して再起動するか、ウィンドウをリロードしてください。
403 insufficient_balance アカウントにその分析に十分なポイントがありません。 FTIR.funで残高またはサブスクリプションを確認し、再試行してください。
429 rate_limit_exceeded REST分析と解析では、APIキーごとに1分あたり60リクエストを許可します。REST結果とレポートステータスの読み取りは、別の1分あたり120リクエストのバケットを使用します。MCPでは、APIキーとツールごとに1分あたり60コールを許可します。 ツールから報告された再試行期間が経過するまで待ってから再度呼び出してください。
レポートはキューまたは実行中のままです。 完全なレポートは非同期で実行され、クイックスクリーニングよりも時間がかかります。 同じtask_idを保持し、ポーリングを続けてください。重複したレポートタスクを作成しないでください。
422 または missing_input リクエストボディに必須フィールドがないか、形式が無効です。analyze_spectrumの場合、peaks、query、またはfile_base64の少なくとも1つを提供する必要があります。 JSONが有効であり、Content-Typeがapplication/jsonであり、必須フィールドが存在することを確認してください。上記のリクエスト例を参照してください。
413 file_too_large アップロードされたスペクトルファイルがサイズ制限を超えています。 より小さなファイルをエクスポートするか、spectrum.peaksフィールドを介してピーク位置のみを使用してください。

構築の準備はできましたか?

完全なRESTリファレンスには、すべてのエンドポイント、リクエストとレスポンスの形式、認証、レート制限、エラーコード、MCPツール定義、Pythonとcurlのコード例が含まれています。

リクエストを送信 フォーム