项目简介
Volcengine ImageX MCP 是基于 Model Context Protocol (MCP) 开发的服务器端应用。它将火山引擎 ImageX 图片服务的各项能力(包括图片存储、处理、分发、内容安全、AIGC、用量查询等)封装为 MCP 工具和资源,使大型语言模型(LLM)客户端能够以标准化的方式直接调用这些能力,从而实现更加智能和丰富的图片应用。
主要功能点
- 资源访问: 提供接口访问火山引擎 ImageX 中的图片、样式模板、服务配置等资源。
- 工具调用: 封装了ImageX的多种功能,如图片上传、删除、重命名、URL获取、图片质量评估、智能裁剪、文生图、画质修复、OCR识别等。
- Prompt辅助: 提供工具使用说明和API参数描述,帮助LLM更好地理解和构造对ImageX功能的调用。
- 会话管理与能力声明: 支持MCP标准会话管理,并向客户端声明可用的工具、资源和Prompt能力。
- 多种传输协议: 支持通过Stdio等标准MCP传输协议与客户端通信。
安装步骤
- 环境准备: 确保您的系统已安装 Python 3.11 或更高版本。
- 获取火山引擎账号凭证: 您需要一个火山引擎账号,并为其 ImageX 服务开通所需的权限。获取您的 AccessKey 和 SecretKey。您还需要 ImageX 服务的 Service ID 和一个已绑定的域名 (Domain)。
- 安装项目: 使用 pip 安装该项目。通常可以通过类似 'pip install mcp-imagex' 的命令进行安装(具体安装方式请参考仓库说明,此处假设已注册到PyPI或可本地安装)。
- 配置环境变量: 设置以下环境变量,用于服务器连接火山引擎 ImageX 服务:
- 'VOLCENGINE_ACCESS_KEY':您的火山引擎 AccessKey
- 'VOLCENGINE_SECRET_KEY':您的火山引擎 SecretKey
- 'SERVICE_ID':您的 ImageX 服务 ID
- 'DOMAIN':您的 ImageX 服务绑定的域名
服务器配置 (MCP客户端使用)
MCP客户端需要知道如何启动和连接此服务器。以下是一个配置示例,用于指导MCP客户端如何与 Volcengine ImageX MCP 服务器建立Stdio连接。此配置信息由客户端读取和使用,不是服务器端的代码。
{ "mcpServers": { "volcengine": { // 服务器名称,可自定义 "disabled": false, // 是否禁用此服务器 "command": "uvx", // 启动命令,uvx是运行Python包入口点的工具 "args": ["veimagex-mcp"], // 传递给命令的参数,指定要运行的模块 "env": { // 服务器进程所需的环境变量 "VOLCENGINE_ACCESS_KEY": "Your Volcengine AK", // 替换为您的实际AccessKey "VOLCENGINE_SECRET_KEY": "Your Volcengine SK", // 替换为您的实际SecretKey "SERVICE_ID": "Your Service ID", // 替换为您的实际Service ID "DOMAIN": "Your Domain" // 替换为您的实际域名 }, "transportType": "stdio" // 使用Stdio作为传输协议 } } }
基本使用方法
- 启动服务器: 在配置好环境变量的终端环境中,使用MCP客户端指定的启动命令来运行服务器。例如,如果安装时配置了入口点,可能是 'uvx veimagex-mcp' 或直接运行 'veimagex_mcp.cli:main()'。MCP客户端会自动启动和管理服务器进程。
- LLM客户端交互: 通过支持MCP协议的LLM客户端(如 VS Code 的 Copilot Chat),大模型可以发现并调用 Volcengine ImageX MCP 服务器提供的工具。
- 调用工具: 在LLM客户端中,您可以直接向大模型提出与图片相关的需求,大模型会根据其能力和可用的MCP工具(例如,上传图片、查询文件、处理图片等)来决定调用哪个工具,并根据工具的描述和参数要求构造调用请求。您可能需要根据LLM的提示,提供ImageX Service ID、域名、图片路径等信息。
- 获取结果: 服务器执行工具调用(如调用火山引擎ImageX API)后,会将结果通过MCP协议返回给LLM客户端,大模型再将结果呈现给用户。对于生成图片等操作,如果工具返回的是URI,服务器提供了自动转换URI为可访问URL的工具,方便直接预览或使用。
例如,用户可以在LLM客户端中请求“上传我的图片到ImageX”,客户端将调用'upload_image'工具;或者请求“把这张图片变成漫画风格”,客户端可能会调用'convert_image_to_comic_style'工具。
信息
分类
数据库与文件