MCP服务器创建器🏗️
](https://badge.fury.io/py/mcp-server-creator) 
一个强大的模型上下文协议(MCP)服务器,可以创建其他MCP服务器!此元服务器提供用于动态生成FastMCP服务器配置和Python代码的工具。
🚀 快速开始
使用pip安装
pip install mcp-server-creator使用uvx运行(推荐)
uvx mcp-server-creator作为模块运行
python -m mcp_server_creator特性
- 动态服务器创建:动态创建新的MCP服务器配置
- 工具生成器:添加带有参数、返回类型和实现的自定义工具
- 资源管理器:使用模板支持添加静态和动态资源
- 代码生成:为您的服务器生成完整、可运行的Python代码
- 文件导出:将生成的服务器直接保存到Python文件
- 模板示例:内置示例服务器以演示功能
用法
作为MCP服务器
MCP Server Creator本身就是一个MCP服务器,可以与Claude Desktop或任何MCP客户端一起使用。
Claude桌面配置
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"mcp-server-creator": {
"command": "uvx",
"args": ["mcp-server-creator"]
}
}
}程序化使用
from mcp_server_creator import create_server, add_tool, generate_server_code
# Create a new server configuration
result = create_server(
name="My API Server",
description="A custom API integration server",
version="1.0.0"
)
# Add a tool
add_tool(
server_id="my_api_server",
tool_name="fetch_data",
description="Fetch data from the API",
parameters=[{"name": "endpoint", "type": "str"}],
return_type="dict",
implementation='return {"data": f"Fetched from {endpoint}"}'
)
# Generate the code
code = generate_server_code("my_api_server")
print(code)可用工具
服务器管理
create_server:创建新的MCP服务器配置list_servers:列出内存中的所有服务器配置get_server_details:获取特定服务器的详细信息
工具管理
add_tool:将工具添加到现有服务器
- 支持同步和异步工具 - 具有类型和默认值的自定义参数定义 - 自动导入管理
资源管理
add_resource:将资源添加到现有服务器
- 固定数据的静态资源 - 带参数的动态资源模板 - 自定义MIME类型
代码生成
generate_server_code:为服务器生成完整的Python代码save_server:将生成的服务器代码保存到文件create_example_server:创建一个完整的天气服务示例
示例:创建天气服务
import asyncio
from mcp_server_creator import create_server, add_tool, add_resource, save_server
async def create_weather_service():
# Create the server
create_server(
name="Weather Service",
description="Get weather information",
version="1.0.0"
)
# Add a weather tool
add_tool(
server_id="weather_service",
tool_name="get_weather",
description="Get current weather for a city",
parameters=[
{"name": "city", "type": "str"},
{"name": "units", "type": "str", "default": '"celsius"'}
],
return_type="dict",
is_async=True,
implementation='''
# Your weather API logic here
return {
"city": city,
"temperature": 20,
"units": units,
"condition": "sunny"
}'''
)
# Add a resource
add_resource(
server_id="weather_service",
uri="weather://{city}/current",
name="Current Weather",
description="Get current weather data",
is_template=True,
implementation='return {"city": city, "weather": "sunny"}'
)
# Save to file
await save_server("weather_service", "weather_service.py")
# Run the creation
asyncio.run(create_weather_service())发展
设置
git clone https://github.com/GongRzhe/mcp-server-creator.git
cd mcp-server-creator
pip install -e .测试
python test_mcp_creator.py需求
- Python 3.8+
- 快速MCP>=0.1.0
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
贡献
欢迎投稿!请随时提交拉取请求。
作者
龚日哲- gongrzhe@gmail.com
