MS

MCP Server Creator

Created 5 months ago

A powerful Model Context Protocol (MCP) server that creates other MCP servers!

development documentation public

What is MCP Server Creator?

A powerful Model Context Protocol (MCP) server that creates other MCP servers! This meta-server provides tools for dynamically generating FastMCP server configurations and Python code.

Documentation

MCP Server Creator

Quick Start# Install with pip

pip install mcp-server-creator

Run with uvx (recommended)

uvx mcp-server-creator

Run as a module

python -m mcp_server_creator

Features

  • Dynamic Server Creation: Create new MCP server configurations on the fly
  • Tool Builder: Add custom tools with parameters, return types, and implementations
  • Resource Manager: Add static and dynamic resources with template support
  • Code Generation: Generate complete, runnable Python code for your servers
  • File Export: Save generated servers directly to Python files
  • Example Templates: Built-in example server to demonstrate capabilities

Usage# As an MCP Server

The MCP Server Creator is itself an MCP server that can be used with Claude Desktop or any MCP client.

Claude Desktop Configuration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "mcp-server-creator": {
      "command": "uvx",
      "args": ["mcp-server-creator"]
    }
  }
}

Programmatic Usage

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)

Available Tools# Server Management

  • create_server: Create a new MCP server configuration
  • list_servers: List all server configurations in memory
  • get_server_details: Get detailed information about a specific server

Tool Management

  • add_tool: Add a tool to an existing server
  • Supports both sync and async tools
  • Custom parameter definitions with types and defaults
  • Automatic import management

Resource Management

  • add_resource: Add a resource to an existing server
  • Static resources for fixed data
  • Dynamic resource templates with parameters
  • Custom MIME types

Code Generation

  • generate_server_code: Generate complete Python code for a server
  • save_server: Save generated server code to a file
  • create_example_server: Create a complete example Weather Service

Example: Creating a Weather Service

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())

Development# Setup

git clone https://github.com/GongRzhe/mcp-server-creator.git
cd mcp-server-creator
pip install -e .

Testing

python test_mcp_creator.py

Requirements

  • Python 3.8+
  • FastMCP >= 0.1.0

License

MIT License - see LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Server Config

{
  "mcpServers": {
    "mcp-server-creator-server": {
      "command": "npx",
      "args": [
        "mcp-server-creator"
      ]
    }
  }
}

Links & Status

Repository: github.com
Hosted: No
Global: No
Official: Yes

Project Info

Hosted Featured
Created At: Jul 02, 2025
Updated At: Aug 07, 2025
Author: GongRzhe - [email protected]
Category: community
License: MIT License
Tags:
development documentation public