Skip to main content
Glama

Impart MCP (Agent Orchestration Layer)

TypeScript Bun Node.js MCP npm

impart-mcp 是一个基于 Model Context Protocol (MCP) 的智能体编排服务器。它充当「Agent 编排层」,将具备高度工程化能力的专家智能体(如 Claude Code, Codex CLI 等)封装为标准 MCP 工具,使宿主环境(Claude Desktop, Cursor 等)能够通过统一接口调用这些具备复杂任务处理能力的「超级 Agent」。

🚀 核心特性

  • 多智能体编排:内置 5 种预设专家提示词和工具权限的专业 Agent。

  • 跨平台集成:完美适配 Claude Desktop, Cursor, Gemini CLI 等支持 MCP 的环境。

  • 异步任务处理:支持耗时任务的后台运行与结果轮询。

  • 混合模型供应商:集成 Vercel AI SDK,支持 Claude Code、Codex CLI 和 Gemini CLI 驱动的 Agent。

  • 灵活配置:通过 JSON 配置文件自定义每个 Agent 的模型、开关及参数。

Related MCP server: Agentic Control Framework (ACF)

🛠️ 专家智能体 (Agents)

Agent 名称

核心定位

默认模型

权限

Advisor

架构与调试专家,处理高难度工程问题

codex/gpt-5.2

Read-only

Researcher

代码研究专家,擅长跨仓搜索与文档分析

claude/sonnet

Read-only

Explore

代码定位专家,快速回答「某逻辑在哪里」

gemini/gemini-3-flash-preview

Read-only

Frontend Engineer

UI/UX 实现专家,独立完成高保真组件

gemini/gemini-3-pro-preview

Read-write

Document Writer

技术文档专家,撰写清晰的规范文档

gemini/gemini-3-flash-preview

Read-write

📦 安装说明

方式一:npx 直接运行(推荐)

无需安装,直接在 MCP 配置中使用:

npx impart-mcp@latest

方式二:全局安装

npm install -g impart-mcp
# 或
bun add -g impart-mcp

方式三:从源码安装

前置要求:Bun 或 Node.js >= 18

git clone <repository-url>
cd impart-mcp
bun install  # 或 npm install
bun run build  # 构建产物

🔌 使用集成

配置到 Cursor

  1. 打开 Cursor 设置 -> Features -> MCP。

  2. 添加新的 MCP Server。

  3. Name: impart-mcp

  4. Type: command

  5. Command: npx impart-mcp@latest(或全局安装后直接使用 impart-mcp)

配置到 Claude Code

使用 claude mcp add 命令一键添加:

claude mcp add impart-mcp -- npx impart-mcp@latest

或全局安装后:

claude mcp add impart-mcp -- impart-mcp

⚙️ 配置说明

默认情况下,所有 Agent 使用内置的默认配置即可运行,无需额外配置。

自定义配置(可选)

如需自定义 Agent 的模型或开关,可通过环境变量 AGENT_CONFIG_PATH 指定配置文件路径:

{
  "mcpServers": {
    "impart-mcp": {
      "command": "npx",
      "args": ["impart-mcp@latest"],
      "env": {
        "AGENT_CONFIG_PATH": "/path/to/your/agent-config.json"
      }
    }
  }
}

自动初始化:若指定的配置文件不存在,系统会在首次运行时自动生成包含所有默认值的配置模板,方便你按需修改。

配置文件示例 (agent-config.json):

{
  "advisor": {
    "model": "codex/gpt-5.2",
    "enabled": true
  },
  "researcher": {
    "model": "claude/sonnet",
    "enabled": true
  },
  "frontend-ui-ux-engineer": {
    "model": "gemini/gemini-3-pro-preview",
    "enabled": true
  }
}

📋 API 文档 (MCP Tools)

服务器提供了以下核心工具:

工具名称

类型

描述

call_agent

同步

阻塞式调用,适用于需要立即验证结果的场景

call_agent_async

异步

后台启动任务,返回 task_id,推荐用于耗时较长的搜索任务

get_agent_result

查询

获取异步任务状态,支持 block 模式阻塞等待

call_agents_batch

批量

并行调用多个 Agent,阻塞直到所有任务完成

参数说明

call_agent / call_agent_async:

  • agent:Agent 名称枚举 (advisor | researcher | explore | frontend-ui-ux-engineer | document-writer)

  • prompt:任务描述

  • cwd:工作目录(必填)

  • context:可选上下文信息

👨‍💻 开发说明

命令

描述

bun start

启动服务(Bun 运行时)

bun dev

开发模式(支持热重载)

bun run build

构建产物到 dist/

node dist/server.js

启动服务(Node.js 运行时)

核心逻辑路径

文件

职责

src/server.ts

MCP 协议处理与工具注册

src/agents/

Agent 的 System Prompt 及行为定义

src/providers/

模型供应商适配逻辑

src/types.ts

全局类型定义

📄 许可证

MIT License

Available Tools

4 tools
call_agentA

Synchronous single agent call (BLOCKING, 30-120s).

⚠️ STOP: Choose the Right Tool First

Decision Tree:

  1. Need to run explore/researcher? → Use call_agent_async (NEVER this tool)

  2. Need multiple agents in parallel? → Use call_agent_async × N, NOT call_agents_batch

  3. Need advisor advice or must verify result immediately? → Use this tool

Why async for search agents?

  • explore/researcher may take 30-120s each

  • Blocking wastes your time waiting

  • Async lets you continue working while agents search

Available Agents

  • advisor: Read-only consultation agent. High-IQ reasoning specialist for debugging hard problems and high-difficulty architecture design.

  • researcher: Specialized codebase understanding agent for multi-repository analysis, searching remote codebases, retrieving official documentation, and finding implementation examples.

  • explore: Contextual grep for codebases. Answers "Where is X?", "Which file has Y?", "Find the code that does Z".

  • frontend-ui-ux-engineer: A designer-turned-developer who crafts stunning UI/UX even without design mockups. Code may be a bit messy, but the visual output is always fire.

  • document-writer: A technical writer who crafts clear, comprehensive documentation. Specializes in README files, API docs, architecture docs, and user guides.

Agent → Tool Mapping

Agent

Tool

Reason

advisor

call_agent

Need result immediately

researcher

call_agent_async

Search task, run in background

explore

call_agent_async

Search task, run in background

frontend-ui-ux-engineer

call_agent

Need result immediately

document-writer

call_agent

Need result immediately

Inputs: cwd (required), agent (required), prompt (required), images, +1 more.

call_agent_asyncA

Start agent task in background (NON-BLOCKING). Returns task_id immediately.

Workflow:

  1. call_agent_async → get task_id instantly

  2. Continue your work (read files, think, etc.)

  3. get_agent_result(task_id, block=true) when ready

Why async is better:

  • No wasted waiting time

  • Can launch multiple searches in parallel

  • Check results when YOU need them

Parallel search pattern:

call_agent_async(explore, "Find X") → task_1
call_agent_async(researcher, "Find Y") → task_2
... do other work ...
get_agent_result(task_1, block=false)
get_agent_result(task_2, block=false)
... do other work ...
get_agent_result(task_1, block=true)
get_agent_result(task_2, block=true)

Inputs: cwd (required), agent (required), prompt (required), context.

call_agents_batchA

Execute multiple agents in PARALLEL (BLOCKING until ALL complete).

⚠️ Usually NOT what you want

Prefer call_agent_async × N instead:

  • Async returns immediately, you can continue working

  • Batch blocks until the SLOWEST agent finishes

  • If one agent takes 2min, you wait 2min doing nothing

Only use batch when:

  • You MUST have ALL results before ANY next step

  • Results are interdependent (rare)

  • You're okay blocking for potentially minutes

Example (usually wrong):

{ "calls": [{ "agent": "explore", ... }, { "agent": "researcher", ... }] }

↑ This blocks until both finish. Use call_agent_async × 2 instead.

Example (correct use case): Comparing outputs from multiple agents where you need all results simultaneously.

Inputs: cwd (required), calls (required).

get_agent_resultA

Get result from async agent task.

Parameters:

  • task_id: The task ID from call_agent_async

  • block: If true, wait for completion (default: false)

  • timeout: Max wait time in ms when blocking (default: 300000 = 5min)

Returns task status and result if completed.

Inputs: task_id (required), block, timeout.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.3/5.0

    Scored across 4 tools

    Disambiguation4/5

    The tools are functionally distinct by execution model (sync, async, batch, result retrieval), but call_agent_async and call_agents_batch overlap in parallel execution capability, requiring extensive warnings to steer usage. The descriptions clarify intent, but the ambiguity is notable enough to deduct a point.

    Naming Consistency4/5

    All tools follow a snake_case verb_noun pattern with clear prefixes (call_, get_). However, the distinction between call_agent, call_agent_async, and call_agents_batch is subtle, and pluralization is inconsistent, slightly reducing predictability.

    Tool Count5/5

    Four tools is an appropriate scope for an agent orchestration server, covering the essential sync, async, batch, and result retrieval patterns without bloat or redundancy. Each tool serves a distinct purpose in the workflow.

    Completeness4/5

    The surface covers the core lifecycle of launching and retrieving agent results, including synchronous and asynchronous execution. Missing cancellation or task listing is a minor gap, but the main workflows are well-supported.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      B
      quality
      D
      maintenance
      A Model Context Protocol server that enables Claude users to access specialized OpenAI agents (web search, file search, computer actions) and a multi-agent orchestrator through the MCP protocol.
      4
      10
      -
    • A
      license
      B
      quality
      B
      maintenance
      An MCP orchestration layer that aggregates multiple MCP servers while exposing only 8 meta-tools, dramatically reducing context window usage, and provides SLOP scripting, event monitoring, and tool customization.
      10
      1
      MIT
    • A
      license
      B
      quality
      F
      maintenance
      Enables orchestrating multiple AI CLI agents (Claude Code, Codex, Gemini CLI, Copilot CLI) through a unified MCP interface for task delegation, cross-agent comparison, and specialized tools like code review and debugging.
      14
      9 npm
      14
      MIT