Conecte FTIR.fun a qualquer ferramenta ou aplicativo de IA
Dê ao seu assistente de IA ou ao seu próprio código acesso direto a mais de 130.000 espectros de referência, raciocínio de pico com grafo de conhecimento e interpretação baseada na literatura. Escolha uma das três formas de conexão — MCP para assistentes de IA, a API REST para código ou uma Skill pronta para plataformas sem código. Cada caminho abaixo tem instruções passo a passo escritas para usuários iniciantes.
MCP e a API REST usam uma chave de API FTIR.fun. Coze/Doubao usa uma chave de serviço configurada pelo editor do plugin, então os usuários finais não colam uma chave pessoal. Obter uma chave pessoal leva cerca de um minuto:
Faça login no FTIR.funCrie uma conta gratuita se não tiver uma. Novas contas incluem créditos de teste gratuitos.
Copie e salve a chave imediatamenteA chave completa (começa com ftir_) é mostrada apenas uma vez. Armazene-a em um local seguro. Se a perder, basta gerar uma nova.
⚠️O servidor MCP hospedado aceita apenas uma chave de API de conta gerada no Painel de Chaves de API do FTIR.fun (começa com ftir_). As chaves mestras do lado do servidor são para operadores REST e não podem fazer login no MCP hospedado.
Etapa 1 — Qual conexão é ideal para você?
Todos os três conectam-se ao mesmo mecanismo: mais de 130.000 espectros, raciocínio de grafo de conhecimento e citações de literatura. Você só precisa de um. Escolha pela forma como trabalha — não tem certeza? MCP é a escolha mais popular para quem usa um assistente de IA.
MCPCaminho A — Servidor MCP
MCP (Model Context Protocol) é a forma padrão para assistentes de IA chamarem ferramentas externas. O FTIR.fun executa um servidor MCP hospedado — você não instala ou executa nada localmente. Você adiciona uma pequena configuração ao seu cliente de IA, insere sua chave de API, e seu assistente ganha sete ferramentas FTIR.
✓Como funciona o login (leia isto primeiro):
O FTIR.fun autentica com a chave de API da sua conta, enviada como um cabeçalho Authorization: Bearer. Não há login de navegador OAuth nem página de autorização separada. Se um cliente tentar abrir uma página de autorização, ele está usando uma configuração desatualizada — veja Solução de problemas abaixo.
Escolha seu cliente para etapas exatas:
VS
Configure o FTIR.fun MCP no VS Code
Requer um VS Code atual com GitHub Copilot Chat no modo Agente.
Abra seu projeto e crie o arquivo .vscode/mcp.jsonDentro da pasta do seu projeto, crie uma pasta chamada .vscode (se não existir) e um arquivo chamado mcp.json dentro dela. Quer o FTIR.fun disponível em todos os projetos? Coloque o mesmo JSON nas configurações de nível de usuário: abra a Paleta de Comandos, procure 'Preferences: Open User Settings (JSON)', e adicione uma entrada mcp.servers lá.
Cole esta configuração exataCopie como está. Não substitua a parte ${input:...} pela sua chave real — o VS Code solicitará a chave de forma segura quando o servidor iniciar.
Inicie o servidor ftirfunAbra a Paleta de Comandos, execute “MCP: List Servers”, selecione ftirfun e escolha Iniciar. Algumas versões do VS Code mostram uma ação Iniciar logo acima do servidor no mcp.json — isso também funciona.
Cole apenas sua chave de API quando solicitadoQuando o VS Code solicitar ftirfun-api-key, cole apenas a chave bruta (começa com ftir_). Não digite a palavra Bearer — a configuração a adiciona automaticamente.
Confirme que conectouAbra o Copilot Chat no modo Agente e verifique a lista de ferramentas. O FTIR.fun deve mostrar sete ferramentas. Em seguida, tente o prompt de teste abaixo.
Use FTIR.fun to explain the FTIR peak at 1715 cm-1.
💬Já viu uma página de autorização ou um erro de “página de autorização não existe” antes? Isso era uma configuração OAuth desatualizada. Exclua a entrada antiga do ftirfun, cole o JSON acima, recarregue o VS Code e inicie novamente. Correção completa em Solução de Problemas.
A
Configure FTIR.fun MCP no Claude
Listado oficialmente no Registro MCP da Anthropic. Funciona no Claude Desktop e no Claude Code.
Abra as configurações do servidor MCPNo Claude Desktop, vá em Configurações → Conectores → Adicionar conector personalizado. No Claude Code, edite seu arquivo de configuração MCP.
Adicione o servidor remoto e o cabeçalho BearerUse a URL hospedada e adicione sua chave de API como cabeçalho de Autorização. Substitua o espaço reservado pela sua chave real (começa com ftir_).
Reinicie o Claude e confirmeReinicie o Claude Desktop, abra o painel de conectores/ferramentas e confirme que as ferramentas FTIR.fun aparecem. Depois, faça uma pergunta em linguagem natural.
Identify this polymer from its FTIR peaks: 2915, 1715, 1450 cm-1.
📎Prefere a CLI do Claude Code? Execute claude mcp add --transport http ftirfun https://ftir.fun/mcp --header "Authorization: Bearer ftir_your_key_here".
Cu
Configure FTIR.fun MCP no Cursor
Edite a configuração MCP do Cursor para que seu editor de código IA possa chamar o FTIR.fun sem sair da IDE.
Abra o arquivo de configuração MCPCrie ou edite ~/.cursor/mcp.json (global) ou .cursor/mcp.json dentro do seu projeto.
Cole o bloco do servidorSubstitua o espaço reservado pela sua chave real (começa com ftir_).
Recarregue o Cursor e confirmeReabra o Cursor, verifique Configurações → MCP para o servidor ftirfun e seu status verde, depois pergunte no chat.
Cx
Configure o MCP do FTIR.fun no Codex ou em qualquer ambiente MCP
Funciona com OpenAI Codex e qualquer cliente compatível com MCP que suporte servidores HTTP remotos.
Adicione o servidor à sua configuração do CodexAponte o cliente para a URL hospedada e certifique-se de que ele envia sua chave de API como um cabeçalho Bearer. Substitua o espaço reservado pela sua chave real.
Reinicie e confirme que as ferramentas carregamReinicie o cliente e confirme que as sete ferramentas FTIR.fun estão listadas antes de solicitar.
Gm
Configure o FTIR.fun MCP na CLI do Gemini
Adicione FTIR.fun a um cliente Gemini compatível com MCP usando a mesma URL hospedada e o cabeçalho Bearer.
Edite ~/.gemini/settings.jsonAdicione uma entrada de servidor httpUrl com seu cabeçalho de chave de API. Substitua o espaço reservado pela sua chave real.
Reinicie o Gemini CLI e confirmeExecute /mcp para listar servidores e confirme que o ftirfun está conectado antes de solicitar.
🧩Usando outro cliente MCP? Qualquer cliente que suporte um servidor HTTP remoto transmitível funciona: defina a URL para https://ftir.fun/mcp e enviar Authorization: Bearer <your key>. Veja o cartão do servidor público para o esquema completo da ferramenta: server-card.json
✓Após uma conexão bem-sucedida, seu cliente de IA deve listar estas 7 ferramentas:parse_ftir_spectrum, analyze_ftir_spectrum, submit_ftir_report, get_ftir_report_status, explain_peaks, find_spectra, fetch_result.
Se você vir menos ferramentas ou nenhuma, verifique a seção de Solução de Problemas abaixo.
APICaminho B — API REST
Chame FTIR.fun do seu próprio código em qualquer linguagem — Python, JavaScript, R, MATLAB, Java, Go. Endpoints HTTP padrão para identificar espectros desconhecidos, explicar picos, encontrar espectros de referência e obter um resultado anterior por número de relatório. Ideal para integrações LIMS, pipelines em lote ou adicionar pesquisa FTIR ao seu próprio aplicativo.
Verifique se o serviço REST está onlineO endpoint de saúde é público e não consome pontos. Ele deve retornar o JSON abaixo. Se você vir uma página HTML ou um timeout, o serviço pode estar temporariamente indisponível.
curl
curl https://ftir.fun/health
Resposta esperada
{"status":"ok","service":"ftirfun-api"}
Autentique-se com o cabeçalho X-API-KeyCada endpoint protegido recebe sua chave em um cabeçalho X-API-Key. As mesmas regras de conta se aplicam como no aplicativo web: pontos, assinatura e limites de taxa. Se a chave estiver errada ou ausente, você receberá um erro JSON 401.
Cabeçalho de autenticação
X-API-Key: ftir_your_key_here
Faça sua primeira chamada — identifique um espectro desconhecidoEnvie uma lista de picos (ou um arquivo carregado) e obtenha materiais candidatos classificados com pontuações de similaridade e evidências de picos. O bloco de opções é opcional — os padrões são top_k=15 (intervalo 1–50) e tolerance_cm1=8 (intervalo 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..."
}
Explore os demais endpointsA referência completa cobre todos os endpoints, formatos de solicitação e resposta, códigos de erro e mais exemplos de código. Veja o Documentação da API.
O que você deseja
Endpoint
Entrada
Identificar um espectro desconhecido
POST /ftir/analyze_spectrum
Corpo JSON com spectrum.peaks ou file_base64
Explicar um ou mais picos
POST /ftir/explain_peak_assignments
Corpo JSON com lista de picos ou texto de consulta
Encontre um espectro de referência conhecido
POST /ftir/find_spectra
Corpo JSON com string de consulta
Busque um resultado anterior pelo número do relatório
GET /ftir/result/{result_num}
Parâmetro de caminho, opcional ?language_code=en
Envie um relatório assíncrono completo e depois faça polling
POST /ftir/reports · GET /ftir/reports/{task_id}
Corpo JSON com file_base64 (obrigatório)
Analisar um arquivo de instrumento para picos
POST /parse-spectrum
Upload de arquivo multipart OU JSON com file_base64
Referência de parâmetros-chave
Parâmetro
Tipo
Padrão
Intervalo
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
(empty)
Veja a lista abaixo
reports, explain_peaks
language_code
string
"en"
ISO 639-1
reports, fetch_result
include_report
bool
true
—
get_ftir_report_status
📘Construindo um GPT personalizado ou importando para outra ferramenta? Importe nosso esquema OpenAPI diretamente: openapi.platform.yaml.
Analisar um arquivo de instrumento (duas maneiras)
O endpoint /parse-spectrum aceita upload de arquivo multipart ou um corpo JSON com conteúdo codificado em base64. Ambos retornam a mesma resposta: picos detectados e a curva completa.
Para plataformas populares de IA e automação, fornecemos pacotes prontos, para que você não precise escrever chamadas de API manualmente. Instale um pacote ou importe um plugin, e FTIR.fun se torna um bloco de construção no seu fluxo de trabalho. Cada cartão abaixo informa exatamente o que executar ou importar.
LC
LangChain
Pacote Python · PyPI
Publicado
Ferramentas plug-and-play para construir agentes com conhecimento em FTIR. Gerencia codificação Base64, repetições e chamadas assíncronas para você.
Instalar
pip install langchain-ftirfun
Chamada 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)
Importe FTIRFUN_TOOLS para obter todas as sete funções em uma lista. Cada função recebe api_base_url e api_key como os dois primeiros argumentos.
O plugin Coze cloud é publicado com três ferramentas: análise de espectro, pesquisa na biblioteca de referência e explicação de picos. Os usuários finais podem usá-lo diretamente no Doubao sem configurar nenhuma chave de API.
A cota é rastreada por usuário via Coze sys_uuid. O plugin usa uma chave de serviço configurada pelo editor.
GPT
ChatGPT
GPT personalizado · Ações GPT
Esquema pronto
Crie um GPT personalizado que analisa espectros, explica picos e encontra espectros de referência. Importe nosso esquema OpenAPI como uma Ação. Requer ChatGPT Plus.
Importar URL
https://ftir.fun/openapi.platform.yaml
No editor GPT: Configurar → Ações → Importar da URL. Defina auth como Chave de API (cabeçalho X-API-Key).
As distribuições atuais de MCP, REST, n8n e LangChain expõem sete operações. O plugin Coze publicado expõe três ferramentas (analisar, encontrar, explicar), e outros modelos podem expor um conjunto declarado menor; verifique cada cartão de plataforma antes do uso. As operações abaixo compartilham os mesmos serviços do FTIR.fun.
Tarefa
Ferramenta MCP
Endpoint REST
Diga isto ao seu AI
Ler um arquivo de instrumento
parse_ftir_spectrum
POST /parse-spectrum
Analise sample.spc e liste os picos detectados.
Identificar um espectro desconhecido
analyze_ftir_spectrum
POST /ftir/analyze_spectrum
Identifique qual polímero é este espectro.
Envie um relatório triaxial completo
submit_ftir_report
POST /ftir/reports
Envie sample.spa para um relatório completo no modo ATR.
Faça a votação e recupere esse relatório
get_ftir_report_status
GET /ftir/reports/{task_id}
Verifique a tarefa do relatório e me envie o link quando estiver pronto.
Explicar picos
explain_peaks
POST /ftir/explain_peak_assignments
O que os picos em 1715 e 1450 cm-1 indicam?
Encontre um espectro de referência conhecido
find_spectra
POST /ftir/find_spectra
Encontre espectros de referência para poliestireno.
Reabra um resultado anterior
fetch_result
GET /ftir/result/{result_num}
Obtenha o resultado 20260528100755416137536.
Arquivos suportados: SPA, SPC, OPUS, JCAMP-DX, CSV, TSV, Excel, JSON. Os valores válidos de sampling_mode são KBr Pellet, Vapor, Solvent, Thin Film, Paraffin Mull, ATR, Diffuse Reflectance, Micro IR e Outros. Transmission não é um valor válido. Mantenha a extensão original do arquivo para que o FTIR.fun escolha o analisador correto.
{
"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..."
}
Obtendo o relatório completo (assíncrono)
A triagem rápida (analyze_spectrum) retorna imediatamente. O relatório tri-axis completo é executado em segundo plano e normalmente leva de 30 a 90 segundos. Não reenvie enquanto um relatório estiver em execução — mantenha o task_id e consulte-o.
EnviarChame submit_ftir_report (MCP) ou POST /ftir/reports (REST). Você recebe de volta um task_id e um result_num reservado. O campo file_base64 é obrigatório; outros campos (sampling_mode, prior_context, language_code, sample_name, sample_order_no) são opcionais.
EnqueteChame get_ftir_report_status (MCP) ou GET /ftir/reports/{task_id} a cada 5–10 segundos até que completed seja true. A resposta concluída inclui report_url, report_view (conteúdo estruturado do relatório) e result_num.
Abrir o relatório finalAbra a URL completa https://ftir.fun/outputdata/?num={result_num} em um navegador para visualizar a página completa de resultados tri-axis renderizada pelo FTIR.fun.
⚠️Não envie o mesmo relatório novamente enquanto ele estiver na fila ou em execução. Mantenha o task_id e continue consultando até que ele seja concluído ou falhe. Envios duplicados desperdiçam pontos.
Solução de problemas
O que você vê
O que significa
O que fazer
O cliente abre uma página de autorização do navegador, ou diz que a página de autorização não existe.
Seu cliente está usando uma entrada de servidor antiga no estilo OAuth. O FTIR.fun não usa OAuth — apenas uma chave de API.
Exclua a entrada antiga do servidor ftirfun, cole a configuração exata desta página, recarregue o cliente e inicie o ftirfun novamente.
401 (MCP) / 401 invalid_api_key (REST)
A chave de API está ausente, expirada, revogada ou colada incorretamente.
Reinicie o servidor e cole apenas a chave bruta (começa com ftir_). Gere uma nova chave a partir do Painel de Chaves de API se necessário.
O servidor inicia, mas nenhuma ferramenta aparece.
O cliente não atualizou seu catálogo ou a configuração usa o nome de chave errado.
Para o VS Code, confirme que o mcp.json usa servers (não mcpServers). Em seguida, pare e inicie ftirfun, ou recarregue a janela.
403 insufficient_balance
A conta não tem pontos suficientes para essa análise.
Verifique seu saldo ou assinatura no FTIR.fun e tente novamente.
429 rate_limit_exceeded
A análise e parsing REST permitem 60 solicitações por minuto por chave de API; as leituras de resultados REST e status de relatório usam um bucket separado de 120 solicitações por minuto; o MCP permite 60 chamadas por minuto para cada chave de API e ferramenta.
Aguarde o período de repetição informado pela ferramenta antes de chamar novamente.
Um relatório permanece na fila ou em execução.
Relatórios completos são executados de forma assíncrona e demoram mais que a triagem rápida.
Mantenha o mesmo task_id e continue fazendo polling. Não crie tarefas de relatório duplicadas.
422 ou missing_input
O corpo da requisição está faltando campos obrigatórios ou tem formato inválido. Para analyze_spectrum, você deve fornecer pelo menos um de: peaks, query, ou file_base64.
Verifique se seu JSON é válido, o Content-Type é application/json e os campos obrigatórios estão presentes. Veja os exemplos de requisições acima.
413 file_too_large
O arquivo de espectro carregado excede o limite de tamanho.
Exporte um arquivo menor ou use apenas as posições dos picos através do campo spectrum.peaks.
Pronto para construir?
A referência completa da REST possui todos os endpoints, formatos de requisição e resposta, autenticação, limites de taxa, códigos de erro, definições de ferramentas MCP e exemplos de código em Python e curl.
Instituições convidadas para o programa de teste de 7 dias podem inserir seu código de convite abaixo para receber uma conta e senha. Salve suas credenciais com segurança após a ativação.
Para Instituições ConvidadasInsira o código fornecido pela sua instituição ou pela nossa equipe de divulgação.
Obter Conta e SenhaApós a ativação, você receberá um nome de usuário e senha — salve-os imediatamente.
Acesso Completo de 7 DiasDesfrute de acesso irrestrito a todos os recursos por 7 dias a partir da ativação.
Conta Criada!
Nome de usuário
Senha
Expira
Para outros usuários
Faça login e compartilhe seu link de convite com colegas, colegas de classe e amigos. Cada cadastro bem-sucedido lhe rende uso adicional de teste.