Perigon MCP Server

Servidor MCP oficial para a API Perigon, fornecendo acesso a dados de notícias e mídia em tempo real.

Documentação

Perigon logo

Perigon MCP

Servidor MCP hospedado da Perigon para notícias em tempo real, entidades e monitores.

Deploy status License: Apache-2.0 MCP Registry version Listed on Smithery Transport: Streamable HTTP Documentation Try it in the playground


Início rápido

Endpoint: https://mcp.perigon.io/v1/mcp

Autenticação: Authorization: Bearer <key> — crie uma chave em perigon.io/dev/keys.

Experimente no playground (requer uma sessão autenticada no painel da Perigon). Configuração específica por cliente: dev.perigon.io/docs/mcp.

HTTP Streamable nativo (recomendado):

{
  "mcpServers": {
    "perigon": {
      "url": "https://mcp.perigon.io/v1/mcp",
      "type": "http",
      "headers": {
        "Authorization": "Bearer YOUR_PERIGON_API_KEY"
      }
    }
  }
}

mcp-remote (clientes sem HTTP nativo):

{
  "mcpServers": {
    "perigon": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote@latest",
        "https://mcp.perigon.io/v1/mcp",
        "--header",
        "Authorization: Bearer ${PERIGON_API_KEY}"
      ],
      "env": {
        "PERIGON_API_KEY": "YOUR_PERIGON_API_KEY"
      }
    }
  }
}

Claude Code:

claude mcp add --transport http perigon https://mcp.perigon.io/v1/mcp \
  --header "Authorization: Bearer YOUR_PERIGON_API_KEY"

SSE em /v1/sse existe para clientes legados. Use HTTP Streamable para novas integrações.


Escolhendo ferramentas

Adicione ?tools= à URL do MCP para limitar a sessão. ?tool= é um alias e tem precedência se ambos estiverem presentes.

https://mcp.perigon.io/v1/mcp?tools=search_news_articles,search_news_stories
https://mcp.perigon.io/v1/mcp?tools=research
https://mcp.perigon.io/v1/mcp?tools=research,create_monitor
  • Nomes de ferramentas separados por vírgula, aliases de perfil ou uma mistura.
  • O filtro cruza com o que os escopos da chave já permitem. Ele não pode expandir o acesso.
  • Omita o parâmetro, passe um valor vazio ou passe all → conjunto padrão (ferramentas opt-in permanecem desativadas).
  • Nomes desconhecidos são descartados. Se todos os nomes forem desconhecidos, o conjunto padrão é usado.
PerfilFerramentas
researchsearch_news_articles, search_news_stories, search_story_history, search_vector_news, summarize_news, search_journalists, search_sources, search_people, search_companies, search_topics, as cinco ferramentas de estatísticas, get_top_topics, get_source_by_id, get_api_access. Não inclui Wikipedia, nem os atalhos de empresa / pessoa / localização.
monitoringTodas as ferramentas de monitor (incluindo create_monitor / update_monitor) mais todas as ferramentas do Signal Insights.
platformwatchlists, create_watchlist, update_watchlist, source_groups, create_source_group, update_source_group, contact_points, article_refresh, get_api_access.
minimalsearch_news_articles, as cinco ferramentas de estatísticas, get_api_access.

get_story_stats não está em nenhum perfil. Solicite pelo nome. Ainda requer CLUSTERS no momento da chamada; uma chave sem esse escopo pode selecionar a ferramenta e depois receber um erro de permissão.

Outras ferramentas opt-in não precisam de escopo extra. Qualquer chave válida pode solicitá-las.


Ferramentas

Disponibilidade:

  • Padrão — registrada quando ?tools= é omitido (e a chave tem o escopo listado, se houver).
  • Escopo — registrada somente quando a chave tem essa permissão.
  • Opt-in — omitida do conjunto padrão. Solicite pelo nome ou perfil. O registro não é o mesmo que acesso à API.

Busca

FerramentaDisponibilidadeDescrição
search_news_articlesPadrãoBusca por palavras-chave e filtros em artigos individuais, incluindo consultas booleanas.
search_news_storiesEscopo: CLUSTERSManchetes agrupadas que reúnem artigos relacionados em uma única narrativa.
search_story_historyEscopo: CLUSTERSInstantâneos com carimbo de data/hora de como um agrupamento de histórias mudou.
search_vector_newsEscopo: VECTOR_SEARCH_NEWSBusca semântica em artigos recentes.
summarize_newsEscopo: SEARCH_SUMMARYResumo com IA dos artigos correspondentes, com citações.
search_journalistsEscopo: JOURNALISTSPerfis de jornalistas e repórteres.
search_sourcesEscopo: SOURCESPublicações e veículos de notícias.
search_peopleEscopo: PEOPLEPerfis de figuras públicas.
search_companiesEscopo: COMPANIESPerfis de empresas (domínio, ticker, setor).
search_topicsEscopo: TOPICSTaxonomia de tópicos da Perigon para filtros de tópicos exatos.
search_wikipediaEscopo: WIKIPEDIABusca por palavras-chave em páginas da Wikipedia.
search_vector_wikipediaEscopo: VECTOR_SEARCH_WIKIPEDIABusca semântica em páginas da Wikipedia.

Atalhos

Cada ferramenta localiza uma entidade e depois busca artigos recentes sobre ela.

FerramentaDisponibilidadeDescrição
get_company_newsEscopo: COMPANIESArtigos recentes sobre uma empresa localizada pelo nome.
get_person_newsEscopo: PEOPLEArtigos recentes sobre uma pessoa localizada pelo nome.
get_location_newsEscopo: LOCATIONSArtigos recentes para uma cidade, estado ou país.

Estatísticas

Sempre ativas para qualquer chave válida. Prefira estas em vez de contar resultados de busca manualmente.

FerramentaDisponibilidadeDescrição
get_avg_sentimentPadrãoSentimento médio (positivo / negativo / neutro) agrupado ao longo do tempo.
get_article_countsPadrãoVolume de publicação de artigos agrupado ao longo do tempo.
get_top_entitiesPadrãoTópicos, pessoas, empresas, cidades, jornalistas ou fontes mais mencionados.
get_top_peoplePadrãoPessoas cuja cobertura está em alta em comparação com uma linha de base.
get_top_companiesPadrãoEmpresas cuja cobertura está em alta em comparação com uma linha de base.

Acesso

FerramentaDisponibilidadeDescrição
get_api_accessPadrãoEscopos desta chave, organização, cota e comportamento de entitlement. Não conta contra a cota de solicitações. Chame uma vez por sessão, ou após um 403.

Monitores

Ferramentas de leitura são padrão. Ferramentas de escrita são opt-in porque o esquema compartilhado de monitores é grande.

FerramentaDisponibilidadeDescrição
list_monitorsPadrãoListar e filtrar monitores por UUID, nome, status ou EVENT / MENTIONS / TOPIC.
get_monitorPadrãoConfiguração completa do monitor.
get_monitor_eventsPadrãoEventos estruturados de monitores EVENT e MENTIONS.
get_monitor_newslettersPadrãoBriefings agendados, normalmente de monitores TOPIC.
get_monitor_summariesPadrãoHistórico contínuo de resumos gerados por IA do monitor.
set_monitor_statusPadrãoAtivar, pausar ou arquivar um monitor. O arquivamento não pode ser revertido pela API pública.
create_monitorOpt-inCriar um monitor DRAFT ou ACTIVE. O padrão é DRAFT.
update_monitorOpt-inAtualização parcial; campos omitidos são preservados.

Plataforma

Todas estas são opt-in. get_source_by_id e get_top_topics também estão em research. get_story_stats é somente por nome.

FerramentaDisponibilidadeDescrição
get_source_by_idOpt-inUma fonte de notícias por ID exato ou domínio.
get_top_topicsOpt-inTópicos cuja cobertura está em alta em comparação com uma linha de base.
get_story_statsOpt-in; Escopo: CLUSTERSVolume ou velocidade de publicação em nível de história ao longo do tempo.
watchlistsOpt-inListar, obter ou resolver watchlists da organização.
create_watchlist / update_watchlistOpt-inCriar ou atualizar parcialmente uma watchlist.
source_groupsOpt-inListar, obter ou resolver pacotes personalizados de grupos de fontes.
create_source_group / update_source_groupOpt-inCriar ou atualizar parcialmente um grupo de fontes.
contact_pointsOpt-inListar ou obter canais de notificação de monitores (e-mail / webhook).
article_refreshOpt-inVerificar um job de atualização ou inspecionar dados em cache para até 100 IDs de artigos. Somente leitura.

Signal Insights

Registradas para cada sessão, a menos que ?tools= as exclua. A API Insights e o backend Pokey rejeitam chamadas quando a chave não tem acesso ao Signal Insights.

O perfil monitoring inclui este conjunto. Não há perfil somente Signal Insights; passe os nomes das ferramentas se quiser apenas estas.

FerramentaDisponibilidadeDescrição
signal_insights_create_workspacePadrãoCriar um workspace. Chame uma vez no início de uma conversa.
signal_insights_search_signalsPadrãoBuscar sinais por nome ou objetivo.
signal_insights_read_signalPadrãoMetadados do sinal (classificação, contagens de esquema ou newsletter).
signal_insights_list_newslettersPadrãoTítulos e trechos de newsletter para um sinal TOPIC.
signal_insights_read_newsletterPadrãoConteúdo completo da newsletter como markdown.
signal_insights_export_eventsPadrãoExportar eventos EVENT / MENTIONS para S3. Retorna uma prévia e o caminho do arquivo.
signal_insights_execute_codePadrãoPython em um kernel IPython persistente (pandas, numpy, matplotlib).
signal_insights_preview_chartPadrãoRenderizar gráficos no visualizador interativo de gráficos.
signal_insights_shellPadrãoBash no sandbox.
signal_insights_list_filesPadrãoListar arquivos no workspace.
signal_insights_read_filePadrãoLer um arquivo do workspace.
signal_insights_write_filePadrãoEscrever um arquivo do workspace.
signal_insights_grepPadrãoBusca por regex no conteúdo dos arquivos.
signal_insights_str_replacePadrãoLocalizar e substituir uma string em um arquivo.

Prompts e recursos

Hosts que suportam prompts MCP podem invocar estes playbooks:

  • entity_deep_dive
  • narrative_trace
  • coverage_trend
  • journalist_beat_profile
  • competitive_landscape
  • spike_explainer

Recursos de referência sob demanda:

  • perigon://reference/fields — semântica dos campos de resposta
  • perigon://reference/chaining — playbooks de pesquisa entre endpoints
  • perigon://reference/entitlements — mapa de escopo-para-comportamento desta sessão
  • perigon://reference/charts — regras de formatação de gráficos do Signal Insights

Visualizadores de MCP Apps (registrados quando qualquer ferramenta do Signal Insights está ativa):

  • ui://signal-insights/chart-viewer
  • ui://signal-insights/export-viewer

Fluxo de trabalho do Signal Insights

  1. Chame signal_insights_create_workspace uma vez no início de uma conversa.
  2. Passe o ID do workspace retornado para cada ferramenta de análise posterior.
  3. Arquivos de signal_insights_execute_code e signal_insights_shell persistem nesse workspace. Exportações chegam em /home/user/workspace/artifacts/ dentro do sandbox.
  4. Após um reinício, o UUID do workspace anterior ainda é válido. O kernel é novo; artefatos exportados para S3 permanecem.

Dicas de prompting

Dê ao modelo a data atual (ou uma ferramenta de data). Alguns modelos tratam seu corte de conhecimento como "hoje" e buscam notícias desatualizadas.

Exemplos:

  • Top 5 manchetes políticas nos Estados Unidos de hoje.
  • Últimas notícias de tecnologia da Califórnia desta semana.
  • Encontre jornalistas que cobrem energia renovável e mostre seus artigos recentes.
  • Busque por Tesla e depois encontre histórias recentes sobre eles.
  • Liste meus monitores de eventos ativos e mostre os últimos eventos de um deles.
  • Crie um monitor de rascunho para saídas de executivos em semicondutores.

Registro MCP

Nome do registro: io.github.goperigon/perigon-mcp-server.

server.json é a fonte da verdade. Uma versão publicada é imutável. Aumente version em server.json e republique após qualquer alteração na listagem.


Desenvolvimento local

Este repositório usa Bun. Coloque segredos em .dev.vars.

VariávelObrigatóriaDescrição
ANTHROPIC_API_KEYSimObrigatória para todas as rotas, incluindo /v1/mcp. Também usada pelo chat do playground.
PERIGON_API_KEYPlaygroundChave padrão do playground.
POKEY_SIGNAL_INSIGHTS_BASE_URLNãoURL base do Pokey para Signal Insights. O padrão é https://api.perigon.io/pokey no Wrangler. Use http://localhost:3001 para acessar um Pokey local.

Para usar cookies do painel da Perigon com o playground, adicione isto a /etc/hosts:

127.0.0.1 local-mcp.perigon.io
bun i
bun dev
bun test

bun dev serve o worker MCP e o playground.


Contribuição e mantenedores

Abra uma issue ou pull request no GitHub para bugs, ferramentas ausentes ou casos de uso. Alguém da Perigon fará a revisão.

Mantido pela equipe da Perigon:

  • Desenvolvedor líder: Vasyl Teliman (desenvolvimento de recursos, segurança, servidor)
  • Designer líder: Galen Rutledge (desenvolvimento de recursos, manutenção contínua)
  • Desenvolvimento inicial: Islem Maboud (transporte, autenticação, deploy, playground)

Licença

Apache-2.0