MCP · Documentação técnica

Documentação técnica

Para desenvolvedores e para quem for configurar manualmente: o endpoint, as ferramentas, os formatos de resposta, os ids e os limites. Se você só quer usar no seu assistente, o guia de configuração basta.

Visão geral

Endpoint
https://btc.com/api/mcp
Transporte
Streamable HTTP
Autenticação
Nenhuma
Acesso
Somente leitura
ItemValor
ProtocoloMCP, especificação 2025-11-25
TransporteStreamable HTTP. Sem estado: cada requisição recebe uma resposta JSON simples; sem fluxo SSE
Servidorbtc-museum 1.0.0
Instruções do servidorEnviadas na conexão: as cinco salas e seus ids, primeiro search e depois fetch, como citar, sem dados de mercado nem aconselhamento de investimento

Ferramentas

Há duas ferramentas, search e fetch. Os nomes e formatos de resposta seguem os requisitos da OpenAI para a pesquisa aprofundada do ChatGPT e também funcionam com outros clientes. As duas são marcadas como somente leitura (readOnlyHint); parâmetros e resultados são declarados em JSON Schema 2020-12.

Encontra itens por palavras-chave ou uma pergunta curta, em chinês ou em inglês. Retorna até 10 resultados.

Parâmetros
NomeTipoDescrição
querystringObrigatório. Palavras-chave ou uma pergunta curta, de 1 a 200 caracteres
locale"zh" | "en"Opcional. Idioma de títulos, trechos e links: zh ou en. Se omitido, o idioma da consulta: chinês se tiver caracteres chineses, senão inglês; campos sem versão em inglês voltam para o chinês
limitintegerOpcional. Quantos resultados, de 1 a 10 (padrão 10)
Retorno
CampoDescrição
results[].idId a passar para fetch
results[].titleTítulo
results[].urlURL da página do museu com âncora que leva ao item
results[].textTrecho curto sem fontes; use fetch antes de citar
hintSó aparece quando não há resultados ou quando a pergunta pede preços em tempo real, previsões de preço ou aconselhamento de investimento. Sem resultados significa que o museu não tem nada sobre o tema; não use itens sem relação como resposta

fetchsomente leitura

Lê o item completo a partir de um id retornado por search.

Parâmetros
NomeTipoDescrição
idstringObrigatório. Um id retornado por search, por exemplo narrative:events-pizza-day
locale"zh" | "en"Opcional. Idioma do título, do texto completo e do link: zh ou en (padrão en); cada campo sem versão em inglês volta para o chinês
Retorno
CampoDescrição
id · titleO id e o título
textTexto completo em Markdown
urlURL da página do museu
metadata.type · hall · locale · updatedAtTipo, sala, idioma e última atualização
metadata.sources[]Fontes citadas pelo museu, cada uma com rótulo e URL
metadata.images[]Imagens que podem ser exibidas fora do museu (de uso livre ou feitas pelo museu), com texto alternativo, crédito e licença; as demais só aparecem nas páginas do museu
metadata.license · contributorsVazio por enquanto

Se o id não existir ou o item tiver sido despublicado, o resultado vem com isError e uma breve explicação.

Exemplo de chamada

Não é preciso handshake; envie direto uma requisição JSON-RPC. O cabeçalho Accept deve listar application/json e text/event-stream:

curl -s https://btc.com/api/mcp \
  -H 'content-type: application/json' \
  -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search","arguments":{"query":"Bitcoin Pizza Day","locale":"en"}}}'

Ids e links

Todo id tem o formato tipo:slug. Os slugs são fixos em todo o museu e em todos os ambientes e não mudam depois de publicados.

TipoConteúdoO link leva a
hallSalaA página da sala; fetch também lista os ids das narrativas da sala
narrativeNarrativaO item na página da sala
exhibitPeçaA narrativa que a exibe; peças sem cartão levam à página da sala
libraryDocumento da bibliotecaA entrada na biblioteca
termTermo do glossárioA entrada no glossário
faqPergunta frequenteA pergunta na página de perguntas frequentes, aberta
postArtigo do blogA página do artigo
whitepaperSeção do whitepaperA seção no guia do whitepaper da sala Origens

Como citar o museu

  • Ao usar conteúdo do museu, inclua a URL da página retornada com ele.
  • Use apenas as imagens listadas em images do fetch; as demais só aparecem nas páginas do museu por causa das licenças.
  • Este endpoint não fornece preços em tempo real, previsões de preço nem aconselhamento de investimento.
  • Quando uma questão é controversa, o museu apresenta as diferentes visões com fontes. Mantenha essas visões ao repassar o conteúdo.

Limites e erros

QuandoResposta
Mais de 120 requisições por minuto de um mesmo IP429
Mais de 600 requisições por minuto de um mesmo cliente (por User-Agent)429
Mais de 3000 requisições por minuto no total429
Corpo da requisição acima de 64 KB413
Uma requisição de navegador cujo Origin não está na lista permitida403
GET ou DELETE (só POST é aceito; não há fluxo SSE)405
Accept não lista application/json e text/event-stream406

As plataformas de IA chamam de seus próprios servidores, então um IP pode representar muitos usuários; o limite por IP é generoso. Não faça raspagem em massa.

Versões e mudanças

Versão atual: 1.0.0. Nomes de ferramentas, parâmetros e formatos de resposta não mudarão sem motivo depois de publicados; qualquer mudança será listada aqui.

1.0.0 (2026-09-30): as ferramentas search e fetch.

Guia do museuMuseu BTC.com
O que você gostaria de saber sobre o Bitcoin?
Respostas baseadas nas exposições do museu e em fontes públicas