A BriefPanel é um servidor MCP remoto. Conecte-o ao Cursor, ao Claude Code, ao Windsurf ou a qualquer coisa que fale o Model Context Protocol, e seu agente já pode monitorar páginas e ler o que mudou.
Esta é a referência técnica. Para uma visão geral do que a integração resolve, veja a página do MCP.
Endpoint
https://actions.briefpanel.com/mcp
- Transporte — Streamable HTTP, sem estado: uma requisição JSON-RPC por
POST, respondida com JSON. Server-Sent Events está descontinuado e não é necessário. - Versão do protocolo —
2024-11-05, anunciada no handshakeinitialize.
Um documento de descoberta é publicado em https://briefpanel.com/.well-known/mcp.json, então hosts MCP que descobrem servidores por domínio encontram o nosso sem configuração.
Autenticação
Envie uma chave pessoal de API como token Bearer:
Authorization: Bearer YOUR_BRIEFPANEL_API_KEY
Crie uma chave em Configurações → API e integrações no app (https://app.briefpanel.com/connect-agent).
As chaves começam com bp_mcp_ e a mesma chave vale para a API REST.
Uma chave ausente ou inválida devolve 401 com o cabeçalho WWW-Authenticate.
Escopos
Cada chave carrega escopos. As tools de leitura exigem read; add_source, update_source e
pause_source exigem write. Chamar uma tool para a qual a chave não tem escopo falha, em vez de
não fazer nada silenciosamente.
OAuth
Conectores personalizados do Claude.ai e do Claude Desktop, e conectores do ChatGPT, exigem OAuth. Esse fluxo está a caminho; até lá, use qualquer cliente capaz de enviar um cabeçalho Bearer com a configuração abaixo.
Tokens de acesso OAuth (bp_oat_) são vinculados ao público (audience) do recurso MCP, então
autenticam apenas chamadas MCP — não a API REST.
Configuração do cliente
A maioria dos clientes lê o bloco padrão mcpServers:
{
"mcpServers": {
"briefpanel": {
"url": "https://actions.briefpanel.com/mcp",
"headers": { "Authorization": "Bearer YOUR_BRIEFPANEL_API_KEY" }
}
}
}
No Claude Code é um comando só:
claude mcp add --transport http briefpanel https://actions.briefpanel.com/mcp \
--header "Authorization: Bearer YOUR_BRIEFPANEL_API_KEY"
O Cursor tem um link de instalação em um clique na página do MCP.
Tools
Nove tools, seis delas somente de leitura.
Em toda tool paginada, siga pagination.nextCursor enquanto pagination.hasMore for true.
Filtros podem deixar uma página vazia ou menor que limit mesmo quando ainda há resultados.
list_sources
Lista as páginas que você monitora, incluindo a configuração de monitoramento e a saúde recente de fetch.
| Argumento | Tipo | Observações |
|---|---|---|
limit |
number | Máximo de fontes retornadas, de 1 a 100. Padrão 25. |
cursor |
string | Valor opaco de pagination.nextCursor da resposta anterior. |
get_source_changes
Atualizações tipadas das entidades nas suas páginas monitoradas. Cada resultado inclui título, URL e
tipo da entidade, updateType, importance, o field canônico e valueChange; atualizações de
preço também incluem o priceDelta de conveniência.
| Argumento | Tipo | Observações |
|---|---|---|
limit |
number | Máximo de atualizações retornadas, de 1 a 100. Padrão 25. |
cursor |
string | Valor opaco de pagination.nextCursor da resposta anterior. |
since |
number ou string | Milissegundos Unix ou timestamp ISO-8601. |
importance |
string | Filtro opcional: critical, material ou minor. |
get_entry_updates
O histórico tipado de uma entidade extraída. Tem o mesmo contrato de dados do endpoint REST de atualizações por entidade, inclusive filtros e paginação por cursor.
| Argumento | Tipo | Observações |
|---|---|---|
entryId |
string | Obrigatório. ID da entidade a inspecionar. |
limit |
number | Máximo de atualizações retornadas, de 1 a 100. Padrão 25. |
cursor |
string | Valor opaco de pagination.nextCursor da resposta anterior. |
importance |
string | Filtro opcional: critical, material ou minor. |
field |
string | Filtro opcional de campo, como price ou title. |
get_entry_changes
A linha do tempo de fetch/mudança de uma entidade, incluindo se a evidência estruturada de diff está disponível.
| Argumento | Tipo | Observações |
|---|---|---|
entryId |
string | Obrigatório. ID da entidade a inspecionar. |
limit |
number | Máximo de cartões da linha do tempo, de 1 a 100. Padrão 25. |
cursor |
string | Valor opaco de pagination.nextCursor da resposta anterior. |
get_credit_balance
Seus créditos restantes. Uma verificação gasta um crédito por página que lê — a página da fonte, mais cada página de item que ela seguir. Sem argumentos.
whoami
A identidade e os escopos ligados à chave de API atual — útil para confirmar a que conta uma chave pertence. Sem argumentos.
add_source
Começa a monitorar uma nova página. Exige o escopo write. Cada verificação depois gasta um
crédito por página que ela lê.
| Argumento | Tipo | Observações |
|---|---|---|
url |
string | Obrigatório. A URL da página a monitorar. |
userPrompt |
string | Quais mudanças importam, em linguagem natural. |
monitoringFrequency |
number | Minutos entre verificações. Padrão 60, limitado entre 5 minutos e 7 dias. |
notificationsEnabled |
boolean | Se deve notificar em mudanças. Padrão false. |
Chamar de novo com a mesma URL e o mesmo userPrompt devolve a fonte existente em vez de criar uma
duplicata.
update_source
Atualiza configurações comuns de uma página monitorada. Exige o escopo write; use pause_source
para parar o monitoramento.
| Argumento | Tipo | Observações |
|---|---|---|
sourceId |
string | Obrigatório. ID da fonte a atualizar. |
name |
string ou null | Nome de exibição opcional; passe null para limpar. |
userPrompt |
string ou null | Instruções de monitoramento opcionais; passe null para limpar. |
monitoringFrequency |
number | Minutos opcionais entre verificações, limitados entre 5 minutos e 7 dias. |
notificationsEnabled |
boolean | Toggle opcional de notificações. |
updateSensitivity |
number | Sensibilidade opcional de 0 a 1. |
Forneça ao menos uma configuração além de sourceId.
pause_source
Interrompe reversivelmente o monitoramento de uma página. Exige o escopo write; não exclui a fonte
nem seu histórico. Reative o monitoramento pelo app do BriefPanel.
| Argumento | Tipo | Observações |
|---|---|---|
sourceId |
string | Obrigatório. ID da fonte a pausar. |
Lendo o histórico
O MCP é feito para conversa: use get_source_changes para um feed entre fontes e as tools de
entidade para o histórico tipado. A API REST expõe as mesmas fachadas de
leitura para clientes programáticos, além de recuperar snapshots/blobs e do contrato OpenAPI.