Evolcco Insights
Um canal único para as fontes de informação que alimentam o trabalho, normalizadas para agents consumirem.
Fontes entram, viram itens com texto íntegro, resumo, entidades e vetor, e ficam disponíveis por MCP para Claude, Codex e qualquer outro agent — e por uma tela, para gente.
Conectar um agent
https://insights.evolc.co/api/mcpclaude mcp add --transport http insights https://insights.evolc.co/api/mcpNo Claude Desktop, adicione o mesmo endereço como conector. Nos dois casos o agent abre esta aplicação no navegador: você entra, escolhe quais projects aquela credencial alcança, e pronto.
Não há chave de API para copiar nem segredo para colar em arquivo de configuração. Quem já está conectado aparece em Configurações › Conexões, com o alcance que autorizou e o rastro do que pediu.
Escopo — a única coisa que precisa ser entendida
Uma credencial pertence ao par (pessoa, cliente), não ao cliente sozinho. O Claude Code de duas pessoas são duas conexões, com alcances diferentes, porque o consentimento é de quem autorizou.
O que a credencial alcança é o conjunto de projects que essa pessoa marcou na tela de consentimento — e só aparecem lá projects dos quais ela é membro. Não é uma validação espalhada pelos endpoints: é a estrutura. O token de um cliente não consegue conter um project de outro porque esse project nunca esteve na lista que ele podia marcar.
A participação é reconferida na leitura, a cada chamada. Se a pessoa sai de um project, a credencial deixa de alcançá-lo na hora — sem depender de alguém lembrar de revogar.
O parâmetro project_id
- —Credencial com um project consentido:
project_idé opcional, fica implícito. - —Credencial com vários:
project_idé obrigatório em toda chamada.
Não há estado de sessão. Não existe “project atual” que uma chamada anterior tenha deixado ligado — em MCP, estado invisível é como se erra de project. Chame get_project_context para descobrir quais existem.
Revogar
Em Configurações › Conexões, revogar tira a credencial daquele project; os outros dela continuam. O token segue válido — o que muda é o conjunto que ele alcança, e sem nenhum project a próxima chamada leva 403. Cada membro revoga a própria conexão; o owner revoga a de qualquer membro.
As sete tools
Três de leitura, quatro de escrita — e a lista de escrita é fechada. Não existe create_item genérico, campo livre nem metadata JSON arbitrário. Um MCP que aceita escrita genérica vira o lugar onde o agent externo orquestra trabalho através da plataforma, e a complexidade passa a morar fora, onde ninguém a vê crescer.
Leitura
search_items
Busca no acervo do project.
Uma tool de busca, não quatro: a diferença entre filtro e semântica é um parâmetro, não um verbo.
- queryAssunto em linguagem natural. Com ele, ranqueia por similaridade; sem ele, ordena por data.
- categoryNome exato de uma categoria do project.
- source_idsRestringe a estas fontes.
- entitiesItens que mencionam qualquer uma destas entidades.
- from · toJanela de publicação, em ISO.
- limit1 a 100. Padrão 20.
- collapsePadrão true: uma linha por história. false devolve todas as coberturas.
- exclude_irrelevantPadrão true.
Filtros são estritos e combináveis: cada um corta, nenhum “pesa”. Resultado que não passa no filtro não aparece mais abaixo — não aparece.
Devolve o resumo de cada item, com fonte, data, categoria, entidades e clusterSize — quantas fontes assinadas cobriram a mesma história, que é o melhor sinal de relevância que existe aqui.
get_item
Texto íntegro de um item, na língua original.
Segundo passo do padrão: search_items acha pelo resumo, isto aprofunda no escolhido.
- item_idO id vindo de search_items.
Trazer texto íntegro já na busca queimaria o contexto do agent com itens que ele vai descartar.
get_project_context
Categorias, fontes assinadas, volume e data do item mais antigo.
Chame antes de montar filtros: nome de categoria precisa ser exato, e chutar devolve vazio sem dizer por quê.
Escrita
add_source
Valida uma URL de feed RSS/Atom e assina o project nela.
Devolve tier de conteúdo, itens por dia e custo mensal estimado ANTES de a assinatura valer.
- urlURL do feed RSS ou Atom.
- propose_categoriesPropõe categorias novas a partir do feed.
set_category
Move um item para outra categoria do project.
Marca a correção como manual: nenhum job de reclassificação a atropela depois.
- item_id
- category_idnull remove a categoria.
set_feedback
Marca um item como útil ou irrelevante.
Item irrelevante some das buscas do project por padrão. É filtro, não peso de ranking.
- item_id
- feedback"util", "irrelevante" ou null.
mark_used
Registra que o item virou material.
Fecha o ciclo, e é metade do cálculo de ROI: custo do project ÷ itens que viraram material.
- item_id
- noteO que foi produzido a partir dele.
Um agent que escreve a partir de cinco itens deveria marcar os cinco. Sem isso, o custo do acervo aparece sem o outro lado da conta.
Erros
- 401Token ausente, inválido, expirado, ou de outro emissor.
- 403Token válido, mas nenhum project consentido — ou a pessoa saiu de todos. Reautorize a conexão.
- erro de toolproject_id fora do escopo da credencial, ou ausente quando há mais de um project consentido.
- item não encontradoO item não existe, ou existe e não pertence a este project.
A última linha é deliberada: um item de outro project responde igual a um item inexistente. Distinguir os dois confirmaria a existência de conteúdo fora do escopo da credencial.
O que fica registrado
Toda chamada é registrada — tool, argumentos, quantidade de resultados, duração e erro — e aparece para os membros do project em Configurações › Conexões. Os argumentos entram inteiros, porque é neles que está a pergunta que o agent fez.
Uma credencial que alcança o acervo sem deixar rastro é uma credencial em que não dá para confiar. E o registro nunca derruba a resposta: se o banco falhar na hora de gravar o log, o que se perde é o log, não a chamada.
Estado operacional público, sem nada de acervo: /api/health.