mcpField
M
mcp_server_generator

mcp_server_generator

Local
github.com/Sumedh1599Developer Tools0Updated 78w ago

About mcp_server_generator

mcp_server_generator is an open-source library for developers that generates modular MCP server code from a validated schema in TypeScript, Python, or Java. It provides a ready-to-run structure with tools, resources, prompts, and transports.

Key features

  1. 01Generates TypeScript, Python, and Java servers
  2. 02Creates tools, resources, prompts, and transports
  3. 03Produces a modular codebase
  4. 04Uses an SDK-compliant directory structure
  5. 05Supports Claude Desktop integration

Use cases

  1. 01Scaffolding an MCP server from a validated schema
  2. 02Creating server code for CLI execution
  3. 03Preparing a server for Claude Desktop integration

MCP support

It generates MCP server code that exposes tools, resources, and prompts to MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

mcp_server_generator

Introduction

mcp_server_generator is an open-source library designed to automatically generate a full MCP server codebase in Node.js, Python, or Java using a validated schema. The generated server includes modular files that are ready for CLI-based execution or integration with Claude Desktop. This tool ensures that developers can focus on their application logic while the generator handles the boilerplate code and best practices.

Features

  • Multi-Language Support: Supports TypeScript (Node.js), Python, and Java output.
  • Tool Creation: Generates essential tools, resources, prompts, and transports necessary for your server.
  • Modular Codebase: Outputs a structured, modular codebase that is easy to navigate and extend.
  • Ready-to-Run Server: Provides a fully functional server setup with minimal configuration required.
  • Claude Desktop Compatibility: Ensures the generated structure is compatible with Claude Desktop integration.
  • SDK-Compliant Directory Structure: Follows SDK-compliant best practices for directory organization.

Installation Instructions

Node.js (TypeScript)

To install mcp_server_generator in a TypeScript project, use npm:

npm install mcp_server_generator --save-dev
Python

For Python projects, you can install the library using pip:

pip install mcp-server-generator
Java

In your Java project, add the following dependency to your pom.xml if you are using Maven:

<dependency>
    <groupId>com.github.yourusername</groupId>
    <artifactId>mcp_server_generator</artifactId>
    <version>1.0.0</version>
</dependency>

Ensure you have the correct repository configured in your pom.xml if it's hosted on a custom Maven server.

Usage Examples

Node.js (TypeScript)
import { generateServer } from 'mcp_server_generator';

const schema = {
    // Your validated schema here
};

generateServer(schema, 'node', './output')
    .then(() => console.log('Server generated successfully!'))
    .catch(err => console.error('Error generating server:', err));
Python
from mcp_server_generator import generate_server

schema = {
    # Your validated schema here
}

generate_server(schema, 'python', './output')
print("Server generated successfully!")
Java
import com.github.yourusername.mcp_server_generator.McpServerGenerator;

public class Main {
    public static void main(String[] args) {
        try {
            Map<String, Object> schema = new HashMap<>();
            // Populate your validated schema here
            
            McpServerGenerator.generateServer(schema, "java", "./output");
            System.out.println("Server generated successfully!");
        } catch (Exception e) {
            System.err.println("Error generating server: " + e.getMessage());
        }
    }
}

API Documentation

generateServer Function
Node.js/TypeScript
generateServer(schema: object, language: 'node' | 'python' | 'java', outputDir: string): Promise<void>
  • schema: The validated schema to be used for generating the server.
  • language: The target programming language (node, python, or java).
  • outputDir: The directory where the generated files will be placed.
Python
generate_server(schema: dict, language: str, output_dir: str) -> None
  • schema: A dictionary representing the validated schema.
  • language: The target programming language (node, python, or java).
  • output_dir: A string specifying the directory for generated files.
Java
public static void generateServer(Map<String, Object> schema, String language, String outputDir) throws Exception
  • schema: A map containing the validated schema.
  • language: The target programming language (node, python, or java).
  • outputDir: The directory where the generated files will be placed.

License

This project is licensed under the MIT License. See the LICENSE file for details.


Feel free to contribute to this library and make it better!

⚠️ Development Status

This library is currently in early development. Some tests may be failing with the following issues:

Contributions to fix these issues are welcome! Please submit a pull request if you have a solution.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.