Conecta FTIR.fun con cualquier herramienta o aplicación de IA
Proporciona a tu asistente de IA o a tu propio código acceso directo a 320,000+ espectros de referencia, razonamiento de picos basado en grafos de conocimiento e interpretación respaldada por la literatura. Elige una de las tres formas de conexión: MCP para asistentes de IA, la API REST para código o una Skill lista para usar en plataformas sin código. Cada opción incluye instrucciones paso a paso escritas para usuarios principiantes.
MCP y la API REST utilizan la misma clave de API de FTIR.fun. Coze/Doubao utiliza una clave de servicio configurada por el editor del complemento, por lo que los usuarios finales trabajan a través del complemento sin pegar una clave personal. Obtener una clave personal lleva aproximadamente un minuto:
Iniciar sesión en FTIR.funCrea una cuenta gratuita (las cuentas nuevas incluyen créditos de prueba gratuitos).
Ver o copiar tu clave de APILa clave completa (empieza con ftir_) sigue disponible en el panel de Claves de API. Puede volver allí para verla, copiarla o revocarla.
🔑¿Listo? Abra el panel de Claves API en una nueva pestaña, luego regrese y siga la ruta que eligió anteriormente.
Paso 1 — ¿Qué conexión es la adecuada para usted?
Los tres se conectan al mismo motor: 320,000+ espectros, razonamiento basado en grafos de conocimiento y citas bibliográficas. Solo necesitas uno. Elige la vía que se ajuste a tu forma de trabajar; MCP es una opción cómoda para los usuarios de asistentes de IA.
MCPRuta A — Servidor MCP
MCP (Model Context Protocol) es la forma estándar para que los asistentes de IA llamen a herramientas externas. FTIR.fun ejecuta un servidor MCP alojado; no se requiere instalación local. Añada una pequeña configuración a su cliente de IA, introduzca su clave de API y su asistente obtendrá las herramientas de FTIR.fun habilitadas para esa clave.
✓Cómo funciona el inicio de sesión (lea esto primero):
FTIR.fun se autentica con la clave API de tu cuenta, enviada como un encabezado Authorization: Bearer. No hay inicio de sesión OAuth en el navegador ni página de autorización separada. Si un cliente intenta abrir una página web de autorización, está usando una configuración obsoleta; consulta Solución de problemas a continuación.
Elige tu cliente para los pasos exactos:
VS
Configura FTIR.fun MCP en VS Code
Requiere un VS Code actual con GitHub Copilot Chat en modo Agente.
Abra su proyecto, luego cree el archivo .vscode/mcp.jsonDentro de la carpeta de tu proyecto, crea una carpeta llamada .vscode (si no existe) y un archivo llamado mcp.json dentro de ella. ¿Quieres que FTIR.fun esté disponible en todos los proyectos? Coloca el mismo JSON en tu configuración de usuario: abre la Paleta de Comandos, busca 'Preferences: Open User Settings (JSON)', y agrega una entrada mcp.servers allí en su lugar.
Pegue esta configuración exactaCópielo tal cual. Mantenga el marcador de posición ${input:...} — VS Code le solicitará la clave de forma segura cuando se inicie el servidor.
Iniciar el servidor ftirfunAbrir la Paleta de Comandos, ejecutar “MCP: List Servers”, seleccionar ftirfun y elegir Iniciar. Algunas versiones de VS Code muestran una acción Iniciar justo encima del servidor en mcp.json — eso también funciona.
Pegue solo su clave API cuando se le soliciteCuando VS Code solicite ftirfun-api-key, pega únicamente la clave sin formato (comienza por ftir_). La configuración añade automáticamente Bearer.
Confirma que se conectóAbra Copilot Chat en modo Agente y compruebe la lista de herramientas. FTIR.fun debería mostrar el catálogo unificado de herramientas; las llamadas que estén fuera del alcance de capacidades de esta clave devolverán un error de permisos. A continuación, pruebe el mensaje de prueba que aparece abajo.
Use FTIR.fun to explain the FTIR peak at 1715 cm-1.
💬¿Vio una página de autorización o un error de “la página de autorización no existe” antes? Esa era una configuración OAuth obsoleta. Elimine la entrada antigua de ftirfun, pegue el JSON anterior, recargue VS Code e inícielo de nuevo. Solución completa en Solución de problemas.
A
Configurar FTIR.fun MCP en Claude
Oficialmente listado en el Registro MCP de Anthropic. Funciona en Claude Desktop y Claude Code.
Abra la configuración del servidor MCPEn Claude Desktop, vaya a Configuración → Conectores → Agregar conector personalizado. En Claude Code, edite su archivo de configuración MCP.
Agregue el servidor remoto y el encabezado BearerUsa la URL alojada y agrega tu clave API como un encabezado de Authorization. Reemplaza el marcador de posición con tu clave real (comienza con ftir_).
Reiniciar Claude y confirmarReinicia Claude Desktop, abre el panel de conectores/herramientas y confirma que aparecen las herramientas de FTIR.fun. Luego haz una pregunta en lenguaje natural.
Identify this polymer from its FTIR peaks: 2915, 1715, 1450 cm-1.
📎¿Prefiere Claude Code CLI? Ejecute claude mcp add --transport http ftirfun https://ftir.fun/mcp --header "Authorization: Bearer ftir_your_key_here".
Cu
Configurar FTIR.fun MCP en Cursor
Editar la configuración de MCP de Cursor para que tu editor de código de IA pueda llamar a FTIR.fun sin salir del IDE.
Abrir el archivo de configuración de MCPCree o edite ~/.cursor/mcp.json (global) o .cursor/mcp.json dentro de su proyecto.
Pegue el bloque del servidorReemplaza el marcador de posición con tu clave real (comienza con ftir_).
Recargue Cursor y confirmeVuelve a abrir Cursor, verifica Configuración → MCP para el servidor ftirfun y su estado verde, luego pregunta en el chat.
Cx
Configure FTIR.fun MCP en Codex o cualquier plataforma MCP
Funciona con OpenAI Codex y cualquier cliente compatible con MCP que admita servidores HTTP remotos.
Agregue el servidor a su configuración de CodexApunta el cliente a la URL alojada y asegúrate de que envía tu clave de API como una cabecera Bearer. Sustituye el marcador de posición por tu clave real.
Reinicia y confirma que las herramientas se carganReinicie el cliente y confirme que el catálogo de herramientas de FTIR.fun aparece en la lista antes de enviar una solicitud. La clave de API controla qué capacidades pueden utilizarse.
Gm
Configurar MCP de FTIR.fun en la CLI de Gemini
Añade FTIR.fun a un cliente Gemini compatible con MCP usando la misma URL alojada y el encabezado Bearer.
Edite ~/.gemini/settings.jsonAgregar una entrada de servidor httpUrl con el encabezado de tu clave API. Reemplaza el marcador de posición con tu clave real.
Reinicie Gemini CLI y confirmeEjecutar /mcp para listar servidores y confirmar que ftirfun está conectado antes de solicitar.
🧩¿Usando otro cliente MCP? Cualquier cliente que admita un servidor HTTP remoto transmisible funciona: establezca la URL en https://ftir.fun/mcp y enviar Authorization: Bearer <your key>. Consulte la tarjeta del servidor público para ver el esquema completo de la herramienta: server-card.json
✓Después de una conexión exitosa, su cliente de IA debería listar estas 7 herramientas:parse_ftir_spectrum, analyze_ftir_spectrum, submit_ftir_report, get_ftir_report_status, explain_peaks, find_spectra, fetch_result.
Si ve menos herramientas o ninguna, consulte la sección de solución de problemas a continuación.
APIRuta B — API REST
Llame al servicio REST unificado de FTIR.fun desde su propio código en cualquier lenguaje —Python, JavaScript, R, MATLAB, Java, Go—. Su clave de API controla las capacidades disponibles, desde la identificación de espectros desconocidos y la explicación de picos hasta la consulta de referencias, los informes, los flujos de trabajo LIMS y otras operaciones habilitadas para su cuenta.
Verifica que el servicio REST esté en línea.El endpoint de salud es público y no consume puntos. Debería devolver el siguiente JSON. Si ve una página HTML o un tiempo de espera, el servicio puede estar temporalmente inactivo.
curl
curl https://ftir.fun/health
Respuesta esperada
{"status":"ok","service":"ftirfun-api"}
Autentica con el encabezado X-API-KeyCada endpoint protegido requiere su clave en un encabezado X-API-Key. Se aplican las mismas reglas de cuenta que en la aplicación web: puntos, suscripción y límites de frecuencia. Si la clave es incorrecta o falta, recibirá un error JSON 401; si el alcance de sus capacidades no incluye la operación, recibirá una respuesta 403 capability_not_enabled.
Encabezado de autenticación
X-API-Key: ftir_your_key_here
Haga su primera llamada: identifique un espectro desconocidoEnvíe una lista de picos (o un archivo subido) y obtenga materiales candidatos clasificados con puntuaciones de similitud y evidencia de picos. El bloque de opciones es opcional — los valores predeterminados son top_k=15 (rango 1–50) y tolerance_cm1=8 (rango 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..."
}
Explorar el resto de los endpointsLa referencia completa cubre cada endpoint, formatos de solicitud y respuesta, códigos de error y más ejemplos de código. Consulte la Documentación de API.
Lo que desee
Endpoint
Entrada
Identificar un espectro desconocido
POST /ftir/analyze_spectrum
Cuerpo JSON con spectrum.peaks o file_base64
Explicar uno o más picos
POST /ftir/explain_peak_assignments
Cuerpo JSON con lista de picos o texto de consulta
Encuentra un espectro de referencia conocido
POST /ftir/find_spectra
Cuerpo JSON con cadena de consulta
Obtener un resultado anterior por número de informe
GET /ftir/result/{result_num}
Parámetro de ruta, opcional ?language_code=en
Envía un informe asíncrono completo, luego haz polling sobre él.
POST /ftir/reports · GET /ftir/reports/{task_id}
Cuerpo JSON con file_base64 (obligatorio)
Recupere un task_id perdido o liste sus análisis recientes
GET /ftir/tasks
Sin cuerpo; devuelve tus tareas más recientes con task_id, status y result_num
Analice un archivo de instrumento para obtener picos
POST /parse-spectrum
Carga de archivo multipart o JSON con file_base64
Convierte un archivo nativo con preservación de metadatos
POST /native-spectrum/convert
Archivo multipart más output_format O JSON con file_base64, filename y output_format
💡Consejo: POST /ftir/analyze_spectrum es el único punto de entrada recomendado para la identificación de espectros. Los endpoints más antiguos /v1/search, /ftir/identify_material y /ftir/match_library_topk siguen disponibles como alias de compatibilidad: las nuevas integraciones solo necesitan analyze_spectrum.
Referencia de parámetros clave
Parámetro
Tipo
Predeterminado
Rango
Usado por
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
(vacío)
Ver lista a continuación
reports, explain_peaks
language_code
string
"en"
ISO 639-1
reports, fetch_result
include_report
bool
true
—
get_ftir_report_status
📘¿Construyendo un GPT personalizado o importando a otra herramienta? Importe nuestro esquema OpenAPI directamente: openapi.platform.yaml.
Analizar un archivo de instrumento (dos formas)
El endpoint /parse-spectrum acepta ya sea una carga de archivo multipart o un cuerpo JSON con contenido codificado en base64. Ambos devuelven la misma respuesta: picos detectados y la curva completa.
Convertir un archivo nativo del instrumento (CSV, JDX o JSON)
Usa el conversor nativo cuando necesites una curva canónica, metadatos de origen, procedencia y advertencias explícitas de preservación. Mantiene los metadatos del analizador original en metadata.raw y devuelve el artefacto convertido como content_base64.
↗¿Prefieres el flujo de trabajo en el navegador? Abrir conversor de espectro FTIR nativo. Se rechazan formatos de archivo e informe/documento; el conversor es independiente de Image → CSV.
SkillRuta C — Habilidades y complementos
Para las plataformas populares de IA y automatización, distribuimos paquetes listos para usar con integración de API preconfigurada. Instala un paquete o importa un complemento, y FTIR.fun se convierte en un componente básico de tu flujo de trabajo. Cada tarjeta a continuación te indica exactamente qué ejecutar o importar.
LC
LangChain
Paquete Python · PyPI
Publicado
Herramientas listas para usar para construir agentes conscientes de FTIR. Maneja la codificación Base64, reintentos y llamadas asíncronas por usted.
Instalar
pip install langchain-ftirfun
Llamada mínima
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)
Importa FTIRFUN_TOOLS para obtener la lista de funciones publicadas. Cada función acepta api_base_url y api_key como los dos primeros argumentos; el servidor aplica las capacidades habilitadas para esa clave.
Complemento OpenAPI · Clave de servicio del editor
En vivo
El plugin de nube Coze se publica con tres herramientas: análisis de espectros, búsqueda en la biblioteca de referencia y explicación de picos. Los usuarios finales pueden usarlo directamente en Doubao sin configurar ninguna clave API.
La cuota se rastrea por usuario a través de Coze sys_uuid. El plugin utiliza una clave de servicio configurada por el editor.
GPT
ChatGPT
GPT personalizado · Acciones GPT
Esquema listo
Construya un GPT personalizado que analice espectros, explique picos y encuentre espectros de referencia. Importe nuestro esquema OpenAPI como una Acción. Requiere ChatGPT Plus.
Importar URL
https://ftir.fun/openapi.platform.yaml
En el editor de GPT: Configurar → Acciones → Importar desde URL. Establece la autenticación como Clave API (encabezado X-API-Key).
Agrega FTIR.fun como una herramienta personalizada en tus aplicaciones y agentes de Dify importando el mismo esquema OpenAPI.
Importar URL
https://ftir.fun/openapi.platform.yaml
En Dify: Herramientas → Crear herramienta personalizada → importa el esquema, establece el encabezado X-API-Key.
Gm
API de Google Gemini
Declaraciones de funciones (integración con SDK)
Listo
Usa declaraciones de funciones predefinidas para llamar a FTIR.fun desde el flujo de llamadas a funciones de la API de Gemini en tu propio código.
Las declaraciones cubren las operaciones publicadas, incluido el análisis sintáctico y los informes completos asíncronos. El servidor aplica las capacidades habilitadas para cada clave de API.
Los servicios unificados de MCP y REST exponen el mismo catálogo de operaciones de FTIR.fun. Las claves de API pueden recibir un alcance de capacidades más reducido, mientras que las declaraciones específicas de la plataforma pueden publicar intencionadamente solo un subconjunto. Las operaciones siguientes comparten los mismos servicios de FTIR.fun.
Tarea
Herramienta MCP
Punto final REST
Dile esto a tu IA
Leer un archivo de instrumento
parse_ftir_spectrum
POST /parse-spectrum
Analice sample.spc y enumere los picos detectados.
Convertir datos nativos y preservar metadatos
convert_native_spectrum
POST /native-spectrum/convert
Convierte sample.spa a JDX y conserva los metadatos de origen.
Identificar un espectro desconocido
analyze_ftir_spectrum
POST /ftir/analyze_spectrum
Identifique qué polímero es este espectro.
Envía un informe completo de tres ejes
submit_ftir_report
POST /ftir/reports
Envía sample.spa para un informe completo en modo ATR.
Consulta y recupera ese informe.
get_ftir_report_status
GET /ftir/reports/{task_id}
Verifique la tarea del informe y deme el enlace cuando termine.
Explicar picos
explain_peaks
POST /ftir/explain_peak_assignments
¿Qué indican los picos a 1715 y 1450 cm-1?
Encuentra un espectro de referencia conocido
find_spectra
POST /ftir/find_spectra
Encuentre espectros de referencia para poliestireno.
Vuelva a abrir un resultado anterior
fetch_result
GET /ftir/result/{result_num}
Obtén el resultado 20260528100755416137536.
🎓Asignación de picos académica —
Para muestras con una composición conocida, la capacidad avanzada REST/MCP de FTIR.fun asigna cada pico medido con evidencia rastreada en la literatura. Cada envío cuesta 30 puntos o es gratuito con una suscripción activa; las consultas de estado no tienen costo.
Describa la tarea de forma natural (por ejemplo: "Asigne todos los picos FTIR medidos para este espectro; la muestra es PMMA conocido; envíeme el informe por correo electrónico") — el cliente proporciona el archivo y usted nunca necesita construir JSON o Base64 usted mismo. Los resultados completados devuelven tanto el estado JSON como las direcciones de informe protegidas; los informes no se exponen en una ruta de descarga pública.
Extensiones de nombre de archivo de espectro admitidas (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. Mantenga la extensión de nombre de archivo original. Los archivos no admitidos o ilegibles devuelven supported_extensions y supported_formats. Los valores válidos de sampling_mode son Pastilla de KBr, Vapor, Disolvente, Película delgada, Mull de parafina, ATR, Reflectancia difusa, Micro IR y Otros. Transmisión no es un valor válido.
{
"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..."
}
Obtener el informe completo (asíncrono)
El análisis rápido (analyze_spectrum) devuelve el resultado inmediatamente. El informe completo de tres ejes se ejecuta en segundo plano y normalmente tarda entre 30 y 90 segundos. Conserva el task_id y consulta su estado en lugar de volver a enviarlo.
EnviarLlame a submit_ftir_report (MCP) o POST /ftir/reports (REST). Obtendrá un task_id y un result_num reservado. El campo file_base64 es obligatorio; otros campos (sampling_mode, prior_context, language_code, sample_name, sample_order_no) son opcionales.
EncuestaLlame a get_ftir_report_status (MCP) o a GET /ftir/reports/{task_id} cada 5–10 segundos hasta que completed sea true. La respuesta completada incluye report_url, un objeto report (contenido de resultado estructurado, con el detallado report_view dentro) y result_num.
Abra el informe finalAbra la URL completa https://ftir.fun/outputdata/?num={result_num} en un navegador para ver la página completa de resultados tri-axiales renderizada por FTIR.fun.
⚠️Conserve el task_id y consulte periódicamente hasta que se complete o falle. Las solicitudes duplicadas mientras están en cola o en ejecución desperdician puntos.
Solución de problemas
Lo que ves
Qué significa
Qué hacer
El cliente abre una página de autorización del navegador, o dice que la página de autorización no existe.
Tu cliente está usando una entrada de servidor antigua de estilo OAuth. FTIR.fun no utiliza OAuth, solo una clave API.
Eliminar la entrada antigua del servidor ftirfun, pegar la configuración exacta de esta página, recargar el cliente e iniciar ftirfun de nuevo.
401 (MCP) / 401 invalid_api_key (REST)
La clave API falta, ha expirado, ha sido revocada o se pegó incorrectamente.
Reinicie el servidor y pegue solo la clave sin procesar (comienza con ftir_). Genere una nueva clave desde el Panel de Claves API si es necesario.
El servidor se inicia pero no aparecen herramientas.
El cliente no ha actualizado su catálogo, o la configuración usa el nombre de clave incorrecto.
Para VS Code, confirma que mcp.json usa servers (no mcpServers). Luego detén y reinicia ftirfun, o recarga la ventana.
403 insufficient_balance
La cuenta no tiene suficientes puntos para ese análisis.
Verifica tu saldo o suscripción en FTIR.fun, luego vuelve a intentarlo.
429 rate_limit_exceeded
El análisis y análisis REST permiten 60 solicitudes por minuto por clave API; las lecturas de resultados REST y report-status utilizan un bucket separado de 120 solicitudes por minuto; MCP permite 60 llamadas por minuto para cada clave API y herramienta.
Espere el período de reintento informado por la herramienta antes de llamar nuevamente.
Un informe permanece en cola o en ejecución.
Los informes completos se ejecutan de forma asíncrona y toman más tiempo que la revisión rápida.
Mantén el mismo task_id y consulta su estado. Si has perdido el task_id, llama a GET /ftir/tasks para enumerar tus tareas recientes y encontrarlo de nuevo.
422 o missing_input
El cuerpo de la solicitud carece de campos obligatorios o tiene un formato no válido. Para analyze_spectrum, debe proporcionar al menos uno de: peaks, query o file_base64.
Verifique que su JSON sea válido, Content-Type sea application/json y los campos obligatorios estén presentes. Consulte los ejemplos de solicitudes anteriores.
413 file_too_large
El archivo de espectro subido excede el límite de tamaño.
Exporte un archivo más pequeño o use solo las posiciones de los picos a través del campo spectrum.peaks.
¿Listo para construir?
La referencia completa de REST incluye todos los endpoints, formatos de solicitud y respuesta, autenticación, límites de velocidad, códigos de error, definiciones de herramientas MCP y ejemplos de código en Python y curl.