Conecte o Claude e o ChatGPT aos preços do ouro ao vivo com MCP
Conecte Claude, ChatGPT, Cursor e VS Code a preços ao vivo de ouro e metais pelo MCP da MetalAPI: OAuth ou chave de API, ferramentas, segurança e cotas.
Por que um assistente precisa de uma ferramenta de preços
Pergunte o preço do ouro de hoje a um assistente de chat sem nenhuma ferramenta e você recebe uma de três respostas: uma recusa, um número tirado dos dados de treinamento ou um palpite apresentado com mais confiança do que merece. Nenhuma delas é útil. Um modelo de linguagem aprende a partir de um recorte de textos que termina meses antes de você conversar com ele, enquanto os preços do ouro, da prata e do petróleo mudam a cada poucos segundos sempre que os mercados estão abertos.
A solução de contorno habitual é você mesmo pesquisar o preço e colá-lo no chat. Isso funciona para uma pergunta e depois desanda. Você precisa lembrar qual unidade copiou (onça troy ou grama?), qual moeda e quando o número foi obtido. Faça uma pergunta complementar sobre a faixa de preços do mês passado, ou peça uma conversão para liras turcas, e você está de volta ao navegador.
O Model Context Protocol (MCP) elimina essa etapa. O assistente recebe um pequeno conjunto de ferramentas que pode chamar por conta própria, e cada resposta é construída a partir de uma resposta recente da API, que traz o seu próprio timestamp, a moeda base e a unidade. Este artigo mostra como conectar Claude, ChatGPT, Claude Code, Cursor e VS Code ao servidor MCP da MetalAPI, o que o assistente pode fazer depois de conectado e quais salvaguardas se aplicam.
| Aspecto | Colar números à mão | Chamar uma ferramenta MCP |
|---|---|---|
| Atualidade | O que você copiou, quando você copiou | O preço mais recente que o seu plano permite, obtido no momento da pergunta |
| Unidades e moeda | Fácil confundir onças troy, gramas e moedas | Argumentos base e unit explícitos, repetidos na resposta |
| Timestamp | Geralmente se perde no caminho | Toda resposta inclui timestamp e date |
| Perguntas complementares | Outra consulta manual | O assistente chama outra ferramenta |
| Histórico e conversões | Um site ou uma planilha à parte | Ferramentas de série temporal, OHLC, variação e conversão |
O que é o MCP
O MCP é um protocolo aberto, lançado pela Anthropic em 2024 e hoje suportado por muitos aplicativos de IA, que padroniza a forma como um assistente se comunica com ferramentas e dados externos. Um servidor MCP publica uma lista de ferramentas. Cada ferramenta tem um nome, uma descrição em linguagem simples, um JSON Schema para os seus argumentos e anotações opcionais, como “somente leitura”. Um cliente MCP (Claude, ChatGPT, Cursor, VS Code e outros) lê essa lista, deixa o modelo decidir quando uma ferramenta é relevante, envia a chamada ao servidor e devolve o resultado ao modelo.
O próprio modelo nunca vê as suas credenciais e nunca fala diretamente com a API. Ele produz uma requisição estruturada, como “chame get_latest_prices com symbols: XAU e base: EUR”, o cliente a executa, e o modelo escreve a resposta a partir do JSON que volta.
O servidor da MetalAPI fica em https://metalapi.com/mcp. Ele usa Streamable HTTP, o transporte remoto definido na especificação do MCP, e não guarda estado: cada chamada é uma requisição HTTPS independente com uma resposta JSON, então não há nenhuma sessão de longa duração para manter ativa. O servidor está listado no MCP Registry oficial como com.metalapi/metalapi. Se você abrir a URL em um navegador, será redirecionado para a página de visão geral IA e MCP.
Faça login com OAuth ou use uma chave de API
Toda chamada ao servidor é autenticada. Há duas maneiras de fazer isso, e a certa depende do cliente:
- OAuth 2.1 (login) para apps com uma tela de conectores, como Claude e ChatGPT. O cliente descobre o servidor de autorização sozinho: uma chamada não autenticada recebe uma resposta
401com um cabeçalhoWWW-Authenticateque aponta para os metadados de recurso protegido do servidor. Em seguida, o cliente se registra por meio do registro dinâmico de clientes e abre uma página de login da MetalAPI. O fluxo usa PKCE, então nenhum segredo de cliente precisa ser embutido no app. Você faz login, ou cria uma conta grátis, e aprova a conexão. - Chave de API para ferramentas de desenvolvimento que permitem definir cabeçalhos HTTP, como Claude Code, Cursor e VS Code. Você envia a mesma chave que usa na API REST, como
Authorization: Bearer mk_live_….
Os dois caminhos levam à mesma conta, ao mesmo plano e à mesma cota. Há uma diferença na lista de ferramentas: create_api_key só é oferecida em conexões OAuth. Uma chave copiada para um arquivo de configuração nunca deve ser capaz de criar outras chaves, então uma conexão por chave vê doze ferramentas em vez de treze.
As conexões OAuth aparecem no seu painel em Settings → Connected apps, onde você pode desconectar qualquer uma delas. As chaves de API podem ser substituídas ou revogadas em API keys. Trate uma chave em um arquivo de configuração MCP exatamente como uma chave no seu código-fonte.
Conecte o Claude e o ChatGPT
Para o Claude no claude.ai e no Claude Desktop:
- Abra Settings → Connectors e escolha Add custom connector.
- Dê o nome MetalAPI e informe
https://metalapi.com/mcp. - Clique em Connect, faça login na MetalAPI (ou crie uma conta grátis) e clique em Allow.
No ChatGPT, abra Settings → Apps & Connectors e crie um conector no modo desenvolvedor com a URL https://metalapi.com/mcp e autenticação OAuth. O ChatGPT abre a página de login da MetalAPI; aprove a conexão, e as ferramentas ficam disponíveis nos seus chats. A possibilidade de adicionar conectores personalizados depende do seu plano do ChatGPT e, em um workspace, do que o administrador permite.
Os nomes dos menus dos dois apps mudam de vez em quando. O guia de configuração do MCP é mantido atualizado com os passos atuais para cada cliente.
Na primeira conversa, ajuda mencionar a fonte (“Usando a MetalAPI, qual é…”) para que o assistente recorra à ferramenta em vez da memória. Depois disso, a maioria dos assistentes escolhe a ferramenta sozinha sempre que uma pergunta envolve um preço.
Conecte o Claude Code, o Cursor e o VS Code
Assistentes de programação geralmente usam uma chave de API. Crie uma no painel (o plano Free é suficiente para começar) e use uma chave separada para cada ferramenta, para poder revogar uma sem afetar as outras.
No Claude Code, adicione o servidor pelo terminal:
claude mcp add --transport http metalapi https://metalapi.com/mcp \
--header "Authorization: Bearer YOUR_API_KEY"Se preferir não armazenar uma chave, adicione o servidor sem --header e execute /mcp dentro do Claude Code para fazer login via OAuth.
No Cursor, adicione o servidor a ~/.cursor/mcp.json, ou a .cursor/mcp.json dentro de um projeto:
{
"mcpServers": {
"metalapi": {
"url": "https://metalapi.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}No VS Code com GitHub Copilot, salve o seguinte como .vscode/mcp.json. O bloco inputs faz o VS Code pedir a chave uma vez e armazená-la com segurança, para que a chave nunca fique no próprio arquivo:
{
"inputs": [
{ "type": "promptString", "id": "metalapi-key", "description": "MetalAPI API key", "password": true }
],
"servers": {
"metalapi": {
"type": "http",
"url": "https://metalapi.com/mcp",
"headers": { "Authorization": "Bearer ${input:metalapi-key}" }
}
}
}Outros clientes compatíveis com servidores MCP remotos via Streamable HTTP, como o Windsurf, seguem o mesmo padrão: a URL do servidor e um cabeçalho bearer ou um login OAuth.
Como é uma conversa
Depois de conectar, você pergunta em linguagem natural, e o assistente escolhe uma ferramenta e os seus argumentos. Alguns prompts típicos e as chamadas que eles geram:
| Você pergunta | Ferramenta | Argumentos |
|---|---|---|
| Qual é o preço do ouro por grama em euros agora? | get_latest_prices | symbols: XAU, base: EUR, unit: gram |
| Como a prata se comportou nas últimas duas semanas? | get_timeseries ou get_fluctuation | symbols: XAG, start_date, end_date |
| Converta 2,5 onças troy de platina para liras turcas. | convert | from: XPT, to: TRY, amount: 2.5 |
| Quais foram a abertura, a máxima, a mínima e o fechamento do ouro hoje? | get_ohlc | symbols: XAU |
| Quanto custa o grama do ouro 18K em libras? | get_carat_prices | base: GBP (planos pagos) |
| Em qual plano eu estou e quanto resta da cota? | get_account | Nenhum |
As ferramentas de preços retornam um JSON compacto. O bloco rates da API REST lista cada símbolo duas vezes, como preço e como seu inverso, por compatibilidade com integrações mais antigas. O servidor MCP mantém apenas os preços, indexados por símbolo, em prices. Isso reduz os tokens mais ou menos pela metade e elimina a forma mais comum de interpretar os dados errado. Uma chamada a get_latest_prices com symbols: XAU,XAG, base: EUR e unit: gram retorna algo assim:
{
"success": true,
"timestamp": 1792834892,
"date": "2026-10-24",
"base": "EUR",
"unit": "gram",
"rate_limit": {
"limit": 10000,
"remaining": 9874,
"reset": 1793491200,
"used": 126,
"plan": "Standard",
"reset_date": "2026-11-01T00:00:00.000Z"
},
"prices": {
"XAU": 110.4064149,
"XAG": 1.489616277
}
}Os números deste artigo são ilustrativos. As respostas reais usam os preços mais recentes que o seu plano permite.
Como cada resposta traz timestamp, base e unit, uma boa resposta diz que o ouro estava em cerca de €110 por grama em um determinado momento, e não apenas “€110”. Se uma resposta deixar esse contexto de fora, peça por ele.
Os assistentes também podem encadear chamadas. Se você pedir para comparar a razão ouro/prata de hoje com a de um mês atrás, um assistente pode buscar os dois metais nas duas datas e fazer a divisão por conta própria. Se você pedir um gráfico, um cliente capaz de executar código pode transformar um resultado de get_timeseries em um.
As 13 ferramentas
O servidor expõe treze ferramentas. Sete retornam dados de mercado e contam como uma requisição cada na franquia mensal do seu plano, exatamente como uma chamada REST. As outras são gratuitas.
| Ferramenta | O que faz | Cota |
|---|---|---|
get_latest_prices | Preços mais recentes de metais, energia, moedas e cripto, em qualquer moeda base e unidade de massa | 1 requisição |
get_historical_prices | Preços de fechamento de um dia passado | 1 requisição |
convert | Converte um valor entre dois símbolos, pelo preço mais recente ou em um dia passado | 1 requisição |
get_timeseries | Preços de fechamento diários entre duas datas (até 30 dias por chamada no Free, 365 nos planos pagos) | 1 requisição |
get_fluctuation | Preço inicial e final, variação absoluta e percentual entre duas datas | 1 requisição |
get_ohlc | Abertura, máxima, mínima e fechamento de um dia | 1 requisição |
get_carat_prices | Preços do ouro por quilate, como 22K ou 18K (planos pagos) | 1 requisição |
list_symbols | Todos os códigos de símbolo, com nome, categoria e unidade | Grátis |
get_account | Seu plano, franquia mensal, uso e data de renovação | Grátis |
list_plans | Todos os planos, com limites e preços mensais e anuais | Grátis |
list_api_keys | Suas chaves de API ativas, mascaradas | Grátis |
create_api_key | Cria uma chave para os seus próprios apps; somente em conexões OAuth; pede confirmação | Grátis |
get_upgrade_link | Prepara um link de checkout do Stripe, ou um link do portal de faturamento para assinantes; pede confirmação | Grátis |
Quando um cliente se conecta, o servidor também envia instruções curtas: o que significam os códigos de símbolo, que os preços dos metais são por onça troy, a menos que uma unidade seja informada, e que as ferramentas de dados consomem cota. Os clientes repassam essas instruções ao modelo, e é por isso que um assistente bem-comportado pede apenas os símbolos de que precisa. Menos símbolos significam respostas mais curtas e menos tokens.
Segurança: somente leitura por padrão, sem pagamentos
Conectar um assistente a uma conta levanta uma pergunta justa: o que ele pode alterar? O design mantém a resposta curta.
- Onze das treze ferramentas são somente leitura. Elas têm a anotação MCP
readOnlyHinte só conseguem ler preços, o seu plano, o seu uso e os detalhes mascarados das chaves. - As duas ferramentas de escrita pedem confirmação antes.
create_api_keyeget_upgrade_linksão marcadas como ações que alteram algo, então os clientes MCP pedem a sua confirmação antes de executá-las. - O servidor nunca faz nenhuma cobrança.
get_upgrade_linkcria uma sessão de checkout do Stripe para o plano que você pediu, ou um link do portal de faturamento se você já for assinante, e retorna a URL. Você a abre, confere o preço e faz o pagamento você mesmo. O assistente não consegue concluir um pagamento. - Novas chaves são exibidas uma única vez. Uma chave criada com
create_api_keyé retornada completa uma única vez, como no painel, e apenas um hash dela é armazenado. - Escopo restrito. A conexão alcança a MetalAPI e nada mais: preços, o seu plano, o uso e as chaves de API. O servidor nunca vê as suas conversas, os seus arquivos ou outros conectores.
- Registrado como tráfego da API. As chamadas de dados de mercado aparecem no log de requisições do seu painel como
/mcp/seguido do nome da ferramenta, ao lado das suas requisições REST.
Vale manter um hábito geral de MCP com qualquer servidor: leia os pedidos de confirmação que o seu cliente mostra em vez de aprová-los por reflexo, e remova os conectores que você não usa mais.
Cotas, atualidade dos dados e planos
As chamadas MCP usam a mesma franquia da API REST. Uma chamada a uma ferramenta de dados custa uma requisição, não importa quantos símbolos ela retorne, enquanto list_symbols e as ferramentas de conta não custam nada. Os limites por minuto também se aplicam, a partir de 10 requisições por minuto no Free.
Os preços são tão recentes quanto o seu plano permite. No plano Free, o assistente vê preços diários; nos planos pagos, a atualização vai de 30 minutos até 5 segundos:
| Plano | Preço / mês | Requisições / mês | Intervalo de atualização |
|---|---|---|---|
| Free | US$ 0 | 100 | Diário |
| Lite | US$ 4,99 | 1.000 | 30 minutos |
| Standard | US$ 11,99 | 10.000 | 10 minutos |
| Advanced | US$ 24,99 | 50.000 | 1 minuto |
| Pro | US$ 49,99 | 100.000 | 1 minuto |
| Ultra | US$ 99,99 | 500.000 | 15 segundos |
| Business | US$ 149,99 | 500.000 | 15 segundos |
| Enterprise | US$ 299,99 | 1.500.000 | 5 segundos |
Cem requisições por mês cobrem perguntas ocasionais em um chat. Se você usa um assistente para análises que buscam muitas séries, ou o integra a um agente que roda de forma agendada, peça a ele get_account de vez em quando: a ferramenta informa as requisições usadas, as restantes e quando a franquia é renovada. Quando a franquia mensal se esgota, as ferramentas de dados retornam um erro de cota excedida com um link de upgrade até o dia 1º do mês (UTC), enquanto as ferramentas de conta continuam funcionando. A página de preços traz a comparação completa.
Começar leva poucos minutos: cadastre-se para criar uma conta grátis, siga o guia de configuração do MCP para o seu cliente e faça a sua primeira pergunta. A página IA e MCP resume a configuração, e a documentação da API descreve os endpoints REST por trás de cada ferramenta.
Experimente com seus próprios dados
Crie uma conta grátis e faça sua primeira requisição em menos de dois minutos. 100 requisições por mês, sem cartão de crédito.
Continue lendo
Spot, bid, ask e spread: como os preços dos metais preciosos são cotados
O que spot, bid, ask, mid e spread significam para ouro, prata, platina e paládio, como revendedores montam cotações e como obter e exibir bid/ask via API.
Preços de cobre, alumínio, zinco e petróleo via API: guia para desenvolvedores
Preços de cobre, alumínio, zinco, aço, petróleo e gás natural via API: unidades naturais, normalização, futuros de vencimento próximo, conversões e exemplos.
Como escolher uma API de preços de metais preciosos: 12 perguntas a fazer
Checklist neutro para escolher uma API de preços de metais preciosos: fontes, atualidade, histórico, unidades, bid/ask, limites, preços, segurança, termos e MCP.