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.

npm version license

Agentled Server MCP server

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-skills anteriormente, 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 agentled e exclua .claude/skills/agentled/ (ou ~/.claude/skills/agentled/). --setup-skills agora 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 de skills/ (sincronizado por publish.sh) — edite skills/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

  1. Cadastre-se em agentled.app
  2. Abra Workspace Settings > Developer
  3. 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.

CapacidadeCréditosSem Agentled
Enriquecimento de empresas no LinkedIn50API do LinkedIn (US$ 99/mês+)
Busca e verificação de e-mails5Hunter.io (US$ 49/mês)
Análise de IA (Claude/GPT/Gemini)10-30Várias chaves de API + cobrança
Web scraping3-10Conta Apify (US$ 49/mês+)
Geração de imagens30Assinatura DALL-E/Midjourney
Geração de vídeo (cena de 8s)300RunwayML (US$ 15/mês+)
Texto para fala60ElevenLabs (US$ 22/mês+)
Armazenamento no Knowledge Graph1-2Infraestrutura personalizada
Sincronização com CRM (Affinity, HubSpot)5-10API 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:

PresetO que faz
research-and-summarizeEspecialistas reúnem informações, um sintetiza um resumo
analyze-and-recommendVários analistas avaliam opções, produzem uma recomendação classificada
generate-then-reviewUm gerador cria o conteúdo, revisores criticam e refinam
compare-optionsEspecialistas defendem opções concorrentes, o coordenador arbitra
investigate-in-parallelEspecialistas independentes exploram diferentes ângulos simultaneamente
review-and-improveRevisores 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

FerramentaDescrição
list_workflowsLista todos os fluxos de trabalho no workspace
get_workflowObtém a definição completa do fluxo de trabalho por ID, incluindo useCaseContext quando vinculado
get_workflow_creditsObté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_workflowCria um novo fluxo de trabalho a partir de JSON de pipeline
update_workflowAtualiza um fluxo de trabalho existente (escalares de nível superior; para contexto/metadados prefira update_workflow_context)
update_workflow_contextAná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_stepAdiciona uma etapa com posicionamento automático e reencaminhamento de próximo ponteiro
update_stepMescla profundamente atualizações em uma única etapa por ID
remove_stepRemove uma etapa com reencaminhamento automático de próximo ponteiro
delete_workflowExclui permanentemente um fluxo de trabalho
validate_workflowValida a estrutura do pipeline, retorna erros por etapa
publish_workflowAltera o status do fluxo de trabalho (draft, live, paused, archived)
export_workflowExporta um fluxo de trabalho como JSON portátil
import_workflowImporta 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.

FerramentaDescrição
list_public_form_linksLista os links de formulário público existentes para um fluxo de trabalho
create_public_form_linkCria e ativa um link de formulário público
update_public_form_linkAtiva/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_link com enabled: 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 de updates sã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 com updates silenciosamente 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 / campoAPIComo editarNotas
name, goal, description, pipelineStepPrompt.template, creditCostupdate_stepupdatesEscalar comum; seguro enviar sozinho.
next, loopConfig, entryConditions (bloco completo)update_stepupdatesConfig aninhada direta; enviar o novo valor por completo é aceitável.
tools, integrationsupdate_stepupdatesArrays substituem por completo por design. Para anexar, busque com get_step, faça splice localmente, envie o novo array completo.
stepInputData.fieldUpdatesupdate_stepget_stepupdates (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.responseStructureupdate_stepget_stepupdates + replace: ["pipelineStepPrompt.responseStructure"]Dicionário de formato de saída; trate como dados do usuário.
knowledgeSync.fieldMappingupdate_stepget_stepupdates + replace: ["knowledgeSync.fieldMapping"]Dicionário origem→destino; mesma armadilha que fieldUpdates.
renderer.config (quando preservar chaves irmãs importa)update_stepupdates (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_stepupdates: { 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 obsoletoupdate_stepunset: ["stepInputData.oldKey"]Maneira mais limpa de remover. O caminho deve existir no original.
context.inputPages, context.outputPages, context.executionInputConfigupdate_workflow_contextTrê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.
metadataupdate_workflow_contextMesmos 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

FerramentaDescrição
get_draftObter a versão de rascunho atual de um workflow
promote_draftPromover um rascunho para a versão ativa
discard_draftDescartar o rascunho atual
create_snapshotCriar um snapshot de configuração manual
delete_snapshotExcluir um snapshot de configuração específico
list_snapshotsListar snapshots de versão para um workflow
get_snapshot_contentLer a configuração completa de um snapshot (etapas, contexto, etc.) sem restaurá-lo
restore_snapshotRestaurar um workflow para um snapshot anterior

Execuções

FerramentaDescrição
start_workflowIniciar 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_executionsListar execuções para um workflow (paginadas via nextToken), incluindo pipelineExecutionInputId para combinar um resultado de início que retornou apenas executionInputId.
get_executionObter 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_timelinesListar registros de execução de etapas (linhas do tempo) para uma execução (paginados via nextToken)
get_timelineObter uma única linha do tempo por ID com a saída completa da etapa
stop_executionParar uma execução em andamento
retry_executionTentar novamente uma etapa com falha — detecta automaticamente a falha mais recente se nenhum ID de linha do tempo for fornecido
rerunReexecutar 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

FerramentaDescrição
list_appsListar aplicativos e integrações disponíveis
get_app_actionsObter esquemas de ação para um aplicativo
test_app_actionTestar uma ação de aplicativo sem criar um workflow
test_ai_actionTestar um prompt de IA sem criar um workflow
test_code_actionTestar código JavaScript no mesmo VM isolado que produção
get_step_schemaObter 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 promptaiAction (única chamada LLM, sem loop de ferramentas)
Pesquisa web ao vivo, recall/escrita na memória do workspace, consulta ao knowledge graphaiActionWithTools com o builtinType correspondente
Que a IA decida em tempo real quais entradas passar para uma ação de aplicativoaiActionWithTools 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

FerramentaDescrição
get_workspaceObter informações do workspace, configurações da empresa, membros ativos da equipe, convites pendentes e esquemas de lista de conhecimento
get_workspace_company_profileObter o perfil da empresa do workspace editável e o texto de conhecimento da empresa
update_workspace_company_profileAtualizar campos de nível superior do perfil da empresa, como nome, URLs, logotipo, setor, tamanho e informações adicionais
update_workspace_executive_summaryEscrever o resumo executivo do workspace no cartão do Workspace Assistant
list_pinned_outputsListar páginas de saída fixadas na página inicial/barra lateral do workspace
set_output_page_pinFixar ou desafixar uma página de saída de fluxo de trabalho na página inicial/barra lateral do workspace
list_workspace_viewsListar manifestos de visualização salvos e orientações de origem/ação
create_workspace_viewCriar 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_viewObter uma visualização de workspace salva por id ou chave
update_workspace_viewAtualizar um manifesto de visualização salvo sem mutar os dados de origem ou executar ações
archive_workspace_viewArquivar uma visualização de workspace sem excluir dados vinculados
list_knowledge_listsListar listas de conhecimento no workspace
get_knowledge_rowsObter linhas de uma lista de conhecimento (paginação via nextToken, máximo 200)
get_knowledge_rows_by_idsBuscar linhas específicas por ID (máximo 200) — usar após query_kg_edges
get_knowledge_textObter conteúdo de texto de uma entrada de conhecimento
create_knowledge_listCriar uma nova lista de conhecimento com um esquema tipado (idempotente em colisão de chave)
update_knowledge_list_schemaAdicionar ou remover campos no esquema de uma lista existente
delete_knowledge_listExcluir permanentemente uma lista e todas as suas linhas
upsert_knowledge_rowsInserir ou atualizar linhas em uma lista (máximo 500/chamada, relatórios de erro por linha)
delete_knowledge_rowsExcluir linhas por ID
upsert_knowledge_textCriar ou atualizar uma entrada de texto de conhecimento
delete_knowledge_textExcluir uma entrada de texto de conhecimento por chave
query_kg_edgesConsultar arestas do grafo de conhecimento
get_scoring_historyObter 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.

FerramentaDescrição
get_workspace_creditsSaldo do workspace, uso, execuções e linhas recentes do ledger. Args opcionais: period, includeCostDrivers, includeRecentUsage, limit.
get_workspace_credit_cost_driversRelatório de conveniência com includeCostDrivers=true por padrão. Retorna fluxos de trabalho, etapas, modelos e aplicativos mais usados com limites.
get_workflow_creditsUso 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)

FerramentaDescrição
get_brandingObter a configuração de marca whitelabel do workspace (displayName, logo, cores, favicon, badge)
update_brandingAtualizar 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.

FerramentaDescrição
list_agentsListar agentes no workspace (filtrar por status: ativo, pausado, rascunho)
get_agentObter configuração completa do agente — instruções, arquivos, fluxos de trabalho, rotinas anexadas
create_agentCriar 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_agentAtualizaçã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_agentAtivar um agente (rascunho/pausado → ativo). As rotinas anexadas começam a ser executadas conforme o agendamento
pause_agentPausar um agente ativo. As rotinas anexadas param até serem retomadas
manage_agent_workflowsAdicionar/remover/definir os fluxos de trabalho atribuídos a um agente sem reescrever a configuração completa
delete_agentExcluir permanentemente um agente e todos os seus arquivos
chat_with_agentEnviar 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

FerramentaDescrição
list_agent_filesListar arquivos anexados a um agente (conhecimento, contexto, documentos de referência)
get_agent_fileObter o conteúdo de um arquivo específico do agente
upload_agent_fileEnviar um arquivo (máximo 400KB texto/markdown) para um agente
update_agent_fileAtualizar 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_fileExcluir 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.

FerramentaDescrição
list_routinesListar todas as rotinas de um agente
create_routineCriar uma rotina (nome, prompt, intervalo)
update_routineAtualizar campos da rotina; recalcula nextRunAt se o intervalo mudar
pause_routinePausar uma rotina
resume_routineRetomar uma rotina pausada
trigger_routineExecutar uma rotina imediatamente sem alterar seu agendamento
delete_routineExcluir 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.

FerramentaDescrição
list_channelsListar canais configurados com seus defaultAgentId, estado de ativação e configuração não secreta (segredos ocultados)
set_channel_default_agentAtribuir o agente que lida com as conversas de entrada de um canal
configure_channelAtualizar configuração não secreta do canal — enabled, defaultAgentId, allowedSenders (e-mail), defaultChannelId (slack)
set_channel_defaultsAtualizar 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

FerramentaDescrição
chatEnviar 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âmetroTipoObrigatórioDescrição
messagestringSimA mensagem a ser enviada ao agente de IA
session_idstringNãoID 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ívelVocê conhece o JSON exato do pipeline
Você quer recomendações de IAVocê precisa de controle preciso
Você está explorando habilidades ou integrações disponíveisVocê está automatizando um padrão conhecido
Você quer iterar por diálogoVocê 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

FerramentaDescrição
doRoteador 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ê encontrarPara 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 funcionaChame 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 CLIAbra 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 certezasubmit_feedback_to_agentled — a equipe redirecionará se necessário.

Não pesquise metadados do npm, faça scraping do GitHub ou use gh para "encontrar" um rastreador de bugs — as rotas acima são as únicas. O campo bugs no 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.

FerramentaDescrição
submit_feedback_to_agentledFaç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:

FerramentaDescrição
preview_n8n_importPré-visualize uma importação de fluxo de trabalho do n8n (execução de teste)
import_n8n_workflowImporte 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