@ateam-ai/mcp
A-Team MCP Server — build, validate, and deploy multi-agent solutions from any AI environment
Tools
ateam_bootstrapREQUIRED onboarding entrypoint for A-Team MCP. MUST be called when user greets, says hi, asks what this is, asks for help, explores capabilities, or when MCP is first connected. Returns platform explanation, example solutions, and assistantateam_authSign this session in to an A-Team workspace (tenant) with an API key — for a caller that holds the key OUTSIDE the chat: a local (stdio) ateam-mcp process reading it from a file, a platform proxy, a script, a self-hosted setup. A session muateam_get_specGet the A-Team specification — schemas, validation rules, system tools, agent guides, and templates. Start here after bootstrap to understand how to build skills and solutions. Use 'section' to get just one part of the skill spec (much smalateam_get_workflowsGet the builder workflows — step-by-step state machines for building skills and solutions. Use this to guide users through the entire build process conversationally. Returns phases, what to ask, what to build, exit criteria, and tips for eaateam_get_examplesGet complete working examples that pass validation. Study these before building your own.ateam_design_advisorCONSULT THIS DURING DESIGN — before and while you design a skill/solution. If this call fails, your design is unchecked: do not write storage code on a store you picked before asking. ateam_get_spec('connector-multi-user') → storage_decisioateam_spec_searchSemantic search over the FULL ateam platform /spec documentation — the deep fallback behind ateam_design_advisor. Ask a natural-language 'how do I…' question and get the most relevant doc chunks (with their topic + heading), then read the fateam_build_and_runDEPLOY THE CURRENT MAIN BRANCH TO A-TEAM CORE. ⚠️ HEAVIEST OPERATION (60-180s): validates solution+skills → deploys all connectors+skills to Core (regenerates MCP servers) → health-checks → optionally runs a warm test → then ateam_github_puateam_test_skillSend a test message to a deployed skill and get the execution result. Wait modes (wait_for): • 'root' (default, back-compat) — wait until the message's root job completes, return single-job result. Fast, ignores any sub-skills the root dateam_test_notificationFire a REAL notification at an existing actor in a deployed solution — for end-to-end testing of the system-initiated notification path (telegram/push/app channels). Unlike ateam_test_skill and ateam_conversation (a test turn answered in tateam_conversationChat with a deployed solution (auto-routed; no skill_id). ALWAYS ASYNC: returns a chain_id at once; the reply is NOT here. Poll ateam_chain_status(chain_id) every ~2s until chain_done === true (by chain, never by job); ateam_get_chain(chaiateam_test_pipelineTest the decision pipeline (intent detection → planning) for a skill WITHOUT executing tools. Returns intent classification, first planned action, and timing. Use this to debug why a skill classifies intent incorrectly or plans the wrong acateam_test_voiceSimulate a voice call with text, not audio. A person's key reaches the skill (skill job included); with no person on the key, or a phone caller, Core refuses the skill call today (C6): test it with ateam_conversation. Each turn returns respateam_patchSurgically update ANY field in a skill or solution definition, redeploy, and optionally re-test — all in one step. ⚠️ MERGE-BY-DEFAULT (v0.4.0) — Arrays are protected from silent replace. Bare array writes on solution.linked_skills / ui_plateam_get_solutionRead solution state — definition, skills, health, status, or export. Use this to inspect deployed solutions. status and health also answer `running`: the commit last deployed, the ref asked, who deployed it and when, and whether the solutioateam_list_solutionsList all solutions deployed in the Skill Builder.ateam_delete_solution⚠️ IRREVERSIBLE — THIS CLEARS THE WHOLE TENANT, not just the named solution. TENANT === SOLUTION. It removes EVERY skill and connector from the tenant's Core registry, including any ORPHAN that no longer belongs to a solution, and deletes tateam_delete_skill⚠️ IRREVERSIBLE — kills the running MCP process, unregisters from skill registry, deletes the Mongo record, drops from solution.skills[] and solution.linked_skills, and removes the skill's files from Builder FS. ALSO REMOVES THE SOURCE: `skateam_delete_connector⚠️ CASCADING — any skill whose engine.bootstrap_tools or tools[] name a tool from this connector will FAIL its next execution. Stops and deletes the connector from A-Team Core; drops references from the solution definition (grants, platformateam_show_skill_minimalShow the minimal authoring view of a skill — persona + connectors + handoff_when + style + policy guardrails only. ~10× smaller than ateam_get_solution(view:'skills') for the same skill. Use this when you only need the irreducible author coateam_show_solution_minimalShow the minimal authoring view of a solution — name + description + style + routing_mode + identity_mode + skill ids + connector ids only. Skips deployed metadata, handoffs (auto-generated), grants, ui_plugins, validation results. Use thisateam_log_progressRecord that a build STEP is done, so a later run does not redo it. Write it AS IT HAPPENS, never at the end — the runs that most need a journal are the ones the clock kills. WHY: a continuation cannot otherwise tell what the previous run aateam_get_progressWhat this build has already ACHIEVED — read it FIRST when continuing a run, before any orientation call. Returns the CURRENT status per step (latest entry wins) plus recent history. Then build only the steps that are ABSENT or not yet `verateam_log_lessonRecord ONE lesson this run learned, so the NEXT run — which starts empty — does not relearn it. Log it the moment a tool misleads you AND you find a way through. You cannot edit or delete earlier lessons; supersede them: `supersedes` takesateam_get_lessonsRead what EARLIER runs on this solution learned — the CURRENT lessons, newest first, bounded, each with its `id`. Call this during orientation, BEFORE planning: it is the only thing that carries context across runs, and it is cheap. Each enateam_create_connectorScaffold a NEW MCP connector with server.js + package.json + README: a defineConnector skeleton (@ateam-ai/sdk/serve): you write handlers; caller identity arrives as ctx. Where its data goes: ateam_get_spec('connector-multi-user') → storageateam_create_pluginScaffold a UI plugin (iframe HTML, RN TSX, or both) inside an existing connector. Writes the boilerplate (imports, theme/bridge hooks, postMessage protocol, default export shape); you fill in the component body. 'iframe' = HTML (web + phoneateam_upload_connectorUpload connector code to Core and restart it. Then the skills that import this connector's tools are redeployed when they need it — a redeploy of the WHOLE skill as the Builder holds it, so its other connectors' tools and any saved edit notateam_get_execution_logsGet execution logs for a solution — recent jobs with step traces, tool calls, errors, and timing. Essential for debugging what actually happened during skill execution. (Advanced.)ateam_test_statusPoll the progress of an async test. Pass chain_id for the WHOLE run (recommended — the root job finishing does NOT mean the run finished; a handoff may still be going). Pass job_id to poll one job alone: iteration count, tool call steps, stateam_get_chainInspect the full chain tree — the whole run rooted at chain_id, walking down through every handoff and askAnySkill subcall. Use when a chain has already run and you want to analyze the structure: which skill called which, how deep the callateam_chain_statusSLIM chain status — the chip-quick poll. Given a chain_id (from ateam_conversation), returns the WHOLE-CHAIN aggregate status cheaply: chain_status + chain_done (true only when the ENTIRE chain — root job + every handoff + askAnySkill subcaateam_get_widget_catalogGet the live catalog of widgets (UI plugins) available in this tenant's solution. Returns platform-bundled + solution-bundled + skill-declared widgets, each with a paste-ready how_to_use block (solution.json snippet + opener_call + persona_ateam_test_abortAbort a running test. Pass chain_id to abort the WHOLE run — every job in the chain — and get back which ones stopped. Aborting by job_id stops that job only, leaving handoffs running. Stops at the next iteration boundary. The abort uses thateam_test_connectorCall ONE tool on a running connector DIRECTLY and get its raw result — no skill, no guardrails, no user turn. It proves a tool's plumbing (arguments in, result out). It can NOT prove a step that waits for a person — a confirmation, an approateam_get_connector_sourceRead a connector's AUTHORED source — the code the Builder holds as the source of record (its authored store, or GitHub). Returns a file manifest, or one file's content with path:'<file>'. Use this BEFORE patching or rewriting a connector, sateam_get_deployed_connector_sourceRead the DEPLOYED copy of a connector — the files ADAS Core is actually running. This is a runtime projection of the last successful deploy, NOT the source of record: it can differ from the authored source, and it may exist for a connectorateam_recover_connector_sourceADOPT the deployed copy of a connector as its AUTHORED source. The only sanctioned Core→Builder direction, and deliberately explicit: it is never part of a deploy. Use it when a connector is running in Core but has no authored source (ateaateam_get_metricsGet execution metrics — timing, tool stats, bottlenecks, signals, and recommendations. (Advanced.)ateam_verifyONE call that returns the REAL runtime end-state of a solution — connectors connected + tools discovered, every declared widget actually rendering, skills deployed — with the EXACT failing gaps. Use this instead of guess-and-check after a dateam_github_pushPush the solution to its GitHub repo. When it runs, what it writes, and what it keeps as the branch holds it: ateam_get_spec({ topic: "overview", search: "github/push" }).ateam_github_pullDeploy a solution FROM its GitHub repo. Reads .ateam/export.json + connector source from the repo and feeds it into the deploy pipeline. Use this to restore a previous version or deploy from GitHub as the source of truth. It REPLACES the Buateam_github_statusCheck if a solution has a GitHub repo, its URL, and the latest commit. Use this to verify GitHub integration is working for a solution.ateam_get_repository_bindingWhich repository is this solution? Read-only; never returns a credential. Returns the repository id, owner, repo, web and clone URLs, default branch, production_branch (`main`) and development_branch (`dev`), and a status: linked, provisionateam_github_readRead any file from a solution's GitHub repo. Returns the file content. Use this to read connector source code, skill definitions, or any versioned file. Default reads `dev`, the working branch your writes land on (the Builder picks it whenateam_github_patchEdit a file in the solution's GitHub repo and commit — ONE file per call. Modes: 1. FULL FILE: provide `content` — replaces entire file (good for new files or small files) 2. SEARCH/REPLACE: provide `search` + `replace` — surgical edit withateam_github_writeWrite a NEW file to the solution's GitHub repo — one file per call. A file that ALREADY EXISTS is changed with ateam_github_patch search/replace (send only the lines that change), never rewritten whole here: streaming a whole file costs minateam_github_logView commit history for a solution's GitHub repo. Shows recent commits with messages, SHAs, timestamps, and links. Default reads `dev`, the working branch your writes land on (the Builder picks it when no ref is passed). Pass `ref: 'main'`ateam_github_diffPRE-FLIGHT BEFORE PROMOTE. Compares `dev` (head) vs `main` (base) by default — shows exactly which commits and files are about to ship if you call ateam_github_promote() next. Use this when you want to: • Review changes before promotingateam_verify_consistencyCheck that the Builder filesystem state and GitHub state are in sync for a solution. Read-only probe — does NOT trigger a deploy. Returns { ok: true, consistent, drifts: [{path, kind}] }: • consistent: true + drifts: [] if everything matateam_github_promoteSHIP DEV TO PROD. Moves `main` forward to the exact version tried on `dev` (no merge commit) and auto-tags the new main HEAD as prod-YYYY-MM-DD-NNN. Use after testing your dev work, when you're ready to deploy changes to production. Workflateam_github_sync_from_mainBRING `dev` UP TO DATE WITH `main` — merges main into dev. The mirror of ateam_github_promote. REPAIR TOOL FOR AN OLD REPO — not a step of building or shipping. main now only moves to a commit dev already has, so dev does not fall behind iateam_github_rollbackRESTORE `dev` TO A PROMOTED VERSION. Puts the files of a previous promoted version (an exact promoted-version tag) back on `dev` as a new commit on top of it, history preserved, and deploys nothing by itself. Production is never rolled backateam_github_list_versionsList the prod-YYYY-MM-DD-NNN tags each ateam_github_promote wrote for a solution — the points ateam_github_rollback can restore dev to. Shows tag name, date, counter, and commit SHA. Solutions older than 2026-05-19 may also carry retired saateam_verify_surfacePROVE a connector ui_plugin actually renders WITH DATA — the required evidence that a user-visible UI fix is done. A plugin fetches its data over postMessage from its parent window, so opening its iframe alone shows the empty state and 'conateam_connector_logsRead what a connector process actually PRINTED to stderr. This is the only place a connector's internal failure is visible: a tool that catches its own error still returns ok:true, and the widget then renders an empty state that looks likeateam_inspect_dataRead what is STORED for this workspace (conversations, jobs, messages, memories, configuration) when debugging needs the data, not just the logs. You get the data, never the database: read-only, this workspace only, credentials removed ([reateam_redeployRe-deploy skills WITHOUT changing any definitions. ⚠️ HEAVY OPERATION: regenerates MCP servers (Python code) for every skill, pushes each to A-Team Core, restarts connectors, and verifies tool discovery. Takes 30-120s depending on skill couateam_status_allShow GitHub sync status for ALL tenants and solutions in one call. Requires master key authentication. Returns a summary table of every tenant's solutions with their GitHub sync state.ateam_sync_allSync ALL tenants: ateam_github_push for each solution (what it writes, and what it keeps: ateam_get_spec({ topic: "overview", search: "github/push" })), then pull GitHub → Core MongoDB. Requires master key authentication. Returns a summary
Install
npx -y @ateam-ai/mcp@0.4.119
Configure in Claude / Cursor
{
"mcpServers": {
"ateam-ai-mcp": {
"command": "npx",
"args": [
"-y",
"@ateam-ai/mcp@0.4.119"
]
}
}
}Source
- Source:ariekogan/ateam-mcp
- License:MIT
- npm weekly:94
- Updated:2026-10-29
More in this category
资料来自官方仓库与 MCP 接口探测,以官方最新文档为准;安装第三方 MCP server 前请自行评估安全风险。