mcp-toolforge
mcp-toolforge
자연어 도구 설명으로 새 MCP 서버를 생성하는 메타 MCP 서버입니다.
프로젝트 이름, 짧은 설명, 그리고 자연어 도구 설명 목록(예: "fetches the weather for a string city and returns a string summary")이 주어지면, mcp-toolforge는 완전하고 실행 가능한 MCP 서버 프로젝트 — 스키마, 구현, 구성, README, LICENSE — 를 작성하여 설치하고 실행할 수 있도록 준비합니다.
flowchart TD
subgraph Client_Layer["AI Client / Claude Desktop"]
A["Client (Claude, Cursor, etc.)"]
end
subgraph Meta_Server["mcp-toolforge (this repo)"]
M["mcp_toolforge.server"]
G["mcp_toolforge.generator"]
end
subgraph Generated["Generated Server Project"]
P["src/<pkg>/__init__.py"]
S["src/<pkg>/server.py"]
T["tests/test_<pkg>.py"]
R["README.md"]
L["LICENSE"]
PP["pyproject.toml"]
end
A -- "MCP stdio JSON-RPC" --> M
M -- "generate_server tool call" --> G
G -- "writes files" --> P
G -- "writes files" --> S
G -- "writes files" --> T
G -- "writes files" --> R
G -- "writes files" --> L
G -- "writes files" --> PP아키텍처
┌─────────────────────┐ ┌──────────────────────────┐
│ AI Client │ stdio │ mcp-toolforge server │
│ (Claude, Cursor) │──JSON──│ (this repo) │
└─────────────────────┘ RPC └────────┬───────────────┘
│ generate_server
│ (name, description,
│ tool_descriptions, dest)
▼
┌────────────────────────────────────┐
│ generator.generate_project() │
│ parses NL → ToolSpec → ServerSpec │
│ renders: pyproject, server.py, │
│ tests, README, LICENSE │
└────────────────────────────────────┘
│
┌─────────────────┴─────────────────┐
│ Example generated servers │
│ • examples/weather_server │
│ • examples/todo_server │
│ • examples/math_server │
└────────────────────────────────────┘Related MCP server: mcp-creator
빠른 시작
mcp-toolforge 설치
pip install -e ".[dev]"mcp-toolforge 자체 실행(메타 서버)
MCP 서버(stdio transport)로 실행하려면:
{
"mcpServers": {
"mcp-toolforge": {
"command": "python",
"args": ["-m", "mcp_toolforge.server"],
"cwd": "/path/to/mcp-toolforge"
}
}
}또는 독립형 서버 프로젝트를 생성하는 CLI로 실행하려면:
# Interactive wizard
mcp-toolforge -i
# One-shot
mcp-toolforge \
--name my_server \
--description "A server that does X" \
--tool "fetches the weather for a string city and returns a string summary" \
--dest ./my_servergenerate_server 도구 사용
mcp-toolforge가 MCP 서버로 등록되면, AI 에이전트는 다음을 호출할 수 있습니다:
generate_server(
name="my_server",
description="A server that does X",
tool_descriptions=[
"fetches the weather for a string city and returns a string summary",
"adds a string task and returns a string confirmation"
],
dest="/path/to/output" # optional, defaults to /tmp/mcp-toolforge-gen
)이 도구는 dest/<package_name>/에 완전한 프로젝트를 작성하고 요약 문자열을 반환합니다. 생성된 서버는 이후 특정 MCP 클라이언트에 독립적으로 설치하고 등록할 수 있습니다.
자연어 파싱의 작동 방식
각 도구 설명은 다음 패턴을 따라야 합니다:
<VERB> [a/an] <type> <name> [, <type> <name>] ... and returns <type> <description>예:
설명 | 도구 이름 | 매개변수 |
|
|
|
|
|
|
|
|
|
|
|
|
인식되는 매개변수 유형: string, integer, number, boolean, array.
유형이 지정된 매개변수가 감지되지 않으면 자유 형식 query: string 매개변수가 추론됩니다.
예시
examples/에 세 가지 예시 서버가 생성됩니다:
서버 | 패키지 | 도구 | 설명 |
WeatherServer |
|
| 날씨 정보를 가져옵니다 |
TodoServer |
|
| 할 일 목록을 관리합니다 |
MathServer |
|
| 산술 도구입니다 |
각 예시는 자체 테스트를 갖춘 완전히 작동하는 MCP 서버입니다:
cd examples/math_server
pip install -e .
pytest개발
# Install with dev dependencies
pip install -e ".[dev]"
# Run all tests
pytest
# Run end-to-end test against the meta-server over stdio
python e2e_test.py
# Regenerate examples
python make_examples.py테스트
tests/test_generator.py— 생성기(파싱, 스키마 추론, 파일 렌더링, 프로젝트 생성)에 대한 테스트 16개tests/test_server.py— 메타 MCP 서버(도구 목록 나열, 도구 호출, 오류 처리)에 대한 테스트 5개e2e_test.py— 실제 stdio 하위 프로세스로 메타 서버를 실행하고 MCPClient로 연결하는 엔드투엔드 테스트각 예시 서버에는 테스트 4개가 포함됩니다(예시 3개에 걸쳐 총 12개).
모든 테스트는 실제 단언을 사용하며 실제 파일 출력/도구 결과를 확인합니다.
라이선스
MIT — LICENSE를 참조하세요.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for generating rough-draft project plans from natural-language prompts.
Create guides as MCP servers to instruct coding agents to use your software (library, API, etc).
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn intelligent tool that automates the setup of new Model Context Protocol (MCP) server projects through a conversational interface. It generates project structures, technical specifications, and context-rich documentation to streamline AI-assisted development in TypeScript or Python.103MIT
- AlicenseAqualityBmaintenanceA tool that enables AI assistants to conversationally scaffold, build, and publish Python MCP servers to PyPI. It automates the entire development lifecycle, including package naming, tool scaffolding, GitHub repository setup, and package publishing.10MIT
- AlicenseAqualityCmaintenanceGenerates production-ready MCP servers with dual-mode (MCP + CLI) architecture, tests, and documentation. Includes progressive disclosure tools for AI agents and best practices guidance.7Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to generate complete, runnable MCP server projects from natural-language tool descriptions, including schema, implementation, tests, README, and license.MIT