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 MCP
Servidor MCP hospedado da Perigon para notícias em tempo real, entidades e monitores.
- 🚀 Início rápido
- 🔧 Escolhendo ferramentas
- 🛠️ Ferramentas
- 📚 Prompts e recursos
- 📊 Fluxo de trabalho do Signal Insights
- 💡 Dicas de prompting
- 📦 Registro MCP
- 💻 Desenvolvimento local
- 👥 Contribuição e mantenedores
- ⚖️ Licença
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.
| Perfil | Ferramentas |
|---|---|
research | search_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. |
monitoring | Todas as ferramentas de monitor (incluindo create_monitor / update_monitor) mais todas as ferramentas do Signal Insights. |
platform | watchlists, create_watchlist, update_watchlist, source_groups, create_source_group, update_source_group, contact_points, article_refresh, get_api_access. |
minimal | search_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
| Ferramenta | Disponibilidade | Descrição |
|---|---|---|
search_news_articles | Padrão | Busca por palavras-chave e filtros em artigos individuais, incluindo consultas booleanas. |
search_news_stories | Escopo: CLUSTERS | Manchetes agrupadas que reúnem artigos relacionados em uma única narrativa. |
search_story_history | Escopo: CLUSTERS | Instantâneos com carimbo de data/hora de como um agrupamento de histórias mudou. |
search_vector_news | Escopo: VECTOR_SEARCH_NEWS | Busca semântica em artigos recentes. |
summarize_news | Escopo: SEARCH_SUMMARY | Resumo com IA dos artigos correspondentes, com citações. |
search_journalists | Escopo: JOURNALISTS | Perfis de jornalistas e repórteres. |
search_sources | Escopo: SOURCES | Publicações e veículos de notícias. |
search_people | Escopo: PEOPLE | Perfis de figuras públicas. |
search_companies | Escopo: COMPANIES | Perfis de empresas (domínio, ticker, setor). |
search_topics | Escopo: TOPICS | Taxonomia de tópicos da Perigon para filtros de tópicos exatos. |
search_wikipedia | Escopo: WIKIPEDIA | Busca por palavras-chave em páginas da Wikipedia. |
search_vector_wikipedia | Escopo: VECTOR_SEARCH_WIKIPEDIA | Busca semântica em páginas da Wikipedia. |
Atalhos
Cada ferramenta localiza uma entidade e depois busca artigos recentes sobre ela.
| Ferramenta | Disponibilidade | Descrição |
|---|---|---|
get_company_news | Escopo: COMPANIES | Artigos recentes sobre uma empresa localizada pelo nome. |
get_person_news | Escopo: PEOPLE | Artigos recentes sobre uma pessoa localizada pelo nome. |
get_location_news | Escopo: LOCATIONS | Artigos 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.
| Ferramenta | Disponibilidade | Descrição |
|---|---|---|
get_avg_sentiment | Padrão | Sentimento médio (positivo / negativo / neutro) agrupado ao longo do tempo. |
get_article_counts | Padrão | Volume de publicação de artigos agrupado ao longo do tempo. |
get_top_entities | Padrão | Tópicos, pessoas, empresas, cidades, jornalistas ou fontes mais mencionados. |
get_top_people | Padrão | Pessoas cuja cobertura está em alta em comparação com uma linha de base. |
get_top_companies | Padrão | Empresas cuja cobertura está em alta em comparação com uma linha de base. |
Acesso
| Ferramenta | Disponibilidade | Descrição |
|---|---|---|
get_api_access | Padrão | Escopos 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.
| Ferramenta | Disponibilidade | Descrição |
|---|---|---|
list_monitors | Padrão | Listar e filtrar monitores por UUID, nome, status ou EVENT / MENTIONS / TOPIC. |
get_monitor | Padrão | Configuração completa do monitor. |
get_monitor_events | Padrão | Eventos estruturados de monitores EVENT e MENTIONS. |
get_monitor_newsletters | Padrão | Briefings agendados, normalmente de monitores TOPIC. |
get_monitor_summaries | Padrão | Histórico contínuo de resumos gerados por IA do monitor. |
set_monitor_status | Padrão | Ativar, pausar ou arquivar um monitor. O arquivamento não pode ser revertido pela API pública. |
create_monitor | Opt-in | Criar um monitor DRAFT ou ACTIVE. O padrão é DRAFT. |
update_monitor | Opt-in | Atualizaçã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.
| Ferramenta | Disponibilidade | Descrição |
|---|---|---|
get_source_by_id | Opt-in | Uma fonte de notícias por ID exato ou domínio. |
get_top_topics | Opt-in | Tópicos cuja cobertura está em alta em comparação com uma linha de base. |
get_story_stats | Opt-in; Escopo: CLUSTERS | Volume ou velocidade de publicação em nível de história ao longo do tempo. |
watchlists | Opt-in | Listar, obter ou resolver watchlists da organização. |
create_watchlist / update_watchlist | Opt-in | Criar ou atualizar parcialmente uma watchlist. |
source_groups | Opt-in | Listar, obter ou resolver pacotes personalizados de grupos de fontes. |
create_source_group / update_source_group | Opt-in | Criar ou atualizar parcialmente um grupo de fontes. |
contact_points | Opt-in | Listar ou obter canais de notificação de monitores (e-mail / webhook). |
article_refresh | Opt-in | Verificar 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.
| Ferramenta | Disponibilidade | Descrição |
|---|---|---|
signal_insights_create_workspace | Padrão | Criar um workspace. Chame uma vez no início de uma conversa. |
signal_insights_search_signals | Padrão | Buscar sinais por nome ou objetivo. |
signal_insights_read_signal | Padrão | Metadados do sinal (classificação, contagens de esquema ou newsletter). |
signal_insights_list_newsletters | Padrão | Títulos e trechos de newsletter para um sinal TOPIC. |
signal_insights_read_newsletter | Padrão | Conteúdo completo da newsletter como markdown. |
signal_insights_export_events | Padrão | Exportar eventos EVENT / MENTIONS para S3. Retorna uma prévia e o caminho do arquivo. |
signal_insights_execute_code | Padrão | Python em um kernel IPython persistente (pandas, numpy, matplotlib). |
signal_insights_preview_chart | Padrão | Renderizar gráficos no visualizador interativo de gráficos. |
signal_insights_shell | Padrão | Bash no sandbox. |
signal_insights_list_files | Padrão | Listar arquivos no workspace. |
signal_insights_read_file | Padrão | Ler um arquivo do workspace. |
signal_insights_write_file | Padrão | Escrever um arquivo do workspace. |
signal_insights_grep | Padrão | Busca por regex no conteúdo dos arquivos. |
signal_insights_str_replace | Padrão | Localizar e substituir uma string em um arquivo. |
Prompts e recursos
Hosts que suportam prompts MCP podem invocar estes playbooks:
entity_deep_divenarrative_tracecoverage_trendjournalist_beat_profilecompetitive_landscapespike_explainer
Recursos de referência sob demanda:
perigon://reference/fields— semântica dos campos de respostaperigon://reference/chaining— playbooks de pesquisa entre endpointsperigon://reference/entitlements— mapa de escopo-para-comportamento desta sessãoperigon://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-viewerui://signal-insights/export-viewer
Fluxo de trabalho do Signal Insights
- Chame
signal_insights_create_workspaceuma vez no início de uma conversa. - Passe o ID do workspace retornado para cada ferramenta de análise posterior.
- Arquivos de
signal_insights_execute_codeesignal_insights_shellpersistem nesse workspace. Exportações chegam em/home/user/workspace/artifacts/dentro do sandbox. - 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ável | Obrigatória | Descrição |
|---|---|---|
ANTHROPIC_API_KEY | Sim | Obrigatória para todas as rotas, incluindo /v1/mcp. Também usada pelo chat do playground. |
PERIGON_API_KEY | Playground | Chave padrão do playground. |
POKEY_SIGNAL_INSIGHTS_BASE_URL | Não | URL 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)