TypeScript API函数生成器

Pocha MCP Server是一个用于自动生成类型安全的TypeScript API函数模板的工具,支持多种HTTP方法和认证处理。

  • by retz8
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 retz8/pocha-mcp-server

使用说明

Pocha MCP服务器

模型上下文协议(MCP)服务器,为Pocha项目生成TypeScript API函数。该服务器提供了一个工具,用于按照一致的模式自动生成类型安全的API函数模板。

特性

  • 生成具有正确类型的TypeScript API函数
  • 支持GET、POST、PUT、DELETE HTTP方法
  • 包括身份验证令牌处理
  • 生成正确的错误处理和响应类型
  • 支持可选参数和返回类型

安装

# Clone the repository
git clone https://github.com/jiohjung98/pocha-mcp-server.git

# Install dependencies
pnpm install

# Build the project
pnpm build

用法

服务器提供了一个名为 generate-api-function 它接受以下参数:

{
  functionName: string;          // Name of the API function to generate
  route: string;                 // API route path (e.g., "/pocha/${pochaid}")
  method: "GET" | "POST" | "PUT" | "DELETE";  // HTTP method
  params?: {                     // Optional array of parameters
    name: string;               // Parameter name
    type: string;               // Parameter type
  }[];
  returnType: string;           // Return type of the API function
}

示例

要生成用于获取Pocha信息的API函数,请执行以下操作:

// Input parameters
{
  "functionName": "getPocha",
  "route": "/pocha/${pochaid}",
  "method": "GET",
  "params": [
    {
      "name": "pochaid",
      "type": "number"
    }
  ],
  "returnType": "PochaInfo"
}

// Generated output
/**
 * @desc getPocha
 * @route GET /pocha/${pochaid}
 */
export async function getPocha(pochaid: number, token: string): Promise<PochaInfo> {
  const url = `/pocha/${pochaid}`;
  try {
    const response = await client.get(url, {
      headers: {
        Authorization: `Bearer ${token}`,
      },
    });

    return response?.data;
  } catch (error) {
    console.log(error);
    throw new Error("Error in getPocha");
  }
}

发展

服务器是使用以下方式构建的:

  • TypeScript
  • MCP TypeScript SDK
  • Zod用于模式验证

开始开发:

# Install dependencies
pnpm install

# Build in watch mode
pnpm dev

项目结构

pocha-mcp-server/
├── src/
│   └── index.ts     # Main server implementation
├── dist/            # Compiled JavaScript
├── package.json
└── tsconfig.json

光标设置

要在Cursor IDE中使用此MCP服务器,请执行以下操作:

  1. 打开Cursor MCP配置文件:

    # macOS
    ~/.cursor/mcp.json
    
    # Windows
    %APPDATA%/cursor/mcp.json
    
    # Linux
    ~/.cursor/mcp.json
    
  2. 将以下配置添加到 mcpServers 对象:

    {
      "mcpServers": {
        "pocha-api-generator": {
          "command": "/opt/homebrew/bin/npx",
          "args": ["-y", "node", "/path/to/your/pocha-mcp-server/dist/index.js"]
        }
      }
    }
    

    替换 /path/to/your/pocha-mcp-server 使用克隆此存储库的实际路径。

  3. 重新启动Cursor以使更改生效。

  4. MCP服务器现在可以在Cursor中使用,您可以使用它通过输入自然语言命令来生成API函数,如:

    Can you create a sample API for pocha project that fetches PochaInfo from "/pocha/${pochaid}" using "pocha-api-generator" mcp?
    

许可证

MIT许可证