API客户端生成工具

Kiota MCP Server 是一个将Kiota CLI命令作为MCP工具暴露的服务,用于生成类型安全的API客户端代码,支持多种编程语言和OpenAPI规范。

  • by sebastienlevert
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 sebastienlevert/kiota-mcp

使用说明

Kiota MCP服务器

MCP服务器,将所有Kiota CLI命令公开为MCP工具,用于生成API客户端。

概述

Kiota MCP服务器为Kiota CLI提供了一个模型上下文协议接口,使AI助手和MCP客户端能够:

  • 🔍 搜索 API说明
  • ⬇️ 下载 OpenAPI规范
  • ⚙️ 管理 客户端配置(添加、编辑、删除)
  • 🚀 生成 具有自动依赖检测功能的类型安全API客户端代码
  • ℹ️ 查询 语言支持和依赖信息

先决条件

在使用Kiota MCP服务器之前,请确保您已经:

  • Node.js v20 LTS或更高版本
  • MCP兼容客户端 (例如,克劳德桌面、MCP检查员)

备注:Kiota CLI作为依赖项捆绑在一起,将自动安装。无需单独安装。

安装

npm install kiota-mcp

用法

作为MCP服务器

在MCP客户端设置中配置(例如,Claude Desktop):

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

可用工具

服务器公开了与Kiota CLI命令对应的7个MCP工具:

  1. kiota_search -搜索API说明
  2. kiota_download -下载OpenAPI规范
  3. kiota_client_add -添加新的客户端配置
  4. kiota_client_edit -更新现有客户端配置
  5. kiota_client_generate -生成API客户端代码(带有自动 --ebc 旗帜)
  6. kiota_client_remove -删除客户端配置
  7. kiota_info -查询语言支持和依赖关系

快速开始

1.搜索API

{
  "tool": "kiota_search",
  "params": {
    "searchTerm": "GitHub"
  }
}

2.下载OpenAPI规范

{
  "tool": "kiota_download",
  "params": {
    "openApiUrl": "https://api.github.com/openapi.json",
    "outputPath": "./github-api-spec.json"
  }
}

3.添加客户端配置

{
  "tool": "kiota_client_add",
  "params": {
    "clientName": "github-api",
    "openApiPath": "./github-api-spec.json",
    "language": "typescript",
    "outputPath": "./generated/github"
  }
}

4.生成客户端代码

{
  "tool": "kiota_client_generate",
  "params": {
    "clientName": "github-api"
  }
}

该工具自动执行以下操作:

  • 用途 --ebc 基于错误的取消标志
  • 跑动 kiota info 确定所需的依赖关系
  • 返回依赖项的安装命令

OpenAPI要求

Kiota MCP服务器适用于:

  • ✅ OpenAPI 3.0.x和3.1.x 规格
  • ✅ JSON和YAML 格式
  • ✅ 本地文件路径 或 HTTPS URL
  • ⚠️ 最大文件大小: 10MB

支持的语言

  • TypeScript
  • JavaScript
  • C
  • Java
  • python
  • 去
  • PHP
  • 红宝石
  • 迅速

通过以下方式查询可用语言:

{
  "tool": "kiota_info",
  "params": {}
}

环境

服务器自动设置 KIOTA_CONFIG_PREVIEW=true 对于所有Kiota CLI操作,启用预览功能。

发展

构建

npm run build

测试

# Run all tests
npm test

# Watch mode (TDD)
npm run test:watch

# Coverage report
npm run test:coverage

棉绒

npm run lint
npm run lint:fix

文档

建筑

  • TypeScript 5.7+ 严格模式
  • 维测试 用于测试(TDD工作流程)
  • MCP-SDK 用于协议实施
  • Kiota命令行界面 授权(不重新实施)

许可证

麻省理工学院

贡献

看 贡献.md 发展指南。

宪法

该项目遵循严格的开发原则,记录在 .specify/memory/constitution.md:

  • 🎯 OpenAPI第一架构
  • 📘 TypeScript和现代工具
  • 🧪 测试驱动开发(TDD)-不可协商
  • 📚 卓越文档
  • 👤 用户提供的规格
  • 💻 本地MVP服务器