Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. 🏒 Workplace & Productivity
  3. MCP Server
MCP Server logo
Health: ActiveRecent health check succeeded.Last checked 9/11/2026, 3:00:37 PM

MCP Server

User RatingsBe the first to rate and review this MCP server!
View Repository3 GitHub StarsTotal stargazers on GitHub for the source repository (3 stars).Visit Website
workflow-automationknowledge-graphai-agentsintegrations

Builds and runs AI workflows with Knowledge Graph memory, integrations, approvals, validation, execution, and workflow versioning.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Not yet automatically verified

This server is confirmed live β€” we successfully called its tools/list endpoint directly (see the verified badge above). We haven't yet sandbox-tested the stdio install command below specifically, which is a separate, ongoing check.

Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "agentled-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@agentled/mcp-server"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Tool Schemas (161) Directory Badge Claim listing Alternatives🏒 More in Workplace & Productivity

Overview

The Agentled/mcp-server MCP server exposes Agentled workflow orchestration, memory, integrations, and execution controls to MCP clients. It lets agents create workflows incrementally, connect AI, app, code, knowledge, approval, scheduling, branching, looping, and reporting steps, then validate, publish, and run them. A workspace Knowledge Graph can store reusable business context and workflow results across executions. Use it when an agent needs to build or operate multi-step business automations rather than only call an individual API.

Use cases

β€’Build recurring lead sourcing and qualification workflows
β€’Store research, scoring criteria, and results in a Knowledge Graph
β€’Publish approval-gated email, content, or outreach workflows
β€’Import, validate, version, and migrate workflow definitions
β€’Run and inspect multi-step AI business automations

Key features

β€’Incremental workflow authoring and validation
β€’Knowledge Graph memory across executions
β€’AI, app, code, approval, loop, and orchestration steps
β€’Draft routing, snapshots, export, and import
β€’Asynchronous execution monitoring
β€’n8n workflow preview and import

Capabilities & Tool Schemas (161) ~57.3k tokensApproximate context cost of this server’s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Verified live Verified liveCaptured by calling this server’s live tools/list endpoint.

Inspect callable tools, capabilities, and parameters exposed to AI agents by MCP Server.

list_workflows

List all workflows in the workspace. Returns compact workflow summaries plus small metadataSummary fields (analytics, workflowGraph, revision, imports, builder preflight state). Use get_workflow for full steps, context, raw metadata, full builder contract/compiler preview, and update history.

get_workflow

Get full details of a workflow including all steps, context, metadata, and configuration. Also returns hasDraftSnapshot (boolean) and draftSnapshot summary if a draft exists for a live workflow. When available, useCaseContext links the workflow to its WorkspaceUseCase and operating-guide README commands. Read the linked use case and guide before making workflow-specific claims or edits; missing-guide warnings mean context is incomplete.

get_workflow_credits

Get ledger-derived, period-labelled credit usage for a single workflow. Defaults to period=rolling-30-days. Set includeCostDrivers=true for bounded step/model/app cost drivers. Always show the returned period.label/display/start/end with any credit total. Use all-time intentionally because it can scan more ledger rows.

create_workflow

Create a new workflow. ## KG-First β€” before you write any prompt content If the workflow you're building contains workspace-specific content (investment thesis, ICP criteria, scoring rubrics, target sectors, brand voice, geo focus, seed lists), run this preflight before generating AI-step prompt strings: 1. **Inspect** β€” call `list_memories`, `list_knowledge_lists`, `get_knowledge_text` to see what already exists in the workspace KG. 2. **Seed** β€” if the content isn't in the KG yet, write it there first (`store_memory`, `upsert_knowledge_text`, `upsert_knowledge_rows`). Confirm with the user before seeding new content. 3. **Reference** β€” pull KG content at runtime in the step (`kg.read-text`, `kg.read-list`, `recall_memory`). Never paste workspace-specific paragraphs into prompt template strings. **Boundary: strategy β†’ KG; execution wiring β†’ workflow context; workflow structure β†’ workflow.** ## Recommended flow for agent-authored workflows `create_workflow({ name, goal })` β†’ `add_step` per step β†’ `validate_workflow` β†’ `publish_workflow`. Call this with **only** `name` + `goal` β€” leave `steps` empty. Then `add_step` one step at a time. The incremental path catches errors immediately and surfaces `{{input.X}}` / `{{steps.Y.Z}}` bindings per-step. Internal testing: 0 errors incremental vs 13 errors bulk. `pipeline.steps` is supported for imports/templates/round-trips only. Agents authoring from scratch should not use it. ## Pipeline object fields - `name` (required), `goal`, `description`, `context`, `metadata`, `style` - `steps`: Closed `type` values (others silently stripped): `trigger`, `appAction`, `aiAction`, `aiActionWithTools`, `toolAction`, `code`, `knowledgeSync`, `return`, `milestone`, `share`, `wait`, `branch`, `parallel`, `loop`, `end_if`, `agentOrchestrator`. Prefer `schedule` triggers for email intake and non-real-time use β€” idempotent, no webhook infra. Use `app_event`/`webhook` only for "as soon as" / "real-time" requirements. For child / sub-workflows that end in a `return` step and are only invoked via `agentled.call-workflow`, set `context.executionInputConfig.internal: true` to hide the Run button in the UI (see `update_workflow` for details). ## Step shape reference Call `get_step_schema({ stepType, shape? })` for the authoritative field schema AND minimal JSON examples of every common step shape. The highest-friction shapes are: - **Report step** (aiAction with Config renderer) β€” `get_step_schema({ stepType: "aiAction", shape: "report" })`. - **Composed email with approval** β€” `get_step_schema({ stepType: "aiAction", shape: "email" })`. Use this with `schedule-email`; do not add Gmail/Outlook send appActions unless explicitly requested. - **Agentic research** (web_search + workspace_memory) β€” `get_step_schema({ stepType: "aiActionWithTools", shape: "agentic-search" })`. - **Agent Team** (agentOrchestrator) β€” `get_step_schema({ stepType: "agentOrchestrator", shape: "supervisor" })`. - **Public share URL for a report** β€” `get_step_schema({ stepType: "share", shape: "public" })`. - **KG field mapping** β€” `get_step_schema({ stepType: "knowledgeSync", shape: "standard" })`. - **Code step** (JavaScript transformation) β€” `get_step_schema({ stepType: "code", shape: "standard" })`. JavaScript only β€” Python is not supported. For app actions, call `get_app_actions({ appId })` for input/output schemas. For models, call `list_models`. ## Composable Step Blocks **Search & Extract**: `aiAction (queries) β†’ appAction (search) β†’ aiAction (extract)` ⚠️ NEVER pass raw user input (job titles, topics) directly to a search API β€” always generate optimized boolean/keyword queries first. **Enrich & Score**: `appAction (fetch) β†’ aiAction (score)` **Draft & Send**: `aiAction email β†’ approval + schedule-email`. Use HTML bodies for open/click tracking. **Write app action with approval**: put the approval directly on the write `appAction` (`preExecuteApproval: true`, `onApproval.action: "execute-approved-action"`, `onApproval.target.type: "current-step"`). Do not add a separate "Approve X" milestone/wait step before the write action, and do not add a separate "Mark X sent/published" step unless it records the real post-send result. **Report & Notify**: `aiAction report with Config renderer β†’ share step β†’ aiAction notification email with concise HTML overview + shareUrl` **Loop Enrich & Filter**: `loopConfig on first step β†’ appAction (enrich) β†’ aiAction (score)` ## Available Apps & Data Sources **Before proposing data sources or sourcing channels to the user, you MUST know what is actually reachable.** The catalog has two billing models β€” don't conflate them, and don't invent connectors that don't exist. Always call `list_apps` and `get_app_actions({ appId })` to verify before finalizing a plan. ### Billed via Agentled credits (no user setup needed) - **agentled native LinkedIn / email**: `get-linkedin-profile-from-url`, `get-linkedin-company-from-url`, `find-email-person-domain`, `get-emails-from-company-domain`. - **agentled native LinkedIn search & content**: `linkedin-post-search` (keyword post search β€” primary LinkedIn discovery surface), `linkedin-jobs`, `linkedin-profile-posts`, `linkedin-company-posts`. - **email finder**: `hunter`. - **web fetch / scrape**: `web-scraping.scrape` (any URL β†’ markdown), `http-request.request`, `page-index`. - **browser automation**: `browser-use.run-task` / `extract-data`, `anthropic-computer-use`, `openai-computer-use`. - **AI / image gen**: `openai`, `google-gemini`, `mistral`, `bytedance`, `kling`. - **public data feeds**: `french-gouv`, `google-maps`, `realtor`, `seloger`, `amazon`, `ad-intelligence`, `upwork`, `instagram`, `facebook`. - **knowledge graph**: `kg.*` (read-list, upsert-rows, update-rows, traverse-edges, etc.) β€” 1 credit per call. - **comms**: `gmail`, `google-calendar`, `webhook` (Slack/Discord), `notion`. ### Bring-your-own-key (NOT billed via Agentled credits) These require the user to connect their own account / paste their own API key. Treat them as available only if the user has the integration connected. - `crunchbase` (user's Crunchbase API key) - `specter` (user's Specter API key) - `affinity-crm` (user's Affinity API key) - `phantombuster` (user's PhantomBuster account β€” runs LinkedIn search agents, Sales Navigator scrapers, etc.) When proposing one of these, ask "do you already have a <service> account connected?" before assuming you can use it. ### Built-in tools (for `aiActionWithTools` steps, not standalone apps) `web_search`, `file_search`, `code_interpreter`, `fetch_website_content`, `kg_search`, `kg_traverse`, `kg_nodes`, `kg_write`, `workspace_memory`. Attach via the step's `tools` array; the AI decides at runtime whether to call them. ### Common gotchas - Want LinkedIn keyword/post search? Use the native `linkedin-post-search` (Agentled credits) β€” see `deal-sourcing-linkedin-founder-signals.ts` for a reference workflow. - Want LinkedIn Sales Navigator search / lead lists / company employees? `phantombuster` (BYOK) β€” see `deal-sourcing-linkedin.ts`. - No native ProductHunt / EU-Startups / X-Twitter connector β€” use `web-scraping.scrape` on a known URL or `web_search` via `aiActionWithTools`. - LinkedIn profile / company *enrichment* is URL-only (`get-linkedin-profile-from-url`). For discovery, pair it with `linkedin-post-search` or `phantombuster`. ## Multi-Workflow Architecture (Source β†’ KG β†’ Process) Before building a multi-workflow goal, call `list_use_cases` or `get_use_case`; reuse matching `workflowGraphId`, KG refs, agents, and workflows. Tag new bundles with `metadata.workflowGraph.id`. For a new multi-source/shared-tail goal, call `preview_use_case_kit` first and review its dry-run operations with the user. If the ask fits Source -> KG -> Process, **do not hand-roll** N disconnected `create_workflow` calls from scratch. When the user wants to "find leads", "source startups", "build a list to act on later", or run anything on a recurring cadence that produces entities to act on, **do not build one monolithic workflow**. Build several: 1. **One sourcing workflow per channel/theme** (e.g. "LinkedIn cybersecurity startups", "YC W25 batch", "ProductHunt this week"). Each runs on its own schedule and writes to a **shared KG list** via `kg.upsert-rows` with: `userKey` = stable id (URL/domain/LinkedIn URL) for O(1) dedup across runs; `status: "new"` to mark rows for downstream processing; `mergeStrategy: "merge"` so fields added later (scores, outreach status) survive re-upserts. 2. **One orchestrator/qualifier workflow** that runs on its own cadence (e.g. weekly), reads `kg.read-list({ filters: { status: "new" } })`, qualifies/scores each row against the current theme, then either dispatches to outreach or marks `status: "qualified" / "rejected"`. 3. **One outreach workflow** (often a child workflow called via `agentled.call-workflow`) that the orchestrator invokes for qualified rows. Why split: sourcing cadences, qualification criteria, and approval-gated outreach evolve independently. Multiple sourcing workflows converging on one `listKey` is the canonical pattern. Suggest the split explicitly ("N sourcing workflows + 1 qualifier + 1 outreach") instead of a mega-workflow. ## Build incrementally β€” two first, then refactor, then the rest When the plan calls for many sourcing workflows (or any N near-identical workflows), **do not build all N upfront**. Build two first, ship them end-to-end, then extract what is actually shared β€” most often the *tail*: normalize β†’ kg.upsert-rows (with userKey + status: "new" + mergeStrategy: "merge") β†’ milestone. Once the shared shape is clear: 1. Extract the common tail into a **child workflow** (terminal `return` step, `context.executionInputConfig.internal: true`) and have the two existing sourcing workflows call it via `agentled.call-workflow`. 2. Validate + run the two pilots end-to-end on the shared tail. 3. *Then* build the remaining sourcing workflows on top of that shared tail β€” they become small (just the source-specific search/scrape/extract head, then call the shared tail). Why: two pilots surface the real shared shape; refactoring before scaling keeps workflows 3..N short and consistent. Don't pre-extract a child workflow before the second pilot exists. ## KG Status Lifecycle β€” multi-phase pipeline pattern When a workflow acts on entities across phases (source β†’ score β†’ report β†’ outreach), use KG row `status` as a DB-indexed state machine. Filtering by one status (e.g. `status: "new"`) is indexed β€” never scan the full list and filter in code. **Status values are user-defined** β€” choose names that map to your pipeline phases (e.g. `new β†’ scored β†’ reported β†’ email_sent β†’ closed_*`, or `draft β†’ review β†’ approved β†’ published`). Document the state machine in the workflow goal or as a KG text entry. Key rules: - Sourcing writes `status: "new"` via `kg.upsert-rows` with `mergeStrategy: "merge"` (preserves downstream-added fields across re-runs). - Each phase reads only its input status tier and advances rows to the next. - Mark the next status **before** side-effects (email, share, Slack). If delivery fails, the row stays in the new status β€” it won't be double-sent on retry. - Every upserted row needs a `userKey` (URL, domain, LinkedIn URL, email) for O(1) cross-run dedup. - Use `entryConditions.criteria[{ type: "loop_completion" }]` with `onCriteriaFail: "wait"` before cross-phase reads that depend on a loop finishing. The `Loop Enrich & Filter` block above hints at the same fan-in mechanism: for post-loop convergence, use `entryConditions.criteria[{ type: "loop_completion" }]` with `onCriteriaFail: "wait"` β€” do not use `scope` as the runtime wait mechanism.

update_workflow

Update an existing workflow. ## Recommended flow for agent-driven edits For editing an existing workflow step-by-step, prefer the per-step tools β€” they catch errors incrementally and avoid the bulk-JSON vocabulary traps (`ai` / `integration` / `knowledge_graph_query`, silently-stripped root fields like `prompt` / `listKey` / `appId`): - `update_step({ workflowId, stepId, updates })` β€” change one step (prompt, inputs, next, etc.). Safest and most common. - `add_step({ workflowId, step, insertAfter? })` β€” append or insert a new step. - `remove_step({ workflowId, stepId })` β€” delete a step and re-wire its neighbors. - After a series of edits: `validate_workflow` β†’ (if live) `promote_draft` / `discard_draft`. The bulk `updates` param below is supported for **imports, templated rewrites, and programmatic round-trips** (export β†’ edit JSON β†’ re-import). Agents editing interactively should not use it for step changes β€” use `update_step` instead. ## Trigger type guidance Prefer `schedule` (polling) for email intake, document processing, and any workflow where exact-millisecond latency is not required β€” it is idempotent, supports backfill, and needs no webhook infrastructure. Use `app_event` or `webhook` only when the user explicitly says "as soon as", "within X seconds", or "real-time". When in doubt, schedule wins. ## Draft routing (live workflows) If the workflow is live, config edits (steps, context, name, etc.) are automatically routed to a draft snapshot instead of modifying the live pipeline. The response will include `editingDraft: true`. Use `get_draft` to view the draft, `promote_draft` to make it live, or `discard_draft` to throw away the changes. Non-live workflows are updated directly with an automatic pre-edit snapshot for rollback. ## Bulk updates param (imports / round-trips only) ⚠️ Avoid sending a full `steps` array for large workflows β€” use `update_step` instead. Sending more than ~20 steps risks silent truncation at the MCP transport layer. Full steps array replacement is only safe when doing a complete pipeline replacement from a known-good JSON source (import, template, export round-trip). For editing individual steps, always use `update_step`. ## `context` merge semantics (read before patching) **Root level:** `updates.context` is **shallow-merged** with the stored workflow’s `context` (`{ ...existingContext, ...patchContext }`). Sibling keys at the root (`inputPages`, `outputPages`, `executionInputConfig`, etc.) do not clobber each other: **omitting a key preserves the stored value**; only keys present in the patch are overwritten. To clear a collection explicitly, send an empty value (e.g. `inputPages: []`). Silent deletion-by-omission no longer applies at the root β€” same spirit as `update_step`’s deep-merge for nested step fields. **One level down:** Each **value** under `context` is still replaced **wholesale** when the patch includes that key. For example, `context: { executionInputConfig: { someKey: "x" } }` replaces the entire `executionInputConfig` object β€” any sibling fields under it (e.g. `defaults`, `fields`, `internal`) that are not in the payload are dropped. To partial-patch a nested object, **`get_workflow` first**, merge the current value with your changes client-side, then send the **full merged** object for that key in `update_workflow`. **Surgical alternative (preferred for context/metadata):** `update_workflow_context` is the workflow-level analog of `update_step` β€” it accepts the same three explicit verbs (`updates` / `replace` / `unset`) on workflow-relative paths under `context.<anything>` (both page schemas like `context.inputPages` AND user-saved page values like `context.outreachProfile`) and `metadata`. Returns `diff` + `warnings`. Use it instead of bulk `update_workflow` for any context or metadata edit, including pre-filling configuration input pages programmatically (e.g. `updates: { context: { outreachProfile: { name: "Alberto", signature: "..." } } }`). To flip a single nested key like `executionInputConfig.internal`, fetch with `get_workflow` first, merge locally, then `updates: { context: { executionInputConfig: {...full merged...} } }, replace: ["context.executionInputConfig"]` β€” the same merge-order trap as `update_step` applies (deep-merge runs before replace[], so replace at the parent level). ## Internal-only workflows Set `context.executionInputConfig.internal: true` to mark a workflow as a child / sub-workflow that runs only via `agentled.call-workflow`. The UI hides the Run button and replaces the manual run form with a banner; orchestrators still pass inputs via `executionInputData` (UI guard, not runtime restriction). Use for child workflows that end in a `return` step. To toggle on an existing workflow, fetch the current value with `get_workflow`, then call `update_workflow_context` with the explicit ops shape replacing at the parent level: `updates: { context: { executionInputConfig: {...merged...} } }, replace: ["context.executionInputConfig"]`.

add_step

Add a new step to a workflow. **This is the recommended path for agent-authored workflows** β€” call `create_workflow({ name, goal })` first, then `add_step` one step at a time, then `validate_workflow` + `publish_workflow`. Each call returns per-step validation errors immediately, so a bad step type / prompt template / missing required field is caught before the next step is built on top of it. ## KG-First β€” before writing prompt content into a step Before writing an AI-step prompt that contains workspace-specific content (thesis, ICP criteria, scoring rubric, sector list, geo focus, brand voice, seed lists), check whether that content already lives in the workspace KG: call `list_memories` / `list_knowledge_lists` / `get_knowledge_text`. If it doesn't exist yet, seed it first (`store_memory` / `upsert_knowledge_text`) before adding this step. Then reference it at runtime in the prompt template via `{{steps.read-kg.content}}` rather than pasting the text inline. **Boundary: strategy β†’ KG; execution wiring β†’ workflow context; workflow structure β†’ workflow.** ## Required `step` fields (all types) - `id`: stable string unique within the workflow. - `type`: one of the closed list β€” `trigger`, `appAction`, `aiAction`, `aiActionWithTools`, `toolAction`, `code`, `knowledgeSync`, `return`, `milestone`, `share`, `wait`, `branch`, `parallel`, `loop`, `end_if`, `agentOrchestrator`. Any other string is silently stripped by the runtime. - `name`: human-readable label. Non-terminal steps also need `next: { stepId }` pointing to the next step. Terminal steps (`milestone`, `return`) omit `next`. ## Minimal shape by type ```json // trigger (manual) { "id": "start", "type": "trigger", "name": "Manual Start", "pipelineStepStartConditions": { "trigger": { "type": "manual" } }, "next": { "stepId": "next-step" } } // aiAction β€” LLM prompt β†’ structured JSON { "id": "analyze", "type": "aiAction", "name": "Analyze", "pipelineStepPrompt": { "template": "Analyze {{input.company_url}}", "responseStructure": { "summary": "string", "score": "number (0-100)" } }, "creditCost": 10, "next": { "stepId": "next-step" } } // appAction β€” call an app/integration action { "id": "enrich", "type": "appAction", "name": "Enrich Company", "app": { "id": "agentled", "actionId": "agentled.get-linkedin-company-from-url", "source": "native" }, "stepInputData": { "profileUrls": "{{input.company_url}}" }, "next": { "stepId": "next-step" } } // β†’ call `get_app_actions({ appId })` FIRST to get valid actionId + input field names for this app. // aiActionWithTools β€” LLM agent invoking runtime tools { "id": "research", "type": "aiActionWithTools", "name": "Research", "tools": [{ "type": "builtin", "name": "web_search", "builtinType": "web_search" }], "pipelineStepPrompt": { "template": "Research {{input.topic}}", "responseStructure": { "summary": "string" } }, "creditCost": 10, "next": { "stepId": "next-step" } } // β†’ call `list_models` for valid builtinType values (web_search, workspace_memory, kg_search, …). // knowledgeSync β€” persist prior step output to a KG list { "id": "save", "type": "knowledgeSync", "name": "Save to KG", "knowledgeSync": { "source": { "stepId": "analyze", "resultsPath": "items" }, "listKey": "scored_companies", "fieldMapping": { "name": "name", "score": "score" } }, "next": { "stepId": "done" } } // milestone β€” terminal step for top-level workflows { "id": "done", "type": "milestone", "name": "Done" } ``` ## Variable references - `{{input.fieldName}}` β€” input page field (defined in `context.executionInputConfig.fields` or `context.inputPages[].configuration.fields`). - `{{steps.stepId.fieldName}}` β€” output of a prior step. - `{{currentItem.field}}` β€” current item inside a `loopConfig` iteration. Trigger step inputs are referenced as `{{input.X}}`, **not** `{{steps.trigger-id.X}}` β€” common agent mistake. ## Composable step blocks When building multi-step workflows, apply these reusable patterns: - **Search & Extract**: aiAction (generate queries) β†’ appAction (search) β†’ aiAction (extract). Never pass raw input to search APIs. - **Enrich & Score**: appAction (fetch data) β†’ aiAction (score). Always enrich before scoring. - **Draft & Send**: aiAction email β†’ approval with onApproval.action="schedule-email". Use HTML bodies for open/click tracking. Do not use Gmail/Outlook send appActions unless explicitly requested. - **Report & Notify**: aiAction report with Config renderer β†’ share step β†’ aiAction notification email. Include `{{steps.<shareStepId>.shareUrl}}` in the email template and keep the body to an HTML overview + report link. - **Scrape & Summarize**: appAction (scrape) β†’ aiAction (summarize). - **Loop Enrich & Filter**: loopConfig on first step only β†’ appAction (enrich each) β†’ aiAction (score/filter). Post-loop: aiAction to rank with `entryConditions.criteria[{ type: "loop_completion" }]` and `onCriteriaFail: "wait"`. Do not use `scope` as the runtime wait/fan-in mechanism; it only declares explicit container membership. - **Multi-phase KG pipeline**: each phase reads its input status, processes rows, then advances them (kg.upsert-rows with initial status β†’ kg.read-list by status β†’ kg.update-rows to next status). Status values are user-defined per pipeline. Status is DB-indexed β€” always filter by a single equality value, never scan. Mark the next status BEFORE side-effects (email, share, Slack). (Source of truth: COMPOSABLE_STEP_BLOCKS in workflowPatternExamples.ts) ## Positioning Use `insertAfter` to place the step after an existing step ID. When `rewireNext` is true (default), the insertAfter step's `next` is updated to the new step, and the new step's `next` is set to what insertAfter previously pointed to β€” maintaining the chain. Validates step ID uniqueness. Respects draft snapshot routing for live workflows.

How MCP Server works

What the Agentled/mcp-server MCP server does

The Agentled/mcp-server MCP server gives MCP-compatible clients access to Agentled workspaces and their workflow runtime. It supports creating, inspecting, editing, validating, publishing, starting, and monitoring workflows. Workflow definitions can include triggers, AI actions, AI actions with built-in tools, app actions, JavaScript code, Knowledge Graph synchronization, approvals, sharing, waits, branches, parallel paths, loops, returns, milestones, and agent orchestration.

The server also exposes workspace memory and Knowledge Graph operations. Agents can inspect memories, knowledge lists, and knowledge text before placing workspace-specific strategy or criteria into prompts. Stored information can then be read at runtime by workflow steps, keeping strategy data separate from workflow wiring.

How it works

A typical authoring sequence is create_workflow with only a name and goal, followed by add_step calls, validate_workflow, and publish_workflow. Adding one step at a time returns validation feedback early and helps reveal variable bindings such as {{input.X}} and {{steps.Y.Z}}. Existing workflows can be changed with focused tools such as update_step, add_step, remove_step, and update_workflow_context.

For live workflows, configuration changes are routed to a draft snapshot. Agents can inspect that draft, promote it to live, or discard it. Snapshots can also be created, listed, inspected, restored, and deleted. Workflows can be exported as portable JSON and imported into another workspace. The server also supports previewing and importing n8n JSON, with the import entering a draft review state rather than being applied automatically.

Execution is asynchronous. start_workflow accepts input data and may return an execution ID or an input ID that must be matched through list_executions. get_execution returns completed step results, while timeline tools can help inspect a particular invocation. Mock-enabled steps use mock data by default; useMocks: false forces a real run.

Setup and configuration

The Agentled/mcp-server MCP server is distributed as the npm package @agentled/mcp-server. A local stdio installation can be registered with:

Terminal
claude mcp add --transport stdio --scope user agentled \
  -e AGENTLED_API_KEY=wsk_... \
  -- npx -y @agentled/mcp-server

The API key is generated in Agentled under Workspace Settings > Developer and starts with wsk_. The repository also documents a Claude Code plugin that installs the server and an Agentled skill together, but the plugin and direct MCP registration should not both be used for the same setup. Local development can point a built entrypoint at an AGENTLED_URL, such as a local application instance.

Tools and capabilities

The Agentled/mcp-server MCP server includes tools for:

  • Listing and reading workflows, steps, executions, timelines, credits, drafts, and snapshots.
  • Creating, updating, moving, removing, validating, publishing, pausing, archiving, exporting, importing, and deleting workflows.
  • Reading step schemas and app action schemas before authoring pipeline definitions.
  • Running AI models, built-in tools, app integrations, browser automation, scraping, communications, media generation, and Knowledge Graph operations when available in the workspace catalog.
  • Building multi-workflow pipelines that source entities, store them in shared Knowledge Graph lists, qualify them, and route approved results to later workflows.
  • Applying approval gates to writes and using scheduled triggers for recurring, idempotent processing.

Before selecting an app or data source, agents should inspect the available app catalog and action schemas. Some connectors require the user’s own connected account or API key, while other services consume Agentled credits.

Limitations and notes

JavaScript is supported for code steps; Python is not. Workflow step types and fields are schema-controlled, and unknown fields may be stripped when saved. Full step-array updates are intended for imports and round-trips; interactive edits should use per-step tools. Dictionary-shaped fields should be read before replacement to avoid unintentionally removing sibling values.

Deleting a workflow is a two-phase operation: the first call creates a confirmation token and the second performs the cascade delete. Snapshot limits depend on the Agentled plan. Credit totals should be reported with their returned period label and date range. The server requires an Agentled API key, and actual integrations, models, and data sources depend on the workspace catalog and connected accounts.

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Workplace & Productivity View all alternatives
  • N8n Pro MCP logoN8n Pro MCP

    Full-instance management for self-hosted n8n including queue mode: workflows, executions, tags, credentials, variables, projects, users, security audit and health monitoring (51 tools).

    🏒 Workplace & Productivity1 views
    Compare vs N8n Pro MCP β†’
  • Delega MCP logoDelega MCP

    Task management API built for AI agents. Create, delegate, and track tasks with agent identity, delegation chains, lifecycle webhooks, and persistent context. Self-hosted or hosted tier at delega.dev.

    🏒 Workplace & Productivity2 views
    Compare vs Delega MCP β†’
  • Keymem logoKeymem

    Associative key-graph memory for LLM agents β€” recall by association, not vector similarity.

    🏒 Workplace & Productivity2 views
    Compare vs Keymem β†’
  • Chronary MCP logoChronary MCP

    Calendar API built for AI agents β€” 47 tools for events, availability, meeting-time search, scheduling proposals, availability rules, webhooks, and iCal feeds. Local via npx -y @chronary/mcp or hosted at https://api.chronary.ai/mcp.

    🏒 Workplace & Productivity1 views
    Compare vs Chronary MCP β†’

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks β€” not a rating.

GitHub stars
3
Stargazers on the source repository.
npm downloads
1.3k
Package downloads in the last 30 days.
Last commit
21d ago
Most recent push to the default branch.
Tools exposed
161
Callable tools this server registers over MCP.
Directory activity
5 views
Config copies, upvotes, and views on AllMCPs.

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about MCP Server

Register the npm package with `npx -y @agentled/mcp-server` and provide `AGENTLED_API_KEY` in the MCP client configuration.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/agentled-mcp-server?style=directory)](https://allmcps.com/mcp/agentled-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/agentled-mcp-server"><img src="https://allmcps.com/api/badge/agentled-mcp-server?style=directory" alt="MCP Server on AllMCPs" /></a>

Technical Specs & Signals

Category🏒Workplace & Productivity
PricingBring your own API key (usage-based cost)
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
AuthAPI key
LicenseMIT
ClientsClaude Desktop, Cursor, Windsurf
Last updatedSep 5, 2026
9/13 checks healthy over the last 32d
Views5
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars3
GitHub Star CountTotal stargazers on GitHub representing community popularity (3 stars).
Last commit21d ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Aug 22, 2026
npm downloads1,329/mo
Monthly npm DownloadsAverage monthly package installs recorded from npm registry statistics.
65Quality signal: Great Β· 65/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools30/30
Adoption & activity8/15
Community engagement1/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 17d ago via OSV.dev Β· @agentled/mcp-server (npm)

β˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in 🏒 Workplace & Productivity β†’Best MCP servers for Workplace & Productivity β†’Alternatives to MCP Server β†’Install in Claude DesktopInstall in CursorInstall in VS Code