Changelog
Todas as alterações no servidor MCP em /mcp - ferramentas, entradas, resultados, chaves e limites -, as mais recentes primeiro. O que conta como breaking change está descrito nas suas políticas.
Um 401 de /mcp agora traz WWW-Authenticate: ApiKey realm="mcp" em vez de Bearer realm="mcp", error="invalid_token", que levava alguns clientes a procurar um servidor OAuth. As chaves continuam sendo aceitas como Authorization: Bearer ou X-API-Key.
As chamadas de ferramentas bem-sucedidas retornam structuredContent ao lado do texto JSON inalterado, e tools/list publica um outputSchema para cada ferramenta cuja resposta está documentada no contrato OpenAPI. Os erros continuam sendo texto simples com isError.
tools/list retornava 15 ferramentas por página com um nextCursor, então os clientes que ignoram o cursor nunca viam get_coin_markets, get_coin_technicals, get_liquidations_summary nem calculate_dca. Agora todas as 19 ferramentas vêm em uma única página.
get_exchange e get_exchange_trust_score retornavam um erro interno para todas as exchanges desde o lançamento. Agora ambas respondem; as entradas e os campos do resultado não mudam.
Desde 6 de setembro, uma ferramenta desativada respondia server_error (HTTP 500). Agora ela volta a retornar endpoint_unavailable (HTTP 503): This endpoint is temporarily unavailable.
days era anunciado com um padrão e um mínimo de 0, mas o 0 sempre foi rejeitado. Agora é 1-365, sem padrão; omita-o para obter a leitura atual. A descrição de get_global_history agora informa o formato de cada ponto ({time, marketcap} ou {time, volume}).
Novo /.well-known/mcp/server-card.json sem autenticação, com serverInfo e as definições completas das ferramentas, em cache por uma hora, para registros que não conseguem escanear um servidor protegido por chave. Ele e /.well-known/mcp.json agora podem ser lidos a partir de outras origens (cross-origin).
/mcp agora também aceita a chave MCP como X-API-Key: YOUR_API_KEY, para clientes e gateways que reservam Authorization para o próprio login. Quando esse cabeçalho é enviado, é a única chave verificada, e um prefixo Bearer colado junto é tolerado.
As falhas de autenticação eram limitadas a 30 tentativas por minuto por IP; depois disso, todas as chaves por trás desse IP eram recusadas. Agora uma chave pode falhar 30 vezes por minuto a partir de um IP e um IP pode falhar 300 vezes, e as chaves que se autenticaram aproximadamente nos últimos 15 minutos não são bloqueadas pelo limite por IP.
get_fear_greed (a leitura principal e cada intervalo) e get_global_market (fear_greed) agora incluem index - o índice de 0-100 exibido na Bitculator - ao lado do score bruto, e as descrições das ferramentas instruem o modelo a citar index.
get_coin retornava uma avaliação totalmente diluída de 0 para moedas sem oferta máxima limitada. Agora recorre à oferta total e é null quando nenhuma das duas é conhecida.
get_top_movers agora classifica pela própria variação (antes, na prática, era pela capitalização de mercado) e os seus losers excluem as moedas paradas em 0,00. get_prices com symbols retorna uma moeda por símbolo, a ativa mais bem classificada, e get_global_market informa a dominância de BTC e ETH como null em vez de 0 quando não há capitalização de mercado.
As instruções de initialize agora dizem que as capitalizações de mercado e os volumes são números JSON (antes diziam strings decimais), a descrição de sort em list_exchanges indica o padrão real -volume, e get_exchange_trust_score informa que uma exchange sem ranking tem score e breakdown null.
O servidor está listado em /apis.json e /.well-known/api-catalog, /.well-known/mcp.json ganhou os links status e changelog, e /status.json informa um componente mcp.
Breaking change: /mcp aceita apenas chaves criadas no console MCP; chaves da Data API e de widgets recebem 401. O MCP tem os seus próprios planos Free (2.500 chamadas de ferramentas por mês), Starter (50.000) e Pro (250.000), com 2, 5 e 10 slots de chave, cobrança própria e restrições de plano próprias por ferramenta, e todas as contas começam no Free. Os erros de cota e de plano agora mencionam o plano MCP.
Cada solicitação JSON-RPC para /mcp - initialize, tools/list, ping e chamadas de ferramentas - agora conta para o limite de rajada do plano, de 30, 60 ou 120 por minuto, e ultrapassá-lo retorna HTTP 429. Apenas as chamadas de ferramentas contam para a cota mensal.
Os erros de servidor das ferramentas incluíam a mensagem de erro interna. Agora dizem server_error (HTTP 500): Internal server error.
Desde o lançamento até esta correção, todas as chamadas de ferramentas em produção retornavam server_error, porque o servidor rejeitava a sua própria solicitação interna de dados como vinda de um host não confiável.
/mcp entrou no ar via Streamable HTTP (apenas POST) com 19 ferramentas somente leitura para Claude, Cursor, VS Code e qualquer cliente MCP, de search_coins e get_coin até calculate_dca, retornando os mesmos dados da REST API. Usava as chaves, os planos e a cota da Data API, com cada chamada de ferramenta contando como uma solicitação, e /.well-known/mcp.json o descrevia.
A remoção ou renomeação de uma ferramenta ou de uma entrada é anunciada aqui com pelo menos seis meses de antecedência - veja a política de descontinuação. O server card em /.well-known/mcp.json aponta para este changelog.