使用说明
MCP Agentify(可译为“MCP代理化”或根据具体语境调整为更贴切的表述,如“MCP代理服务/解决方案”等)
一个全面的平台,用于从现有的REST API和端点生成具有企业级功能的模型上下文协议(MCP)服务器。该平台同时提供命令行界面(CLI)工具和VS Code扩展两种使用方式。
特点/功能
核心能力
- 🔍 看起来像一个放大镜的符号,通常用来表示搜索、查看细节或观察的意思。在中文里,这个符号本身没有直接的翻译,但可以根据上下文理解为“查看”、“观察”或“搜索”。例如:“🔍 我们需要仔细查看这个细节。” 智能分析自动检测和分析REST API、Node.js项目以及OpenAPI规范
- 🚀 火箭或快速前进的象征(注:这个表情符号本身没有直接对应的中文翻译,但通常用来表示火箭、快速前进或加速等意象) 快速生成创建支持TypeScript的全功能MCP服务器
- 🛠️(扳手,常用于表示工具或修理) 可配置的可定制的模板和生成选项
- 📚 书籍 文档齐全生成全面的文档和示例
- 🧪(实验器材或科学实验的象征) 测试准备就绪包括测试文件和设置
- 🎯(瞄准目标) 多语言支持支持JavaScript、Python、Java、Go、PHP和Ruby项目
企业功能
- 🔐 安全JWT认证、基于角色的访问控制(RBAC)、输入验证、审计日志
- 🔌(电源插头) 插件系统可扩展的架构,支持自定义插件
- 💬 交互模式带有智能默认设置的引导式安装向导
- 📊 表格、数据图表 丰富的分析功能项目分析,提供深入见解
- 🔄 旋转或循环的符号,常用来表示重复、循环或进行中的过程。 自动更新自动检查更新并发送通知
VS Code 集成
- 🎨(颜料/艺术创作的象征) **丰富的用户界面(Rich UI)**视觉项目分析与终点检测
- ⚡ 闪电符号(通常表示速度、能量或警示) 快速操作一键生成和设置
- 🔍(放大镜图标,常用于表示搜索、查看细节等动作) **IntelliSense(智能感知)**MCP开发中的代码片段和自动完成功能
- 📋 代表“待办事项”或“清单”的意思,可直接翻译为“待办事项”或“清单”。 任务集成内置的 VS Code 任务和命令
安装
命令行界面工具(CLI Tool)
npm install -g mcp-agentify
或者直接使用 npx:
npx mcp-agentify generate --project ./my-api
VS Code 扩展
-
来自 VS Code 市场 (推荐):
- 打开 VS Code
- 前往“扩展”(
Ctrl+Shift+X) - 搜索“MCP Agentify”
- 点击安装
-
从VSIX文件:
code --install-extension mcp-agentify-1.0.0.vsix -
手动安装:
- 下载该
.vsix来自发布版本的文件 - 打开 VS Code → 扩展 → “...” → 从 VSIX 安装
- 下载该
快速入门
CLI 使用方法
- 分析你的项目:
agentify analyze --project ./my-rest-api
- 生成MCP服务器:
agentify generate --project ./my-rest-api --output ./my-mcp-server
- 交互式设置:
agentify interactive
- 运行生成的服务器:
cd my-mcp-server
npm install
npm run build
npm start
VS Code 扩展使用
- 打开你的API项目 在 VS Code 中
- 打开命令面板 (
Ctrl+Shift+P) - 运行“MCP Agentify:分析项目” 检测终点
- 使用“MCP Agentify:生成MCP服务器” 创建您的服务器
- 或者使用“MCP Agentify:快速设置” 用于一键生成
该扩展程序提供了丰富的用户界面,包括项目概览、端点检测和视觉反馈功能。
命令
generate
从现有项目生成一个MCP服务器:
agentify generate [options]
选项:
-p, --project <path>- 项目目录的路径(默认:“.”)-o, --output <path>- 生成的MCP服务器的输出目录(默认:“./mcp-server”)-t, --type <type>- 项目类型:rest-api,nodejs,openapi(默认:“auto”)-c, --config <path>- 配置文件路径--dry-run- 展示不创建文件时将会生成的内容
示例:
# Generate from current directory
agentify generate
# Generate from specific project with custom output
agentify generate --project ./api --output ./my-mcp-server
# Generate from OpenAPI spec
agentify generate --project ./swagger.json --type openapi
# Dry run to see what would be generated
agentify generate --dry-run
analyze
分析现有项目,查看将检测到哪些终端点:
agentify analyze [options]
选项:
-p, --project <path>- 项目目录的路径(默认:".")-t, --type <type>- 项目类型:rest-api,nodejs,openapi(默认:“auto”)--json- 将分析结果输出为JSON格式
示例:
# Analyze current directory
agentify analyze
# Analyze specific project
agentify analyze --project ./my-api
# Get JSON output
agentify analyze --json > analysis.json
init
初始化一个配置文件:
agentify init [options]
选项:
-o, --output <path>- 配置文件输出路径(默认:“./agentify.config.json”)
配置
创建一个配置文件以自定义生成过程:
agentify init
这会产生一个 agentify.config.json 文件:
{
"serverName": "my-mcp-server",
"description": "Generated MCP server",
"version": "1.0.0",
"outputFormat": "typescript",
"includeTests": true,
"includeDocumentation": true,
"excludeEndpoints": [],
"transformRules": []
}
配置选项
serverName- 生成的MCP服务器的名称description- MCP服务器的描述version- 版本号outputFormat- 输出格式:“typescript”或“javascript”includeTests- 生成测试文件includeDocumentation- 生成文档excludeEndpoints- 要排除的端点数组(格式:“METHOD:/路径”)transformRules- 转换端点名称或参数的规则
支持的项目类型
Node.js 项目
自动检测以下中的终端节点:
- Express.js 应用程序
- Fastify 应用程序
- Koa 应用程序
- NestJS 应用程序
支持的图案:
app.get('/users', handler);
router.post('/users/:id', handler);
fastify.put('/users/{id}', handler);
OpenAPI/Swagger
支持:
- OpenAPI 3.x 规范
- Swagger 2.x 规范
- JSON和YAML格式
REST API 项目
检测各种语言的终端点:
Python(Django、Flask、FastAPI):
@app.route('/users', methods=['GET'])
@router.get('/users/{id}')
Java(Spring Boot):
@GetMapping("/users")
@RequestMapping(value = "/users", method = RequestMethod.POST)
围棋(Gin,此处为音译,实际围棋英文多用Go表示;Echo可能指回声或某种特定含义,但在此上下文中不明确,若作为围棋的别称则不常见):
router.GET("/users", handler)
e.POST("/users/:id", handler)
PHP(Laravel):
Route::get('/users', 'UserController@index');
Ruby(Rails):
get '/users', to: 'users#index'
生成的MCP服务器
生成的MCP服务器包括:
文件结构
my-mcp-server/
├── src/
│ ├── index.ts # Main MCP server
│ ├── tools/ # Individual tool implementations
│ └── types/ # TypeScript type definitions
├── tests/ # Test files (if enabled)
├── docs/ # Documentation (if enabled)
├── package.json
├── tsconfig.json
├── .env.example
└── README.md
特点/特性
- 完全符合MCP(管理控制计划/最大持续功率等,具体含义根据上下文确定)要求实现了模型上下文协议规范
- 类型安全全面支持TypeScript,配备完善的类型定义
- 错误处理全面的错误处理和验证
- 环境配置可通过环境变量进行配置
- **记录(日志)**内置日志记录和调试支持
- 测试为所有生成的工具编写单元测试
- 文档自动生成的API文档
在MCP客户端中的使用
生成的服务器可以与任何兼容MCP的客户端一起使用:
{
"mcpServers": {
"my-api": {
"command": "node",
"args": ["path/to/my-mcp-server/dist/index.js"]
}
}
}
高级用法
自定义模板
创建自定义模板以进行生成:
- 创建一个
templates/项目中的目录 - 添加Handlebars模板(
.hbs文件) - 配置中的引用:
{
"customTemplates": "./templates"
}
转换规则
在生成过程中修改端点名称和参数:
{
"transformRules": [
{
"pattern": "get_user_by_id",
"replacement": "getUser",
"type": "endpoint"
}
]
}
排除终端节点
在生成过程中跳过某些终端节点:
{
"excludeEndpoints": [
"GET:/health",
"POST:/internal/*"
]
}
贡献;做出贡献
- 为仓库创建分支(或:克隆仓库)
- 创建一个特性分支
- 进行你的更改
- 添加测试
- 提交一个拉取请求
许可证
MIT 许可证 - 详情请参阅 LICENSE 文件。
VS Code 扩展功能
MCP Agentify VS Code 扩展提供了丰富的开发体验:
活动栏视图
- 项目概述框架检测、终端计数和项目统计
- 检测到的终端节点所有已发现API端点的交互式列表
- 生成的服务器创建的MCP服务器管理
- 插件插件状态和配置
命令
MCP Agentify: Analyze Project- 检测API端点MCP Agentify: Generate MCP Server- 创建带有选项的MCP服务器MCP Agentify: Interactive Setup- 向导引导MCP Agentify: Quick Setup一键生成MCP Agentify: View Endpoints- 浏览检测到的终端节点MCP Agentify: Install CLI- 安装/更新CLI工具
代码片段
mcp-server- 完整的MCP服务器模板mcp-tool- 工具定义和处理程序mcp-resource- 资源提供者模板mcp-prompt- 提示模板
设置
配置扩展行为:
{
"mcp-agentify.autoAnalyze": true,
"mcp-agentify.outputDirectory": "./mcp-server",
"mcp-agentify.preferredFormat": "typescript",
"mcp-agentify.enableSecurity": false
}
企业安全功能
MCP Agentify 包含全面的安全功能:
认证与授权
- 基于JWT的认证基于令牌的安全认证
- **基于角色的访问控制(RBAC)**细粒度的权限管理
- API密钥管理安全的API密钥生成和验证
数据保护
- 输入验证基于Joi模式的请求验证
- 密钥管理敏感数据的安全存储与处理
- 审计日志记录对所有操作进行防篡改记录
安全监控
- 漏洞扫描自动化安全漏洞检测
- 访问监控实时访问模式分析
- 安全警报对可疑活动进行自动报警
插件架构
通过自定义插件扩展MCP Agentify:
内置插件
- REST API分析器检测并分析REST端点
- 模板引擎可定制的代码生成模板
- 安全插件企业安全功能
- 文档生成器自动化API文档
自定义插件开发
// Example plugin structure
module.exports = {
name: 'my-custom-plugin',
version: '1.0.0',
analyze: async (project) => {
// Custom analysis logic
},
generate: async (analysis, config) => {
// Custom generation logic
}
};
交互模式
启动交互式安装向导:
agentify interactive
特点:
- 项目检测自动检测框架和结构
- 智能默认设置智能配置建议
- 逐步指导清晰的提示和帮助文本
- 进度跟踪视觉进度指示器
- 配置验证实时验证输入
更新管理
通过自动更新检查保持最新状态:
- 版本检查自动检查新版本
- 更新通知桌面通知:有可用更新
- 更改日志显示查看发布说明和更改内容
- 背景更新非侵入式更新过程
性能与可靠性
- 高效分析快速项目扫描和终端检测
- 内存优化生成过程中内存占用低
- 错误恢复强大的错误处理和恢复能力
- 进度跟踪长操作的实时反馈
- 并发处理并行处理以实现更快的生成
