MCP服务器生成器

mcp_server_generator是一个开源库,用于根据验证过的模式自动生成完整的MCP服务器代码库,支持Node.js、Python和Java,帮助开发者专注于应用逻辑而非样板代码。

  • by Sumedh1599
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 sumedh1599/mcp_server_generator

使用说明

mcp_server_generator

引言

mcp_server_generator 是一个开源库,旨在使用经过验证的模式在Node.js、Python或Java中自动生成完整的MCP服务器代码库。生成的服务器包括模块化文件,这些文件已准备好基于CLI执行或与Claude Desktop集成。该工具确保开发人员可以专注于他们的应用程序逻辑,而生成器则处理样板代码和最佳实践。

特性

  • 多语言支持:支持TypeScript(Node.js)、Python和Java输出。
  • 工具创建:生成服务器所需的基本工具、资源、提示和传输。
  • 模块化代码库:输出易于导航和扩展的结构化、模块化代码库。
  • 准备运行服务器:提供功能齐全的服务器设置,所需配置最少。
  • Claude桌面兼容性:确保生成的结构与Claude Desktop集成兼容。
  • SDK兼容目录结构:遵循SDK兼容的目录组织最佳实践。

安装说明

Node.js(TypeScript)

安装 mcp_server_generator 在TypeScript项目中,使用npm:

npm install mcp_server_generator --save-dev

python

对于Python项目,您可以使用pip安装库:

pip install mcp-server-generator

Java

在Java项目中,将以下依赖项添加到 pom.xml 如果你正在使用Maven:

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

确保在您的数据库中配置了正确的存储库 pom.xml 如果它托管在自定义Maven服务器上。

使用示例

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文档

generateServer函数

Node.js/TypeScript

generateServer(schema: object, language: 'node' | 'python' | 'java', outputDir: string): Promise<void>
  • schema:用于生成服务器的已验证架构。
  • language:目标编程语言(node, python,或 java).
  • outputDir:生成的文件将放置的目录。

python

generate_server(schema: dict, language: str, output_dir: str) -> None
  • schema:表示已验证模式的字典。
  • language:目标编程语言(node, python,或 java).
  • output_dir:指定生成文件的目录的字符串。

Java

public static void generateServer(Map<String, Object> schema, String language, String outputDir) throws Exception
  • schema:包含已验证架构的映射。
  • language:目标编程语言(node, python,或 java).
  • outputDir:生成的文件将放置的目录。

许可证

该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。


欢迎为这个图书馆做出贡献,让它变得更好!

⚠️ 开发状态

这个图书馆目前处于早期开发阶段。某些测试可能因以下问题而失败:


欢迎为解决这些问题做出贡献!如果您有解决方案,请提交拉取请求。