MCP服务器生成器

spawn是一个分析AI代理会话日志、提取可重用工作流模式并生成生产就绪的MCP/FastMCP服务器的工具。

  • by fbratten
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 fbratten/spawn

使用说明

产卵

分析AI代理日志,提取可重用的工作流模式,并生成生产就绪的MCP/FastMCP服务器。

标语: 构建MCP服务器的MCP服务器。


30秒演示

输入:具有重复工作流的AI代理会话日志。

spawn可以:

  1. 解析日志,
  2. 提取重复的工作流模式,
  3. 对哪些值得自动化进行评分,
  4. 生成完整的MCP/FastMCP服务器,
  5. 验证所生成的结构,
  6. 从构建成果中学习。

结果:一个可重用的MCP服务器,而不是一个困在聊天历史中的有用模式。

之前->之后

之前

重复的代理工作流只存在于会话记录中:

Read issue text -> classify issue -> create checklist -> write report

之后

spawn将该模式转换为可重用的MCP/FastMCP服务器,具有:

  • 工具,
  • 测验,
  • pyproject.toml,
  • 自述文件,
  • MCP元数据。

看 examples/generated-mcp/ 以获得紧凑的生成输出样本。

这是给谁的

spawn适用于从混乱的现实世界代理会话中构建人工智能代理系统、MCP生态系统、内部自动化或可重复工具工作流的人。

当工作流不断出现在代理跟踪中,并且应该成为一个明确的、可测试的工具边界时,它尤其有用。

什么卵不是

spawn不是一个通用的编码代理。

它不会取代调用AI的语义判断。它提供了将重复代理工作流转换为可重用服务器所需的MCP工具、评分、模板、验证和内存挂钩。

什么是spawn?

spawn是一个元MCP服务器,它分析AI代理会话日志中的模式,对其可构建性进行评分,并根据这些模式生成完整的MCP服务器实现。

它关闭了循环:你的AI代理发现了一个有用的工作流->spawn提取模式->spawn生成一个可工作的MCP服务器,对其进行编码。

设计原则: AI不可知论者。spawn提供数据和实用程序。调用AI(任何兼容MCP的模型)提供语义理解。没有供应商锁定。

为什么重要

每个AI代理会话都会产生模式:重复的工具序列、多步骤工作流、特定领域的约定。这些模式很有价值,但很短暂——它们只存在于会话日志和内存中。

产卵使它们永久存在。它

  • 从会话日志中提取重复模式
  • 对他们的自动化潜力进行评分
  • 根据评分模式生成生产就绪的MCP服务器
  • 从构建结果中学习,以提高未来的得分

运作原理

Session logs / transcripts
        |
        v
  PARSE (log_parser)
  Extract tool calls, AI actions, user requests
        |
        v
  EXTRACT (pattern_extractor)
  Identify recurring sequences and themes
        |
        v
  SCORE (scoring_engine)
  Rate patterns for buildability (frequency, complexity, feasibility)
        |
        v
  GENERATE (generator_engine)
  Produce complete MCP server: server.py, tools, tests, pyproject.toml
        |
        v
  VALIDATE (validator)
  Verify generated code structure and imports
        |
        v
  LEARN (learning_engine)
  Record outcomes, refine scoring weights

17 MCP工具

主要工具(人工智能驱动的工作流程)

工具 它做什么
get_log_content 解析会话日志,返回结构化数据进行AI分析
find_recurring_themes 表面电位模式的频率分析
define_pattern AI定义了它从内容中识别出的模式
score_patterns 可建造性评分模式(0-100)
generate_preview 提交前预览生成的代码
generate_mcp 根据评分模式生成完整的MCP服务器
validate_mcp 验证生成的服务器结构

库工具

工具 它做什么
list_patterns 列出会话中定义的所有模式
get_pattern 获取单个图案的详细信息
store_pattern 将模式保存到持久库
search_patterns 按关键字或标签搜索模式库
suggest_similar 查找类似的现有模式
learn_outcome 记录构建成功/失败,以优化评分

管道工具

工具 它做什么
run_pipeline 完整的端到端:分析->评分->生成
compare_existing 将模式与现有MCP服务器进行比较
batch_analyze 批量处理多个日志文件

快速开始

# Install
pip install -e ".[dev]"

# Run as MCP server
python -m mcp_builder_mcp.server

# Add to .mcp.json
{
  "spawn": {
    "command": "bash",
    "args": ["-c", "cd /path/to/spawn && .venv/bin/python -m mcp_builder_mcp.server"]
  }
}

示例用法

User: "Analyze my last session log for patterns"
AI: calls get_log_content with the log file
AI: calls find_recurring_themes to identify candidates
AI: calls define_pattern for each promising pattern
AI: calls score_patterns to rank them
AI: calls generate_mcp for the top-scoring pattern
-> Complete MCP server generated: server.py, tests, pyproject.toml, README

建筑

spawn/
├── src/mcp_builder_mcp/
│   ├── server.py              # FastMCP server (17 tools)
│   ├── parser/                # Log parsing (multi-format)
│   │   └── log_parser.py
│   ├── extractor/             # Pattern extraction
│   │   └── pattern_extractor.py
│   ├── scorer/                # Buildability scoring
│   │   └── scoring_engine.py
│   ├── generator/             # Code generation
│   │   ├── generator_engine.py
│   │   ├── validator.py
│   │   └── templates/         # Jinja2 templates for generated code
│   ├── store/                 # Persistence
│   │   ├── pattern_store.py   # JSON-backed pattern library
│   │   ├── learning.py        # Outcome tracking + weight refinement
│   │   └── minna_sync.py      # Optional memory integration
│   └── models/                # Data models
│       ├── pattern.py
│       └── score.py
└── tests/                     # 156 tests (unit + integration + e2e)

评分模型

图案在5个维度上评分(可配置权重):

尺寸 默认重量 测量内容
频率 0.3 模式出现的频率
复杂性 0.2 复杂到足以证明自动化的合理性吗?
可行性 0.2 可作为MCP服务器实现吗?
影响 0.2 自动化此模式的价值
新颖性 0.1 现有工具已经提供了吗?

生成的输出

对于每种模式,spawn都会生成:

  • server.py -使用工具实现完整的FastMCP服务器
  • pyproject.toml -构建配置
  • tests/test_*.py -试验脚手架
  • README.md -文件
  • MCP_INFO.md -MCP元数据

所有生成的代码都使用Jinja2模板(可在 generator/templates/).

有关生成的输出契约的简洁说明,请参见 examples/generated-mcp/.

测试

python -m pytest tests/ -v          # All 156 tests
python -m pytest tests/unit/ -v     # Unit tests
python -m pytest tests/integration/ -v
python -m pytest tests/e2e/ -v

展示

请参阅 产卵展示网站 用于演示和文档。

许可证

麻省理工学院