Agentled MCP Server
Orquestração de fluxos de trabalho nativa em IA com memória de longo prazo. Mais de 100 integrações através de um sistema de crédito único. 32 ferramentas MCP para construir e executar fluxos de trabalho empresariais inteligentes — enriquecimento de leads, publicação de conteúdo, pesquisa de empresas, produção de mídia. Knowledge Graph que aprende entre execuções. Funciona com Claude, Codex, Cursor, Windsurf.
Documentação
@agentled/mcp-server
O mecanismo de automação construído para agentes de IA. Orquestração inteligente de fluxos de trabalho de IA com memória de longo prazo, mais de 100 integrações e créditos unificados.
O que é o Agentled?
Agentled é o mecanismo de automação construído para agentes de IA. Ele dá ao Claude, Codex, Cursor, Windsurf e qualquer cliente compatível com MCP acesso direto à orquestração inteligente de fluxos de trabalho, memória de longo prazo e mais de 100 integrações.
Três coisas o tornam diferente:
🧠 Memória de Longo Prazo — Um Knowledge Graph integrado armazena insights entre execuções de fluxos de trabalho. Seus agentes ficam mais inteligentes com o tempo — eles lembram pesquisas passadas, pontuações de leads, desempenho de conteúdo e contexto de negócios.
⚡ Créditos Unificados — Uma chave de API, um sistema de créditos, mais de 100 serviços. Sem necessidade de se inscrever separadamente em LinkedIn, e-mail, scraping, modelos de IA ou geração de vídeo. Conecte uma vez, use tudo.
🎯 Orquestração Inteligente — A IA raciocina em cada etapa. Fluxos de trabalho não são apenas "se isso, então aquilo" — eles entendem contexto, tomam decisões e se adaptam aos resultados.
Veja em ação
$ agentled create "Outbound to fintech CTOs in Europe"
Loading workspace context from Knowledge Graph...
✦ ICP loaded ✦ 3 prior campaigns ✦ 847 contacts in KG
Creating campaign with 3 workflows...
━━ Workflow 1: Prospect Research linkedin · hunter · clearbit
✓ LinkedIn: CTO + fintech + EU → 189 profiles
✓ Enriched via Hunter + Clearbit → 156 matched
✓ ICP scoring → 43 high-intent leads
━━ Workflow 2: Signal Detection web-scraper · crunchbase
✓ Job postings → 12 hiring devops
✓ Crunchbase → 8 recently funded
✓ Cross-match: hiring + funded → 5 hot leads
━━ Workflow 3: Outreach email · linkedin · kg
✓ Personalized emails from context
✓ LinkedIn requests with custom notes
✓ 43 leads saved to Knowledge Graph
Campaign saved. Scheduled: every 48h
Credits used: 720
→ https://www.agentled.app/your-team/fintech-cto-outbound
Um prompt. Três fluxos de trabalho. Enriquecimento de LinkedIn, busca de e-mails, pontuação por IA, alcance multicanal — tudo orquestrado, tudo armazenado no Knowledge Graph para a próxima execução.
Início Rápido
claude mcp add --transport stdio --scope user agentled \
-e AGENTLED_API_KEY=wsk_... \
-- npx -y @agentled/mcp-server
--scope user registra o servidor na sua configuração MCP de usuário para que ele carregue em todos os projetos (não apenas no repositório onde você executou o comando). Use um nome de servidor distinto (ex.: agentled_my_workspace) se você adicionar vários workspaces. Para configuração compartilhada em equipe no git, use --scope project e .mcp.json em vez disso (Escopos MCP do Claude Code).
Plugin do Claude Code (instalação em um passo)
Prefira o plugin se quiser o servidor MCP e a skill do Agentled instalados juntos. No Claude Code:
/plugin marketplace add Agentled/mcp-server
/plugin install agentled@agentled
Em seguida, defina sua chave de API no shell a partir do qual o Claude Code roda:
export AGENTLED_API_KEY=wsk_...
O plugin empacota a skill agentled (orientação para criação de fluxos de trabalho, agentled:agentled com namespace) e inicia automaticamente o servidor MCP via npx -y @agentled/mcp-server. O mesmo diretório do plugin também contém o manifesto do Codex (.codex-plugin/) e os ganchos de ciclo de vida do Codex — um único pacote, ambos os hosts.
Para o Codex, o pacote de ganchos atua como orientação dentro da sessão em torno do loop CLI/MCP:
o início da sessão explica a divisão do loop de negócios Agentled/Codex, os ganchos de prompt/ferramenta
adicionam orientação por turno quando aparecem necessidades do cliente, prioridades, falhas ou lacunas de produto,
e os ganchos de parada incentivam a transferência de implementação a incluir prontidão,
validação, efeitos colaterais e próxima decisão. Os ganchos não armazenam feedback, não chamam
APIs do Agentled, não executam automações, não gastam créditos e não realizam
gravações de cliente/workspace. No Codex, execute /hooks após instalar ou alterar o plugin para que as
definições de gancho locais sejam revisadas e confiáveis antes de serem executadas.
Use automações do Codex para cadência de FDE fora do workspace, como acompanhamento
de e-mail Outlook/cliente, respostas de fornecedores, verificações de repositório/build e revisões semanais de operadores.
Use rotinas do Agentled para verificações de workspace/runtime do Agentled, como saúde de
fluxos de trabalho, saúde de rotinas, revisão de execução, resumos de workspace e operações
de agentes gerenciados. Use submit_feedback_to_agentled ou agentled feedback submit quando
o usuário quiser explicitamente que o feedback de produto seja capturado.
Escolha um caminho de instalação, não ambos. Se você executou
claude mcp add agentled ...ou--setup-skillsanteriormente, remova-os antes (ou em vez de) instalar o plugin — caso contrário, você terá dois processos idênticos de servidor MCP e a skill registrada duas vezes. Limpeza:claude mcp remove agentlede exclua.claude/skills/agentled/(ou~/.claude/skills/agentled/).--setup-skillsagora detecta um plugin instalado e se recusa a registrar duas vezes, a menos que você passe--force.
Para desenvolver o plugin localmente:
claude --plugin-dir ./plugins/agentled # load from source
claude plugin validate ./plugins/agentled # check manifest + structure
plugins/agentled/skills/é um espelho gerado deskills/(sincronizado porpublish.sh) — editeskills/agentled/SKILL.md, nunca o espelho.
Desenvolvimento local
Use o entrypoint local construído quando quiser testar alterações não publicadas em um
app local. npx -y @agentled/mcp-server sempre usa o pacote npm publicado mais recente.
cd agentled-mcp-server
npm run build
claude mcp add --transport stdio agentled_local \
--env AGENTLED_API_KEY=wsk_... \
--env AGENTLED_URL=http://localhost:8080 \
-- node /absolute/path/to/agentsled-front/agentled-mcp-server/dist/index.js
Obtendo sua chave de API
- Cadastre-se em agentled.app
- Abra Workspace Settings > Developer
- Gere uma nova chave de API (começa com
wsk_)
Por que Agentled MCP?
Uma Chave de API. Um Sistema de Créditos. Mais de 100 Serviços.
Sem necessidade de se inscrever separadamente em APIs do LinkedIn, serviços de e-mail, scrapers web, geradores de vídeo ou modelos de IA. O Agentled lida com todas as integrações por meio de um único sistema de créditos.
| Capacidade | Créditos | Sem Agentled |
|---|---|---|
| Enriquecimento de empresas no LinkedIn | 50 | API do LinkedIn (US$ 99/mês+) |
| Busca e verificação de e-mails | 5 | Hunter.io (US$ 49/mês) |
| Análise de IA (Claude/GPT/Gemini) | 10-30 | Várias chaves de API + cobrança |
| Web scraping | 3-10 | Conta Apify (US$ 49/mês+) |
| Geração de imagens | 30 | Assinatura DALL-E/Midjourney |
| Geração de vídeo (cena de 8s) | 300 | RunwayML (US$ 15/mês+) |
| Texto para fala | 60 | ElevenLabs (US$ 22/mês+) |
| Armazenamento no Knowledge Graph | 1-2 | Infraestrutura personalizada |
| Sincronização com CRM (Affinity, HubSpot) | 5-10 | API do CRM + middleware |
Fluxos de Trabalho Que Aprendem
Outras ferramentas de automação começam do zero a cada execução. O Knowledge Graph do Agentled lembra entre execuções — o que funcionou, o que não funcionou, o que os humanos corrigiram. Fluxos de trabalho de pontuação podem usar resumos compactos de scoring_profile em nível de linha e recuperação de memória de pontuação limitada, para que cada execução se acumule na anterior sem despejar histórico bruto nos prompts.
Run 1: Investor scoring → 62% accuracy (cold start)
Run 5: → 78% (learning from IC feedback)
Run 12: → 89% (compound learning from outcomes, zero manual tuning)
Orquestração Inteligente
Diferente de ferramentas de gatilho e ação, os fluxos de trabalho do Agentled têm raciocínio de IA em cada etapa. Suporte a múltiplos modelos (Claude, GPT-4, Gemini, Mistral, DeepSeek, Moonshot), execução adaptativa e portões de aprovação com humano no loop quando necessário.
Equipes de Agentes
As Equipes de Agentes permitem executar vários especialistas de IA em uma única etapa do fluxo de trabalho. Escolha um preset e descreva o que você precisa — a equipe cuida da coordenação, delegação e síntese.
"Add an Agent Team step that researches the company and produces an investment memo"
Seis presets integrados cobrem os padrões mais comuns:
| Preset | O que faz |
|---|---|
research-and-summarize | Especialistas reúnem informações, um sintetiza um resumo |
analyze-and-recommend | Vários analistas avaliam opções, produzem uma recomendação classificada |
generate-then-review | Um gerador cria o conteúdo, revisores criticam e refinam |
compare-options | Especialistas defendem opções concorrentes, o coordenador arbitra |
investigate-in-parallel | Especialistas independentes exploram diferentes ângulos simultaneamente |
review-and-improve | Revisores encontram problemas, um editor aplica melhorias |
Ao criar etapas de Equipe de Agentes via MCP, inclua metadados de preset para que a etapa abra corretamente no builder:
{
"id": "analyze",
"type": "agentOrchestrator",
"name": "Agent Team",
"orchestratorConfig": {
"pattern": "supervisor",
"workers": [
{ "id": "researcher", "name": "Researcher", "systemPrompt": "Research {{input.company_url}} — team, funding, market position" },
{ "id": "analyst", "name": "Analyst", "systemPrompt": "Analyse the research. Identify risks and growth signals." }
]
},
"metadata": {
"agentTeamPreset": "research-and-summarize",
"agentTeamMode": "simple",
"agentTeamUxVersion": 1
},
"next": { "stepId": "milestone" }
}
Etapas existentes criadas com orchestratorConfig bruto e sem metadados continuam funcionando — elas abrem no modo avançado no builder sem erros.
Semântica de Analytics vs ROI
Ao descrever resultados de fluxos de trabalho, mantenha estes termos separados:
pipeline.analyticsConfig= métricas de negócio (estatísticas de resultado de execução mostradas nos cartões/gráficos de Business Metrics).pipeline.metadata.roi= premissas/consolidações de ROI (tempo economizado e estimativas de custo-valor).
Se você atualizar um sem o outro, nomeie exatamente o que mudou (ex.: "métricas de negócio configuradas" vs "premissas de ROI configuradas").
Guarda de paridade de CLI
O repositório inclui uma guarda de paridade automatizada para que as adições de ferramentas MCP não se afastem silenciosamente da superfície da CLI.
- Teste:
__tests__/cli/cli-mcp-parity.test.ts - Documentação:
docs/CLI_MCP_PARITY.md
Execute com:
yarn test:node -- cli-mcp-parity.test.ts
O Que Você Pode Construir?
Enriquecimento de Leads e Automação de Vendas
"Find fintech CTOs in Europe, enrich via LinkedIn + Hunter, score by ICP fit,
draft personalized outreach, save everything to the Knowledge Graph"
Produção de Conteúdo e Mídia
"Scrape trending topics in our niche, generate 5 LinkedIn posts with AI,
create thumbnail images, schedule publishing for the week"
Pesquisa de Empresas e Inteligência
"Research this company from its URL — team, funding, market position, competitors.
Generate an investment memo. Store in KG for future reference."
Correspondência de Investidores de VC (estudo de caso real)
"Match this startup against our 2,000+ investor database. Score by sector focus,
stage preference, check size, and portfolio synergy. Compare with last round's outcomes."
Mais de 3.000 perfis processados. Relatórios prontos para IC. Aprendizado de previsão vs resultado — a precisão foi de 62% para 89% em 12 execuções sem ajuste manual.
Skills e Integrações Integradas
Produção de Mídia: Geração de vídeo, geração de imagens, texto para fala, legendas automáticas, montagem de mídia
Inteligência de IA: IA multimodelo (Claude, GPT-4, Gemini, Mistral, DeepSeek, Moonshot, xAI), Knowledge Graph, loops de feedback, pontuação e análise
Dados e Integração: LinkedIn (busca, enriquecimento, postagem), e-mail (envio, personalização), web scraping, publicação em redes sociais, sincronização de CRM, análise de documentos, OCR
Ferramentas Disponíveis
Guias operacionais de casos de uso
Quando o trabalho começa a partir de um ID de fluxo de trabalho existente, chame get_workflow primeiro e
inspecione useCaseContext. Em seguida, chame get_use_case com a chave retornada ou o
ID do grafo do fluxo de trabalho, e leia qualquer operatingGuides antes de responder
perguntas específicas do fluxo de trabalho, executar backfills ou editar configuração ativa. Avisos
de guia ausente significam que o README operacional ainda não está anexado e o contexto está
incompleto.
Quando o trabalho começa a partir da meta de negócios de um usuário em vez de um fluxo de trabalho existente,
use Como Construir Casos de Uso a Partir de Metas de Usuário.
Ele cobre o ciclo de vida do agente externo, desde o resultado de chat limitado até o estado
de texto/lista do KG, WorkspaceUseCase, fluxos de trabalho, filas de aprovação e atualizações do resumo inicial.
Fluxos de Trabalho
| Ferramenta | Descrição |
|---|---|
list_workflows | Lista todos os fluxos de trabalho no workspace |
get_workflow | Obtém a definição completa do fluxo de trabalho por ID, incluindo useCaseContext quando vinculado |
get_workflow_credits | Obtém o uso de créditos do fluxo de trabalho derivado do ledger, rotulado por período; opte pelos direcionadores de custo com includeCostDrivers |
create_workflow | Cria um novo fluxo de trabalho a partir de JSON de pipeline |
update_workflow | Atualiza um fluxo de trabalho existente (escalares de nível superior; para contexto/metadados prefira update_workflow_context) |
update_workflow_context | Análogo em nível de fluxo de trabalho de update_step — três verbos explícitos (updates / replace / unset) em caminhos de context.* e metadata.*, retorna diff + warnings |
add_step | Adiciona uma etapa com posicionamento automático e reencaminhamento de próximo ponteiro |
update_step | Mescla profundamente atualizações em uma única etapa por ID |
remove_step | Remove uma etapa com reencaminhamento automático de próximo ponteiro |
delete_workflow | Exclui permanentemente um fluxo de trabalho |
validate_workflow | Valida a estrutura do pipeline, retorna erros por etapa |
publish_workflow | Altera o status do fluxo de trabalho (draft, live, paused, archived) |
export_workflow | Exporta um fluxo de trabalho como JSON portátil |
import_workflow | Importa um fluxo de trabalho de JSON exportado |
Links de Formulário Público
Os links de formulário público são a superfície de entrada externa para fluxos de trabalho com
campos context.executionInputConfig. Use-os quando pessoas fora do
workspace precisarem enviar um formulário de fluxo de trabalho sem fazer login: formulários
de leads recebidos, envios de pitch decks, formulários de indicação, triagem de suporte, questionários
de avaliação ou qualquer fluxo de trabalho cuja primeira etapa seja um gatilho manual/de entrada.
Não use um link de formulário público para fluxos de trabalho filhos internos. Fluxos de trabalho filhos
devem usar context.executionInputConfig.internal: true e ser chamados a partir de
outro fluxo de trabalho com agentled.call-workflow.
| Ferramenta | Descrição |
|---|---|
list_public_form_links | Lista os links de formulário público existentes para um fluxo de trabalho |
create_public_form_link | Cria e ativa um link de formulário público |
update_public_form_link | Ativa/desativa um link ou atualiza limites, expiração, compartilhamento automático e texto de agradecimento. Para revogar o acesso externo, defina enabled: false. |
A exclusão é intencionalmente não exposta via API externa ou MCP. Para revogar um link de formulário público, chame
update_public_form_linkcomenabled: false. A exclusão permanente exige um membro autenticado do workspace agindo pela UI — operações destrutivas na superfície de links de formulário não são concedidas à chave de API pública.
Fluxo típico do agente:
1. get_workflow({ workflowId })
2. Confirm context.executionInputConfig exists and is not internal.
3. list_public_form_links({ workflowId })
4. If none exists, create_public_form_link({ workflowId, enabled: true })
5. Return the publicUrl to the user.
A URL pública é /en/forms/{formLinkId}. Ao enviar, o Agentled valida o
link do formulário, inicia o fluxo de trabalho com o input enviado, registra um
PublicFormSubmission e incrementa submissionCount. Configurações opcionais:
Tradutor de Markdown
Aqui está a tradução do documento, preservando todos os espaços reservados e a estrutura.
enabled: desabilitar sem excluir o link.expiresAt: expiração em datetime ISO.submissionLimit: máximo de envios aceitos.autoShare: quando verdadeiro, a página pública de status do formulário pode mostrar resultados gerados após a conclusão. Use isso somente quando a saída do workflow for segura para o remetente ver.shareExpiresInDays: expiração para links de resultados compartilhados automaticamente.successMessage: mensagem de agradecimento personalizada após o envio.
Workflows Somente Internos
Marque um workflow como filho/sub-workflow que só é executado via agentled.call-workflow a partir de um orquestrador definindo context.executionInputConfig.internal: true. A interface oculta o botão Executar e substitui o formulário de execução manual por um banner informativo. As entradas ainda são validadas e passadas pelos orquestradores via executionInputData exatamente como antes — isso é uma proteção de UI, não uma restrição de runtime.
Use para qualquer workflow cuja meta/descrição comece com "Sub-workflow interno", que termine em uma etapa return, ou que você pretenda invocar apenas de outro workflow.
{
"context": {
"executionInputConfig": {
"title": "Save Sourced Candidates",
"internal": true,
"fields": [{ "name": "candidates", "label": "Candidates", "type": "text", "required": true }]
}
}
}
Inverta o sinalizador via update_workflow_context — busque primeiro, mescle localmente, substitua no nível pai (a armadilha de ordem de mesclagem de update_step também se aplica aqui — veja docs/MCP_STEP_EDITING.md):
// 1. get_workflow → read context.executionInputConfig
// 2. local: { ...executionInputConfig, internal: true }
// 3.
{
"updates": { "context": { "executionInputConfig": {...full merged value...} } },
"replace": ["context.executionInputConfig"]
}
Editando workflows existentes: modelo de mesclagem
update_step aceita três operações explícitas na mesma chamada. Pelo menos uma deve estar não vazia.
updates— patch parcial de etapa, mesclado profundamente UM NÍVEL. Escalares de nível superior são substituídos; objetos aninhados (pipelineStepPrompt,stepInputData, etc.) têm suas chaves diretas mescladas com as chaves do valor armazenado. Chaves aninhadas dois níveis são substituídas como unidade, não mescladas.replace: string[]— caminhos de ponto cujos valores deupdatessão atribuídos por completo, pulando a mesclagem profunda. Use para campos em formato de dicionário onde as chaves são dados do usuário (não configuração) — aplicar patch em uma chave interna apenas comupdatessilenciosamente apaga as outras.unset: string[]— caminhos de ponto para excluir. Cada caminho deve existir atualmente na etapa (validado contra o original).
Leia antes de editar campos de dicionário. Antes de alterar stepInputData.fieldUpdates, pipelineStepPrompt.responseStructure, knowledgeSync.fieldMapping ou qualquer campo onde as chaves são dados do usuário: chame get_step({ workflowId, stepId }) (~1KB), modifique localmente, envie o novo objeto completo de volta via replace[]. Isso evita a armadilha de "aplicou patch em uma chave, apagou as outras silenciosamente".
Diff na resposta. Toda chamada update_step retorna diff: { addedPaths, changedPaths, removedPaths } e warnings[]. Se a mesclagem remover silenciosamente ≥6 campos sem um unset explícito, um aviso é disparado.
O que usar onde:
| Caminho / campo | API | Como editar | Notas |
|---|---|---|---|
name, goal, description, pipelineStepPrompt.template, creditCost | update_step | updates | Escalar comum; seguro enviar sozinho. |
next, loopConfig, entryConditions (bloco completo) | update_step | updates | Config aninhada direta; enviar o novo valor por completo é aceitável. |
tools, integrations | update_step | updates | Arrays substituem por completo por design. Para anexar, busque com get_step, faça splice localmente, envie o novo array completo. |
stepInputData.fieldUpdates | update_step | get_step → updates (dict completo) + replace: ["stepInputData.fieldUpdates"] | Chaves são dados do usuário; a mesclagem padrão de um nível substitui este dicionário e pode descartar mapeamentos irmãos. |
pipelineStepPrompt.responseStructure | update_step | get_step → updates + replace: ["pipelineStepPrompt.responseStructure"] | Dicionário de formato de saída; trate como dados do usuário. |
knowledgeSync.fieldMapping | update_step | get_step → updates + replace: ["knowledgeSync.fieldMapping"] | Dicionário origem→destino; mesma armadilha que fieldUpdates. |
renderer.config (quando preservar chaves irmãs importa) | update_step | updates (renderer.config completo) + replace: ["renderer.config"] | ⚠ replace: ["renderer.config.layout"] NÃO protege os irmãos de renderer.config — a mesclagem profunda de um nível roda primeiro em updates.renderer. Substitua no nível pai. |
entryConditions.criteria (quando preservar o resto de entryConditions) | update_step | updates: { entryConditions: {...full block...} } | Envie o bloco entryConditions completo; a mesclagem de um nível já faz o certo para filhos diretos. |
| Removendo uma entrada de etapa ou campo obsoleto | update_step | unset: ["stepInputData.oldKey"] | Maneira mais limpa de remover. O caminho deve existir no original. |
context.inputPages, context.outputPages, context.executionInputConfig | update_workflow_context | Três verbos explícitos (updates / replace / unset) em caminhos relativos ao workflow. Compatibilidade: { contextKey, value } ainda aceito para substituição por completo de cada chave. | Nível de workflow, não de etapa. update_step não alcança context.* e vice-versa. |
metadata | update_workflow_context | Mesmos três verbos em caminhos metadata.* | Nível de workflow. Metadados ignoram a captura do rascunho — mesmo em workflows ativos escrevem direto na linha Pipeline, imediatamente. |
Resumos executivos para grupos de workflows. Quando um usuário pedir para salvar um resumo de um workflow, grupo de workflows, cluster ou cartão inicial, escreva em metadata.executiveSummary com update_workflow_context. Não armazene como texto de Knowledge a menos que o usuário peça explicitamente uma nota reutilizável. Para um grupo, escreva exatamente uma vez no pipeline dono: prefira metadata.workflowGraph.role === "orchestrator", caso contrário use o pipeline com menor metadata.workflowGraph.order. Mantenha o corpo em 1-2 frases curtas, inclua contagens/taxas concretas e o período de relatório quando disponível, e defina author para o agente do workspace ativo, não para a ferramenta externa/agente de codificação.
{
"workflowId": "2e1cdd60-2fcf-441a-856f-583ae76b38a5",
"updates": {
"metadata": {
"executiveSummary": {
"body": "Startup Outreach sent 46 founder emails for the reporting period, with 28 opens and 9 clicks: a 60.9% open rate, 19.6% click rate, and 32.1% click-to-open rate.",
"bullets": ["Clicks: 6 UTM Pitch Night, 2 plain Pitch Night, 1 calendar."],
"generatedAt": "2026-06-03T00:00:00.000Z",
"author": "AngelHive Assistant"
}
}
}
}
Mudanças de tipo. step.type é tecnicamente mutável, mas campos antigos específicos de tipo (pipelineStepPrompt, app, tools, orchestratorConfig) persistem a menos que você unset eles. Para conversões limpas, prefira remove_step + add_step.
Workflows ativos. Edições são roteadas para uma captura de rascunho. A resposta inclui editingDraft: true. Inspecione via get_draft, publique via promote_draft, descarte via discard_draft. Para edições de alto risco, create_snapshot primeiro como um checkpoint manual.
Obsolescência do rascunho. Quando um rascunho existe, toda resposta update_step e get_step inclui um resumo draft com exists, draftCreatedAt, liveUpdatedAt, stale, modifiedStepIds e modifiedFields. Se draft.stale === true, o workflow ativo avançou após a criação do rascunho — promover fará o rascunho fornecer valores mais antigos para campos que você não tocou. update_step também emite um aviso de obsolescência. Recuperação: discard_draft e reaplique.
⚠ discard_draft só reverte alterações pendentes de contexto (e de etapa) — NÃO metadados. Gravações de metadados via update_workflow_context ignoram o rascunho e se aplicam imediatamente à linha Pipeline ativa. Se você precisa de um único ponto de rollback que cubra também metadados, create_snapshot antes da edição. Veja docs/MCP_STEP_EDITING.md para o contrato completo de atomicidade.
Nunca envie um array steps[] completo via update_workflow. Use update_step, add_step, remove_step.
Para a referência detalhada (códigos de StepMergeError, regras de validação de caminho de ponto, semântica completa de diff) veja docs/MCP_STEP_EDITING.md.
Rascunhos e Snapshots
| Ferramenta | Descrição |
|---|---|
get_draft | Obter a versão de rascunho atual de um workflow |
promote_draft | Promover um rascunho para a versão ativa |
discard_draft | Descartar o rascunho atual |
create_snapshot | Criar um snapshot de configuração manual |
delete_snapshot | Excluir um snapshot de configuração específico |
list_snapshots | Listar snapshots de versão para um workflow |
get_snapshot_content | Ler a configuração completa de um snapshot (etapas, contexto, etc.) sem restaurá-lo |
restore_snapshot | Restaurar um workflow para um snapshot anterior |
Execuções
| Ferramenta | Descrição |
|---|---|
start_workflow | Iniciar uma execução de workflow com entrada. Retorna executionInputId sempre e executionId apenas quando a linha de execução assíncrona já está disponível. Passe useMocks: false para forçar uma execução real (que consome créditos) ignorando dados mock por etapa; o padrão é respeitar os mocks configurados do workflow. |
list_executions | Listar execuções para um workflow (paginadas via nextToken), incluindo pipelineExecutionInputId para combinar um resultado de início que retornou apenas executionInputId. |
get_execution | Obter detalhes de execução com resultados de etapas. Exige o executionId real, não executionInputId; se necessário, chame list_executions e combine pipelineExecutionInputId. |
list_timelines | Listar registros de execução de etapas (linhas do tempo) para uma execução (paginados via nextToken) |
get_timeline | Obter uma única linha do tempo por ID com a saída completa da etapa |
stop_execution | Parar uma execução em andamento |
retry_execution | Tentar novamente uma etapa com falha — detecta automaticamente a falha mais recente se nenhum ID de linha do tempo for fornecido |
rerun | Reexecutar ou tentar novamente qualquer etapa por timelineId — funciona para etapas com falha E bem-sucedidas, desambigua iterações de loop |
Links profundos de execução usam /<locale>/<workspace>/<workflowPathname>/runs?runId=<executionId>&step=<stepId>.
O parâmetro de consulta step é opcional apenas para handoffs de nível de execução. Quando uma resposta aponta para um cartão de aprovação específico, saída, falha ou etapa atual, inclua &step=<stepId> e não peça ao humano para abrir a etapa manualmente após uma URL somente de execução. Quando presente, o aplicativo expande essa etapa do workflow e rola até ela. stepId é o id da etapa do workflow, não o id da linha do tempo. Dentro da superfície do chat/navegação do aplicativo, navigateToExecutionPage aceita o mesmo stepId.
Links profundos de linha de Knowledge usam /<locale>/<workspace>/knowledge-and-data/<listKey>?rowId=<rowId>.
O aplicativo abre a página de lista de Knowledge & Data e o painel do editor de linha para essa linha. A rota compatível com versões anteriores /<locale>/<workspace>/knowledge-and-data/<listKey>/row/<rowId> redireciona para a URL canônica com parâmetros de consulta.
Links profundos de texto de Knowledge usam /<locale>/<workspace>/knowledge-and-data/<key>.
A rota compatível com versões anteriores /<locale>/<workspace>/knowledge-and-data/text/<key> redireciona para a URL canônica do item.
Apps e Testes
| Ferramenta | Descrição |
|---|---|
list_apps | Listar aplicativos e integrações disponíveis |
get_app_actions | Obter esquemas de ação para um aplicativo |
test_app_action | Testar uma ação de aplicativo sem criar um workflow |
test_ai_action | Testar um prompt de IA sem criar um workflow |
test_code_action | Testar código JavaScript no mesmo VM isolado que produção |
get_step_schema | Obter campos PipelineStep permitidos agrupados por categoria |
Tipos de etapa de IA: aiAction vs aiActionWithTools
Escolha o tipo certo — validate_workflow rejeitará o errado:
| Você precisa… | Use |
|---|---|
| Raciocinar sobre entradas já presentes nas variáveis do prompt | aiAction (única chamada LLM, sem loop de ferramentas) |
| Pesquisa web ao vivo, recall/escrita na memória do workspace, consulta ao knowledge graph | aiActionWithTools com o builtinType correspondente |
| Que a IA decida em tempo real quais entradas passar para uma ação de aplicativo | aiActionWithTools com uma ferramenta appActionConfig |
aiActionWithTools requer pelo menos uma ferramenta — colocada em step.tools ou step.agent.tools (ambas são mescladas em tempo de execução). Se você omitir ferramentas em ambos os locais, validate_workflow retorna um bloqueador AI_STEP_TOOLS_REQUIRED. Se o prompt disser "pesquisar na web" / "recall de memória" / "knowledge graph" sem a ferramenta correspondente anexada, você obtém um aviso AI_STEP_TOOL_PROMPT_MISMATCH: prompts de pesquisa web precisam de web_search; prompts de memória precisam de workspace_memory; prompts de consulta KG precisam de kg_search ou kg_traverse. fetch_website_content busca uma URL conhecida e kg_write grava dados KG, então nenhum deles satisfaz esses prompts de consulta/pesquisa.
Valores válidos de builtinType: web_search, file_search, code_interpreter, fetch_website_content, kg_search, kg_traverse, kg_nodes, kg_write, workspace_memory.
Cache de prompt para etapas repetidas de IA
O Agentled habilita o cache de prompt do provedor onde houver suporte. O cache reutiliza o processamento de prompt para um prefixo idêntico; ele não armazena em cache nem reproduz a resposta da IA. Para se beneficiar em fluxos de trabalho em lote, especialmente loops de pontuação/correspondência, escreva os prompts com o material estável primeiro:
[stable role and task]
[stable rubric / scoring dimensions]
[stable output JSON schema]
[stable examples or decision rules]
Runtime inputs:
{{currentItem}}
{{steps.previous.output}}
{{input.field}}
Não comece prompts de alto volume com INPUTS, {{currentItem}}, {{steps.*}}, {{input.*}}, {{execution.id}}, {{now}} ou {{today}}. Mantenha payloads variáveis, datas, IDs de execução e registros por item no final para que OpenAI/Anthropic possam armazenar em cache o prefixo compartilhado.
// aiActionWithTools example
{
"id": "research",
"type": "aiActionWithTools",
"name": "Research Company",
"tools": [
{ "type": "builtin", "builtinType": "web_search", "name": "Web Search" }
],
"pipelineStepPrompt": {
"template": "Search the web for the founder of {{input.company}} and return their name.",
"responseStructure": { "firstName": "string", "lastName": "string" }
},
"creditCost": 10,
"next": { "stepId": "find-email" }
}
Conhecimento & Dados
| Ferramenta | Descrição |
|---|---|
get_workspace | Obter informações do workspace, configurações da empresa, membros ativos da equipe, convites pendentes e esquemas de lista de conhecimento |
get_workspace_company_profile | Obter o perfil da empresa do workspace editável e o texto de conhecimento da empresa |
update_workspace_company_profile | Atualizar campos de nível superior do perfil da empresa, como nome, URLs, logotipo, setor, tamanho e informações adicionais |
update_workspace_executive_summary | Escrever o resumo executivo do workspace no cartão do Workspace Assistant |
list_pinned_outputs | Listar páginas de saída fixadas na página inicial/barra lateral do workspace |
set_output_page_pin | Fixar ou desafixar uma página de saída de fluxo de trabalho na página inicial/barra lateral do workspace |
list_workspace_views | Listar manifestos de visualização salvos e orientações de origem/ação |
create_workspace_view | Criar um manifesto de superfície operacional salvo sobre KG, fluxos de trabalho, aprovações, agentes, rotinas, ações, páginas de saída, APIs externas ou fontes personalizadas |
get_workspace_view | Obter uma visualização de workspace salva por id ou chave |
update_workspace_view | Atualizar um manifesto de visualização salvo sem mutar os dados de origem ou executar ações |
archive_workspace_view | Arquivar uma visualização de workspace sem excluir dados vinculados |
list_knowledge_lists | Listar listas de conhecimento no workspace |
get_knowledge_rows | Obter linhas de uma lista de conhecimento (paginação via nextToken, máximo 200) |
get_knowledge_rows_by_ids | Buscar linhas específicas por ID (máximo 200) — usar após query_kg_edges |
get_knowledge_text | Obter conteúdo de texto de uma entrada de conhecimento |
create_knowledge_list | Criar uma nova lista de conhecimento com um esquema tipado (idempotente em colisão de chave) |
update_knowledge_list_schema | Adicionar ou remover campos no esquema de uma lista existente |
delete_knowledge_list | Excluir permanentemente uma lista e todas as suas linhas |
upsert_knowledge_rows | Inserir ou atualizar linhas em uma lista (máximo 500/chamada, relatórios de erro por linha) |
delete_knowledge_rows | Excluir linhas por ID |
upsert_knowledge_text | Criar ou atualizar uma entrada de texto de conhecimento |
delete_knowledge_text | Excluir uma entrada de texto de conhecimento por chave |
query_kg_edges | Consultar arestas do grafo de conhecimento |
get_scoring_history | Obter histórico de pontuação para uma entidade |
Créditos e Fatores de Custo
As ferramentas de relatório de crédito são opcionais para detalhes de fatores de custo, de modo que as verificações de saldo existentes permaneçam compactas.
Cada total de crédito é derivado do ledger e retornado com um objeto period contendo label, display, start e end; mostre sempre esse rótulo de período ao lado dos totais.
Para uma verificação de UI humana/operador, abra a página de uso de créditos do workspace:
https://www.agentled.app/en/{workspace}/account/billing/credits-usage
Exemplo: https://www.agentled.app/en/inovexus/account/billing/credits-usage.
| Ferramenta | Descrição |
|---|---|
get_workspace_credits | Saldo do workspace, uso, execuções e linhas recentes do ledger. Args opcionais: period, includeCostDrivers, includeRecentUsage, limit. |
get_workspace_credit_cost_drivers | Relatório de conveniência com includeCostDrivers=true por padrão. Retorna fluxos de trabalho, etapas, modelos e aplicativos mais usados com limites. |
get_workflow_credits | Uso em nível de fluxo de trabalho e fatores de custo opcionais, limitados aos fluxos de trabalho da chave de API autenticada no workspace. |
Períodos suportados:
rolling-30-days: janela móvel de 30 dias terminando no momento da requisição.rolling-7-days: janela móvel de 7 dias terminando no momento da requisição.current-month/month-to-date: mês do calendário UTC até a data atual, não o período de renovação de cobrança.previous-month: mês do calendário UTC anterior.all-time: ledger completo antes do momento da requisição; use intencionalmente, pois pode verificar mais linhas.
Exemplos:
// Compact balance/burn-rate check
{ "tool": "get_workspace_credits", "arguments": { "period": "rolling-30-days" } }
// Workspace cost drivers for a calendar month-to-date window
{ "tool": "get_workspace_credit_cost_drivers", "arguments": { "period": "current-month", "limit": 5 } }
// Workflow cost drivers
{ "tool": "get_workflow_credits", "arguments": { "workflowId": "wf_abc123", "period": "rolling-30-days", "includeCostDrivers": true } }
Equivalentes de API externa:
GET /api/external/workspace/credits?period=rolling-30-days&include=costDrivers&limit=5
GET /api/external/workflows/{workflowId}/credits?period=current-month&include=costDrivers
Os relatórios de período de cobrança são separados dos relatórios de mês calendário e não devem ser implícitos, a menos que uma API futura adicione um rótulo explícito de período de cobrança.
Marca (Whitelabel)
| Ferramenta | Descrição |
|---|---|
get_branding | Obter a configuração de marca whitelabel do workspace (displayName, logo, cores, favicon, badge) |
update_branding | Atualizar a marca — definir displayName, logoUrl, tagline, primaryColor, primaryColorDark, faviconUrl, hideBadge |
Agentes
Agentes de workspace de primeira classe com identidade, instruções, ferramentas, arquivos de configuração e fluxos de trabalho atribuídos. Todos os agentes são conversacionais (somente chat). Para trabalho agendado/autônomo, anexe rotinas via create_routine. SOUL.md e TOOLS.md residem em configFiles; o contexto de reflexão (JOURNAL.md, OBJECTIVES.md, PEOPLE.md) existe como AgentFiles vinculados e é automaticamente inicializado para agentes ativos de reflexão somente chat. Os agentes decidem qual sinal durável pertence a esses arquivos; o AgentLed oferece somente armazenamento limitado e Reflexão agendada. Um agente criado inteiramente via MCP é renderizado de forma idêntica a um criado no Agent Wizard.
| Ferramenta | Descrição |
|---|---|
list_agents | Listar agentes no workspace (filtrar por status: ativo, pausado, rascunho) |
get_agent | Obter configuração completa do agente — instruções, arquivos, fluxos de trabalho, rotinas anexadas |
create_agent | Criar um agente. Aceita predefinições agentType (personal-assistant, competitive-researcher, social-media-marketer, customer-support, content-marketer, lead-qualifier, deal-sourcer, custom), enabledApps, appPermissions, assignedWorkflowIds, linkedFileIds, configFiles (SOUL.md/TOOLS.md), avatar_icon_name, avatar_color, chatModel, activate: true |
update_agent | Atualização parcial — mesmos campos que create_agent; updates.slug renomeia o slug de e-mail do agente, move o id AgentEntity para {slug}@{workspace} e religa rotinas/links de arquivo/sessões de canal/sessões de chat quando disponíveis |
activate_agent | Ativar um agente (rascunho/pausado → ativo). As rotinas anexadas começam a ser executadas conforme o agendamento |
pause_agent | Pausar um agente ativo. As rotinas anexadas param até serem retomadas |
manage_agent_workflows | Adicionar/remover/definir os fluxos de trabalho atribuídos a um agente sem reescrever a configuração completa |
delete_agent | Excluir permanentemente um agente e todos os seus arquivos |
chat_with_agent | Enviar uma mensagem para um agente específico. Multi-turno via session_id |
Convenção de slug: slug é o ID curto de função usado em URLs e endereços de e-mail. Mantenha Agent no nome de exibição quando útil, mas não acrescente -agent ao slug apenas porque o nome de exibição o inclui; por exemplo, Deal Sourcing Agent deve usar deal-sourcing@{workspace}.agentled.ai, não deal-sourcing-agent@{workspace}.agentled.ai.
Arquivos do Agente
| Ferramenta | Descrição |
|---|---|
list_agent_files | Listar arquivos anexados a um agente (conhecimento, contexto, documentos de referência) |
get_agent_file | Obter o conteúdo de um arquivo específico do agente |
upload_agent_file | Enviar um arquivo (máximo 400KB texto/markdown) para um agente |
update_agent_file | Atualizar um arquivo já anexado a um agente; use isto após get_agent_file para edições de JOURNAL.md, OBJECTIVES.md e PEOPLE.md |
delete_agent_file | Excluir um arquivo de um agente |
Os arquivos de reflexão seguem o mesmo padrão de markdown durável usado nas superfícies de memória OpenClaw e Hermes: mantenha JOURNAL.md como um log conciso com data, OBJECTIVES.md como metas ativas/concluídas e PEOPLE.md como contexto relacional estável. Leia primeiro, atualize somente quando houver sinal durável e envie o conteúdo de substituição completo. Consulte docs/AGENT_REFLECTION_FILES.md para o contrato de edição por UI, MCP e CLI.
Rotinas
Rotinas são prompts agendados anexados a um agente — o agente avalia o prompt em um intervalo definido e pode acionar fluxos de trabalho ou enviar notificações.
Exemplo — adicionar uma rotina diária de deal-sourcer a um agente existente:
# Step 1: create the agent
create_agent({
name: "Daily Deal Sourcer",
agentType: "deal-sourcer",
enabledApps: ["agentled", "kg", "web-scraping"],
appPermissions: {
kg: { access: "write", writeApprovalRequired: true },
"web-scraping": { access: "read" }
},
assignedWorkflowIds: ["<opportunity-scoring-workflow-id>"],
activate: true
})
# Step 2: attach a routine
create_routine({
agent_id: "<agent-id>",
name: "Daily Sourcing Run",
prompt: "Find 5 new SaaS startups that match our deal criteria and trigger the scoring workflow for each.",
interval: "daily"
})
O acesso de leitura é implícito e nunca requer aprovação. O aplicativo interno agentled é selecionado como um app quando necessário, mas não é configurável em appPermissions.
| Ferramenta | Descrição |
|---|---|
list_routines | Listar todas as rotinas de um agente |
create_routine | Criar uma rotina (nome, prompt, intervalo) |
update_routine | Atualizar campos da rotina; recalcula nextRunAt se o intervalo mudar |
pause_routine | Pausar uma rotina |
resume_routine | Retomar uma rotina pausada |
trigger_routine | Executar uma rotina imediatamente sem alterar seu agendamento |
delete_routine | Excluir permanentemente uma rotina |
Valores de intervalo: weekday-morning, weekday-evening, weekly-monday, weekly-tuesday-evening, weekly-friday-evening, daily, monthly, 6h, 48h.
Runtime de Baixo Nível Obsoleto
As ferramentas MCP diretas de monitoramento/execução de baixo nível estão obsoletas e não são mais
registradas. Use create_agent / update_agent mais rotinas para trabalho autônomo.
Canais (E-mail, Slack, WhatsApp, Signal)
Os canais roteiam mensagens de entrada para o runtime de chat do agente. Cada canal tem um defaultAgentId que decide qual agente lida com a conversa. As respostas são enviadas de volta através do canal de origem.
| Ferramenta | Descrição |
|---|---|
list_channels | Listar canais configurados com seus defaultAgentId, estado de ativação e configuração não secreta (segredos ocultados) |
set_channel_default_agent | Atribuir o agente que lida com as conversas de entrada de um canal |
configure_channel | Atualizar configuração não secreta do canal — enabled, defaultAgentId, allowedSenders (e-mail), defaultChannelId (slack) |
set_channel_defaults | Atualizar padrões do workspace: maxSessionsPerDay, sessionTimeoutMinutes, toolMode |
Credenciais secretas (tokens de bot do Slack, segredos de assinatura, tokens de acesso do WhatsApp, segredos de webhook do Signal) NUNCA são legíveis ou graváveis via API externa. Conecte-os por Configurações → Canais na UI — os fluxos OAuth os armazenam criptografados em repouso.
Agente Conversacional
| Ferramenta | Descrição |
|---|---|
chat | Enviar uma mensagem para o agente de IA do AgentLed. Crie fluxos de trabalho por linguagem natural — sem necessidade de JSON. Suporta conversas multi-turno via session_id. |
Ferramenta de Chat — Uso e Exemplos
A ferramenta chat é um agente de IA conversacional que pode raciocinar, planejar e criar fluxos de trabalho por diálogo. Pense nela como a diferença entre gh api (bruto) e gh copilot (inteligente).
Parâmetros:
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
message | string | Sim | A mensagem a ser enviada ao agente de IA |
session_id | string | Não | ID da sessão de uma resposta anterior, para conversas multi-turno |
Formato de resposta:
{
"response": "The agent's reply — may include workflow suggestions, explanations, or confirmation of actions taken",
"sessionId": "mcp-chat-ws123-1711929600000"
}
Conversa multi-turno:
# Turn 1: Describe what you want
chat("Build me a workflow that enriches LinkedIn companies and scores them by ICP fit")
# → Agent responds with a plan and creates a draft workflow
# → Response includes sessionId: "mcp-chat-ws123-1711..."
# Turn 2: Iterate on the design
chat("Add an email finding step using the company domain", session_id: "mcp-chat-ws123-1711...")
# → Agent modifies the workflow, maintaining conversation context
# Turn 3: Finalize
chat("Looks good, publish it as live", session_id: "mcp-chat-ws123-1711...")
# → Agent publishes the workflow
Quando usar chat versus ferramentas estruturadas:
Use chat quando... | Use ferramentas estruturadas quando... |
|---|---|
| Você tem uma meta de alto nível | Você conhece o JSON exato do pipeline |
| Você quer recomendações de IA | Você precisa de controle preciso |
| Você está explorando habilidades ou integrações disponíveis | Você está automatizando um padrão conhecido |
| Você quer iterar por diálogo | Você está fazendo operações em lote |
| Notas: |
- Timeout de 5 minutos — divida solicitações complexas em etapas menores se necessário
- As respostas não são transmitidas em streaming (são coletadas e depois retornadas) para compatibilidade com clientes MCP
- O agente tem acesso total às ferramentas de planejamento, ao construtor de fluxos de trabalho e ao contexto do workspace
- As respostas de erro incluem mensagens acionáveis (ex.: timeout → "tente dividir em etapas menores")
Roteador de Intenções
| Ferramenta | Descrição |
|---|---|
do | Roteador de intenções em linguagem natural — descreva o que você quer e ele seleciona e executa automaticamente a ferramenta certa |
Ajuda e Feedback — Fale com a Equipe Agentled
Para agentes de IA — escolha o canal certo:
| O que você encontrar | Para onde vai |
|---|---|
| Fluxo de trabalho não se comportando como esperado, dúvida sobre app/integração, dúvida sobre plataforma/cobrança, recurso ausente, qualquer coisa sobre como o Agentled funciona | Chame submit_feedback_to_agentled (abaixo). Roteia direto para a equipe. |
Bug no próprio CLI (o comando agentled trava, grava dados errados em .agentled/, a flag não funciona) — um defeito de código reproduzível no CLI | Abra uma issue no GitHub em https://github.com/agentled/mcp-server/issues. Inclua a versão do CLI + etapas de reprodução. |
| Qualquer outra coisa, ou se você não tiver certeza | submit_feedback_to_agentled — a equipe redirecionará se necessário. |
Não pesquise metadados do npm, faça scraping do GitHub ou use
ghpara "encontrar" um rastreador de bugs — as rotas acima são as únicas. O campobugsno pacote aponta para a página de contato humano (https://www.agentled.ai/en/contact-us) de propósito.
Para humanos: envie um e-mail para contact@agentled.ai ou visite https://www.agentled.ai/en/contact-us.
| Ferramenta | Descrição |
|---|---|
submit_feedback_to_agentled | Faça uma pergunta, registre um bug, solicite um recurso ou eleve um problema. Tipos: ask, bug, feature_request, escalation. Forneça userEmail se quiser uma resposta. |
Vindo do n8n?
Importe fluxos de trabalho existentes do n8n e torne-os nativos de IA:
| Ferramenta | Descrição |
|---|---|
preview_n8n_import | Pré-visualize uma importação de fluxo de trabalho do n8n (execução de teste) |
import_n8n_workflow | Importe um fluxo de trabalho do n8n para o Agentled |
Consultando Dados com Escopo de Entidade
Quando você precisar de todos os registros relacionados a uma entidade específica, use a cadeia de duas ferramentas em vez de paginar get_knowledge_rows:
Exemplo 1 — todos os negócios avaliados por um investidor:
1. query_kg_edges({ entityName: "Investor Name", relationshipType: "SCORED" })
→ returns edges with targetNodeIds
2. get_knowledge_rows_by_ids({ rowIds: <targetNodeIds from step 1> })
→ returns full row data for each matched deal
Exemplo 2 — todos os leads originados de uma campanha:
1. query_kg_edges({ entityName: "Campaign Name", relationshipType: "SOURCED" })
→ returns edges with targetNodeIds
2. get_knowledge_rows_by_ids({ rowIds: <targetNodeIds from step 1> })
→ returns full contact/lead rows
Por que isso importa: get_knowledge_rows é limitado a 200 linhas por chamada. Com 3 mil linhas, isso significa 15 idas e voltas; com 10 mil, significa 50. O caminho de arestas do KG é O(arestas para aquela entidade) — independente do tamanho total da lista — então permanece rápido independentemente de quão grande a lista cresça.
Convenção de ID de nó: os valores de source_node_id e target_node_id de query_kg_edges são IDs de linhas de conhecimento. Linhas fora do workspace autenticado são excluídas silenciosamente.
Para Agências: Pronto para White-Label
Crie fluxos de trabalho uma vez, implante em vários clientes com sua própria marca. Configure a identidade visual diretamente do servidor MCP:
"Set my workspace branding: displayName 'Acme AI', primaryColor '#6366f1', tagline 'Powered by Acme'"
Use get_branding e update_branding para gerenciar displayName, logo, colors, favicon, tagline e visibilidade do selo. A aparência do portal do cliente é atualizada instantaneamente.
Memória Persistente — Exemplos
As memórias permitem que os fluxos de trabalho aprendam entre execuções. Armazene o que funcionou e recupere na próxima vez.
Armazenar um fato após o enriquecimento
"Store a memory: key 'icp_criteria', value { industry: 'fintech', minEmployees: 50, region: 'EU' },
category 'preference', scope 'workspace'"
Recuperar antes da pontuação
"Recall memory 'icp_criteria' at workspace scope — use it to score this batch of leads"
Buscar resultados anteriores
"Search memories for 'conversion rate' in the 'outcome' category"
Acompanhar uma métrica contínua
"Store memory: key 'total_leads_processed', value 43, merge 'increment', scope 'workspace'"
Cada chamada subsequente com merge: 'increment' adiciona ao valor existente — sem necessidade de leitura-modificação-gravação.
PCPL de Prospecção
Para fluxos de trabalho de e-mail ou saída, acompanhe o PCPL como uma métrica de negócio:
PCPL = prospects contacted / positive replies
Use analyticsConfig para prospects contatados, respostas positivas e PCPL. O PCPL literal deve usar uma métrica ratio com ratioMode: "raw"; a taxa de resposta positiva deve usar a proporção percentual padrão.
Rotinas — Exemplos
Rotinas são prompts agendados anexados a agentes. Use-as para trabalho autônomo, como verificações diárias, resumos semanais e acompanhamento de fluxos de trabalho.
Criar um agente com uma rotina diária de prospecção
"Create a deal sourcing agent, then add a daily routine that checks the
incoming-leads knowledge list and starts the lead-enrichment workflow for
qualified new rows. Limit the routine to 10 workflow starts per day."
Sequência de ferramentas:
create_agent({
name: "Daily Deal Sourcer",
agentType: "deal-sourcer",
enabledApps: ["agentled", "kg"],
assignedWorkflowIds: ["wf_abc123"],
activate: true
})
create_routine({
agent_id: "<agent-id-or-slug>",
name: "Daily New Lead Review",
prompt: "Review incoming-leads, identify qualified new rows, and start the lead-enrichment workflow for each. Do not start more than 10 workflow runs in one day.",
interval: "daily",
max_steps_per_run: 20,
max_credits_per_day: 50
})
Criar uma rotina semanal de saúde do fluxo de trabalho
"Add a weekly routine to the operations agent that reviews workflow execution
history, flags abnormal failures, and notifies me only when action is needed."
create_routine({
agent_id: "operations",
name: "Weekly Workflow Health Review",
prompt: "Review recent workflow execution history. If failures or stalls require action, summarize the affected workflows, likely impact, and recommended next step. Otherwise record that no action is needed.",
interval: "weekly-monday"
})
Pausar e retomar
"Pause routine <routine-id>"
"Resume routine <routine-id>"
"Run routine <routine-id> now"
Funciona Com
- Claude Code (Anthropic)
- Codex (OpenAI)
- Cursor
- Windsurf
- Qualquer cliente compatível com MCP
Links
Compilando a partir do Código-Fonte
git clone https://github.com/Agentled/mcp-server.git
cd mcp-server
npm install
npm run build
Licença
MIT