mcpField
Y
Yapi Mcp Server

Yapi Mcp Server

ローカル
github.com/tiandashu開発ツール430 週間前に更新

Yapi Mcp Server について

Yapi Mcp ServerはYApiのインターフェース管理データをMCPクライアントに接続し、TypeScript型、モックデータ、APIリクエストコードを生成します。プロジェクト設定を読み込み、取得したYApiデータを30分間キャッシュします。

主な機能

  1. 01yapi.config.jsonの読み込み
  2. 02YApiデータの取得とキャッシュ
  3. 03TypeScript型定義の生成
  4. 04Schemaに基づくモックデータ生成
  5. 05AxiosまたはFetchコードの生成

活用シーン

  1. 01YApiインターフェースの型生成
  2. 02API用モックデータの作成
  3. 03AxiosまたはFetchのリクエスト関数生成

MCP 対応

設定の読み込み、YApiデータの取得、型生成、モックデータ作成、APIコード生成を行う5つのMCPツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"yapi-mcp-server-tiandashu": {
"command": "npx",
"args": [
"-y",
"@vtian/yapi-mcp-server"
]
}
}
}
起動コマンドnpx -y @vtian/yapi-mcp-server

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@vtian/yapi-mcp-server

ツール

5

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
projectPathstringいいえプロジェクトのパス。指定しない場合は現在の作業ディレクトリを使用します

詳細

プロジェクトの README より

YApi MCP Server

这是一个 Model Context Protocol (MCP) 服务器,用于与 YApi 接口管理平台集成,支持自动生成 TypeScript 类型定义、Mock 数据和 API 请求代码。

✨ 功能特性

🔧 核心功能
  • 配置文件读取: 自动读取项目中的 yapi.config.json 配置文件
  • YApi 数据获取: 通过配置的 remoteUrl 获取 YApi 项目的完整接口信息(支持缓存)
  • TypeScript 类型生成: 根据接口响应 Schema 自动生成 TypeScript interface 定义
  • Mock 数据生成: 智能生成符合接口结构的 Mock 测试数据
  • API 请求代码生成: 自动生成 Axios 或 Fetch 风格的 API 请求函数
  • 智能缓存机制: 自动缓存 YApi 数据 30 分钟,减少网络请求

特别说明(强烈推荐!!!)

推荐使用最新的yapi-cli, 相比当前项目支持了以下功能:

  • 支持 cli
  • 支持 mcp
  • 支持 skill
  • 支持多 yapi 项目和多 yapi 空间,配置更方便
  • 改用 yapiopenapi 接口获取,减少上下文占用,更省 token了

✨ 快速开始

1. cursor 中安装 yapi-mcp-server
{
	"mcpServers": {
		"yapi-mcp": {
			"command": "npx",
			"args": ["-y", "@vtian/yapi-mcp-server", "--stdio"]
		}
	}
}
2. 获取 yapi 参数

yapi设置

3. 项目中配置 yapi.config.json

在您的前端项目根目录下创建 yapi.config.json 文件:

{
	"remoteUrl": "https://your-yapi-domain.com/api/open/plugin/export-full?type=json&pid=1437&status=all&token=your-token",
	"type": "yapi",
	"dataKey": "data",
	"mockPath": "src/mocks",
	"typePath": "src/types",
	"apiPath": "src/api"
}
必填字段
  • remoteUrl: YApi 项目导出接口 URL
  • type: 平台类型,固定为 "yapi"
可选字段
  • dataKey: 响应数据字段名,默认 "data"
  • mockPath: Mock 文件输出路径,默认 "src/mocks"
  • typePath: 类型文件输出路径,默认 "src/types"
  • apiPath: API 代码输出路径,默认 "src/api"

✨ 可用工具

本项目提供以下 5 个 MCP 工具,可以通过支持 MCP 协议的客户端(如 Claude Desktop、cursor)调用:

1️⃣ read_config - 读取配置文件

从项目中查找并读取 yapi.config.json 配置文件。

2️⃣ get_yapi_data - 获取 YApi 数据

从 YApi 服务器获取接口数据,支持缓存机制(30 分钟)。

3️⃣ generate_types - 生成 TypeScript 类型

根据接口 JSON Schema 生成 TypeScript 类型定义。

4️⃣ generate_mock_from_yapi - 生成 Mock 数据

根据接口 Schema 智能生成符合结构的 Mock 数据。

5️⃣ generate_api_code - 生成 API 请求代码

生成 Axios 或 Fetch 风格的 API 请求函数代码。

✨ prompt 使用

🔧 yapi 中有哪些接口?

README の画像

🔧 帮我更新一下 yapi 接口数据

README の画像

🔧 帮我生成 109220 的 mock 数据
  • 可以是 yapi 上接口对应的 id,也可以直接是接口名称

README の画像

🔧 帮我根据接口 109220 更新对应的 ts 类型
  • 可以是 yapi 上接口对应的 id,也可以直接是接口名称

README の画像

🔧 帮我根据接口 109220 生成 axios 代码
  • 效果同上

✨ 生成的文件示例

TypeScript 类型定义
/** 用户信息接口 */
export interface UserInfoData {
	/** 用户ID */
	userId: number
	/** 用户名 */
	username: string
	/** 邮箱 */
	email: string
}
API 请求代码 (Axios)
/**
 * 用户信息接口
 */
export const getUserInfo = async (): Promise<UserInfoData> => {
	const response = await axios.get('/api/user/info')
	return response.data
}
Mock 数据
{
	"code": "200",
	"success": true,
	"message": "操作成功",
	"data": {
		"userId": 12345,
		"username": "测试用户",
		"email": "[email protected]"
	}
}

📄 许可证

MIT License

🤝 支持与反馈

如有问题或建议,请通过 Issues 或内部渠道联系开发团队。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。