Bitculator
Bitculator MCP Server

Dados cripto ao vivo para o seu assistente de IA

O servidor MCP da Bitculator expõe o mercado cripto como 19 ferramentas curadas e somente leitura sobre o Model Context Protocol, um padrão aberto. Conecte uma vez e seu assistente responde com preços ao vivo, histórico, sentimento e inteligência de exchanges.

Endpoint
https://bitculator.com/mcp
Transporte
Streamable HTTP
Autenticação
Chave MCP Bearer
Ferramentas
19 · somente leitura

MCP (Model Context Protocol) é o padrão aberto que os clientes de IA usam para alcançar ferramentas externas. Qualquer cliente que suporte servidores remotos via Streamable HTTP pode usar a Bitculator - as seções abaixo cobrem os mais populares. O MCP é um produto próprio: é cobrado no seu próprio plano, com as suas próprias chaves e a sua própria franquia mensal de chamadas de ferramentas. Todos os preços, taxas, capitalizações de mercado e supplies são retornados como decimal strings para preservar a precisão, exatamente como na REST API.

Autenticação

O servidor autentica com chaves MCP: crie uma chave com a capacidade mcp no console MCP (o plano MCP gratuito funciona - sem cartão) e envie-a como cabeçalho Bearer em cada solicitação. Chaves da Data API e de widget são rejeitadas com 401 unauthenticated.

Cabeçalho HTTP
Authorization: Bearer YOUR_API_KEY

Solicitações sem uma chave válida recebem 401 unauthenticated. Chaves são segredos - configure-as nas configurações do seu cliente ou em uma variável de ambiente, nunca em arquivos compartilhados que você comita.

Claude Code

Um único comando registra o servidor para o seu projeto (ou adicione --scope user para deixá-lo disponível em todo lugar). O Claude escolhe a ferramenta certa automaticamente quando você pergunta sobre o mercado.

terminal
claude mcp add --transport http bitculator \
    https://bitculator.com/mcp \
    --header "Authorization: Bearer YOUR_API_KEY"

Cursor

Adicione o servidor a ~/.cursor/mcp.json (global) ou a .cursor/mcp.json em um projeto. As ferramentas aparecem no agente do Cursor assim que o arquivo é salvo.

~/.cursor/mcp.json
{
  "mcpServers": {
    "bitculator": {
      "url": "https://bitculator.com/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

VS Code

Adicione o servidor a .vscode/mcp.json no seu workspace. O modo agente do GitHub Copilot lista as ferramentas da Bitculator automaticamente.

.vscode/mcp.json
{
  "servers": {
    "bitculator": {
      "type": "http",
      "url": "https://bitculator.com/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

Claude API

Construindo seu próprio app na API da Anthropic? O conector MCP alcança o servidor diretamente de uma chamada à Messages API - passe sua chave MCP da Bitculator como o authorization_token.

POST /v1/messages
curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: mcp-client-2025-11-20" \
  -d '{
    "model": "claude-opus-4-8",
    "max_tokens": 1024,
    "mcp_servers": [{
      "type": "url",
      "url": "https://bitculator.com/mcp",
      "name": "bitculator",
      "authorization_token": "YOUR_API_KEY"
    }],
    "tools": [{ "type": "mcp_toolset", "mcp_server_name": "bitculator" }],
    "messages": [{ "role": "user", "content": "How is the crypto market today?" }]
  }'

ChatGPT

O ChatGPT se conecta a servidores MCP remotos pelo developer mode:

  1. Ative o developer mode nas configurações do ChatGPT (Apps & Connectors → Advanced).
  2. Adicione um conector com a URL do servidor https://bitculator.com/mcp.
  3. A autenticação de conectores do ChatGPT é baseada em OAuth - cabeçalhos de chave de API ainda não são suportados lá, então use um cliente que aceite acesso sem autenticação ou as superfícies do Claude para acesso baseado em chave.

Um fluxo OAuth (e com ele o suporte completo aos diretórios do ChatGPT e do Claude) está no roadmap. Clientes baseados em chave - Claude Code, Cursor, VS Code, a Claude API - já funcionam hoje.

Cota e limites

O MCP é um produto autônomo com plano próprio, franquia mensal própria e slots de chave próprios - ele nunca consome a cota da sua Data API nem a de widgets.

  • Cada chamada de ferramenta gasta uma chamada da franquia mensal do seu plano MCP (Free 2.500, Starter 50.000, Pro 250.000).
  • O limite de rajada por minuto do seu plano MCP (Free 30, Starter 60, Pro 120) é aplicado ao endpoint inteiro, não apenas às chamadas de ferramentas - initialize, notifications/initialized, tools/list, resources/*, prompts/* e ping ocupam um slot cada. Uma chamada de ferramenta continua custando exatamente um: o pedido interno à Data API que ela dispara está isento da própria rajada.
  • Acima da franquia, as ferramentas retornam um erro rate_limited que informa ao assistente quando o período é redefinido. Ferramentas acima do seu nível retornam plan_required.
  • O handshake e as chamadas de descoberta não consomem nada da sua franquia mensal - só as chamadas de ferramentas consomem - mas gastam slots de rajada. Uma rejeição por rajada é um HTTP 429 no próprio pedido JSON-RPC, por isso o seu cliente reporta um erro de transporte e não um erro de ferramenta.

Frameworks de agentes

Construindo o seu próprio agente? Todos os grandes frameworks trazem um cliente MCP que se conecta via Streamable HTTP com uma chave MCP Bearer - os trechos abaixo carregam as 19 ferramentas como funções nativas.

OpenAI Agents SDK

pip install openai-agents
Python
from agents.mcp import MCPServerStreamableHttp

async with MCPServerStreamableHttp(
    name="Bitculator",
    params={"url": "https://bitculator.com/mcp",
            "headers": {"Authorization": "Bearer YOUR_API_KEY"}},
) as server:
    agent = Agent(name="analyst", mcp_servers=[server])

Vercel AI SDK

npm i @ai-sdk/mcp
TypeScript
import { createMCPClient } from '@ai-sdk/mcp';

const mcp = await createMCPClient({
  transport: {
    type: 'http',
    url: 'https://bitculator.com/mcp',
    headers: { Authorization: 'Bearer YOUR_API_KEY' },
  },
});
const tools = await mcp.tools();

LangChain

pip install langchain-mcp-adapters
Python
from langchain_mcp_adapters.client import MultiServerMCPClient

client = MultiServerMCPClient({"bitculator": {
    "transport": "http",
    "url": "https://bitculator.com/mcp",
    "headers": {"Authorization": "Bearer YOUR_API_KEY"},
}})
tools = await client.get_tools()

LlamaIndex

pip install llama-index-tools-mcp
Python
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec

client = BasicMCPClient("https://bitculator.com/mcp",
                        headers={"Authorization": "Bearer YOUR_API_KEY"})
tools = await McpToolSpec(client=client).to_tool_list_async()

Mastra

npm i @mastra/mcp
TypeScript
import { MCPClient } from '@mastra/mcp';

const mcp = new MCPClient({ servers: { bitculator: {
    url: new URL('https://bitculator.com/mcp'),
    requestInit: { headers: { Authorization: 'Bearer YOUR_API_KEY' } },
}}});
const tools = await mcp.getTools();

Semantic Kernel

pip install semantic-kernel[mcp]
Python
from semantic_kernel.connectors.mcp import MCPStreamableHttpPlugin

async with MCPStreamableHttpPlugin(
    name="Bitculator",
    url="https://bitculator.com/mcp",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
) as plugin:
    kernel.add_plugin(plugin)

Referência de ferramentas

Todas as 19 ferramentas são somente leitura. Os parâmetros espelham os endpoints correspondentes da Data API - mesma validação, mesma precisão em strings decimais - mas a restrição de plano de cada ferramenta vem do seu plano MCP.

Dados de mercado

Ferramenta

search_coins

Resolve uma moeda ou token por nome ou símbolo em texto livre para seu slug canônico, com um resumo de mercado classificado por correspondência. O ponto de entrada: todas as outras ferramentas de moedas são endereçadas por slug.

Parâmetro Tipo Descrição
query obrigatório string Busca em texto livre comparada com nomes e símbolos de moedas.
type enum Restringe as correspondências: coin ou token.
limit integer Máximo de correspondências a retornar (1–50, padrão 10).
Ferramenta

get_coin

Perfil completo de uma moeda: supplies, rank e mudanças de rank, máxima/mínima histórica e distância delas, avaliação fully-diluted, links, contratos e descrição.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da moeda, ex.: bitcoin.
Ferramenta

get_prices

Preços spot atuais para até 100 moedas em uma chamada, opcionalmente convertidos para uma moeda fiat. A forma mais barata de responder perguntas de preço - exatamente um seletor é obrigatório.

Parâmetro Tipo Descrição
slugs string Slugs de moedas separados por vírgula - o seletor preferido.
symbols string Símbolos ticker separados por vírgula; símbolos ambíguos resolvem para a correspondência de rank mais alto.
ids string Ids numéricos de moedas da Bitculator, separados por vírgula.
convert string Símbolo da moeda fiat para converter os preços, ex.: EUR. Padrão USD.
Ferramenta

get_top_movers

As maiores altas ou quedas por variação percentual nas últimas 24 horas ou 7 dias.

Parâmetro Tipo Descrição
direction obrigatório enum gainers ou losers.
interval enum Janela de variação para classificar: 24h ou 7d (padrão 24h).
limit integer Máximo de moedas a retornar (1–50, padrão 10).

Histórico

Ferramenta

get_price_history

Velas OHLCV de uma moeda em um intervalo de datas. Retenção: minutely ~8 dias, half-hourly ~3 meses, hourly ~6 meses, daily = histórico completo. Retorna as velas mais recentes da janela, da mais antiga para a mais nova.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da moeda.
interval enum Intervalo das velas: minutely, half-hourly, hourly ou daily (padrão daily).
start date Início da janela como YYYY-MM-DD; o padrão é uma janela recente adequada ao intervalo.
end date Fim da janela como YYYY-MM-DD; o padrão é agora.
limit integer Máximo de velas a retornar (1–500, padrão 90).
Ferramenta

get_historical_price

O preço de uma moeda em uma data passada específica, com fallback de até 3 dias quando o dia exato não tem dados.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da moeda.
date obrigatório date A data como YYYY-MM-DD (2009-01-01 ou posterior, não no futuro).
Ferramenta

get_global_history

Série temporal da capitalização de mercado total do mercado cripto ou do volume total. A granularidade segue o período: 24h a cada meia hora, 7d por hora, 30d e all diário.

Parâmetro Tipo Descrição
metric obrigatório enum Qual série retornar: marketcap ou volume.
period enum Janela: 24h, 7d, 30d ou all (padrão 24h).

Sentimento e global

Ferramenta

get_global_market

Retrato do mercado inteiro: capitalização de mercado total, volume total de 24h, dominância de BTC/ETH e contagens de moedas/tokens/exchanges/pares.

Esta ferramenta não recebe parâmetros.

Ferramenta

get_fear_greed

O índice de sentimento Fear & Greed para o mercado inteiro, ou para uma moeda quando um slug é passado, incluindo sub-escores dos intervalos de 7d/30d.

Parâmetro Tipo Descrição
coin string Slug opcional da moeda para uma leitura por moeda; omita para o índice de todo o mercado.
Ferramenta

get_altseason_index

O índice de altseason - se as altcoins estão superando o Bitcoin - com histórico diário opcional.

Parâmetro Tipo Descrição
days integer Dias de histórico diário a incluir (0–365; 0 retorna apenas a leitura atual).
Ferramenta

get_liquidations_summary

Os totais de liquidações de futuros de hoje com a divisão long/short e a dominância. Os dados podem ser null logo após a virada diária.

Esta ferramenta não recebe parâmetros.

Exchanges

Ferramenta

list_exchanges

Exchanges classificadas com volume de 24h, dominância de volume e contagens de pares/ativos. Também resolve nomes de exchanges para slugs.

Parâmetro Tipo Descrição
type enum Restringe a exchanges centralizadas (cex) ou descentralizadas (dex).
search string Busca em texto livre comparada com nomes de exchanges.
sort string Campos de ordenação separados por vírgula, prefixo "-" para decrescente: volume, rank, volume_dominance, change_24h, change_7d, pairs, assets.
limit integer Máximo de exchanges a retornar (1–50, padrão 10).
Ferramenta

get_exchange

Perfil completo de uma exchange: rank, volume e variações, dominância, pares e ativos listados, e links.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da exchange, ex.: binance-exchange.
Ferramenta

get_exchange_trust_score

O trust score de uma exchange (0–10) com sua decomposição completa em 13 fatores.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da exchange.
Ferramenta

get_coin_markets

Onde uma moeda é negociada: seus mercados nas exchanges com par, preço e volume de 24h, ordenados por volume.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da moeda.
exchange string Slug opcional da exchange para restringir os resultados a um único local de negociação.
instrument enum Restringe a um tipo de instrumento: spot, future, option, swap ou margin.
limit integer Máximo de mercados a retornar (1–50, padrão 10).

Análise e utilidades

Ferramenta

get_coin_technicals

O retrato técnico multi-indicador de uma moeda em uma única chamada: RSI, MACD, SMA, ADX, MFI, CCI, OBV, VWAP, volatilidade e mais, cada um com seu estado mais recente e sua pontuação.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da moeda.
Ferramenta

convert_currency

Converta um valor entre quaisquer moedas cripto e/ou fiat (até 10 destinos por chamada) usando taxas ao vivo, com precisão decimal completa.

Parâmetro Tipo Descrição
from obrigatório string Slug da moeda de origem, ex.: bitcoin ou united-states-dollar.
to obrigatório string Slugs das moedas de destino separados por vírgula, até 10.
amount number Quantidade da moeda de origem a converter (padrão 1).
Ferramenta

calculate_dca

Faça o backtest de uma estratégia de dollar-cost averaging contra o histórico real de preços: total investido, moedas acumuladas, valor atual e lucro/prejuízo.

Parâmetro Tipo Descrição
slug obrigatório string Slug canônico da moeda.
amount obrigatório number Valor em USD comprado a cada intervalo.
interval obrigatório enum Cadência de compra: daily, weekly, monthly, quarterly ou yearly.
start obrigatório date Data da primeira compra como YYYY-MM-DD (antes de hoje).
end date Data da última compra como YYYY-MM-DD; o padrão é hoje.
series boolean Inclui a série por compra (saída grande - mantenha false a menos que seja pedido).