Тестовый MCP-сервер AVC на Python.
基于 MCP 协议的视频增强服务,作为 MCP Client-Server 与 FastAPI HTTP Server 交互。
提供以下 MCP Tools:
create_task - 创建视频增强任务(支持 URL 或本地文件上传)get_task_status - 查询任务状态enhance_video_sync - 同步增强视频(阻塞等待)# 使用 pip 安装
pip install avc-test-py-mcp
# 或使用 uv 安装
uv pip install avc-test-py-mcp
git clone https://github.com/yourusername/avc-test-py-mcp.git
cd python_client
# 使用 uv 安装(推荐)
uv pip install -e ".[dev]"
# 或使用 pip 安装
pip install -e ".[dev]"
# 直接运行(安装后)
avc-test-py-mcp --base-url https://mcp.luluhero.com --api-key your-api-key
# 或使用环境变量
export HTTP_API_BASE_URL=https://mcp.luluhero.com
export HTTP_API_KEY=your-api-key
avc-test-py-mcp
编辑 Claude Desktop 配置文件:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"video-enhancement": {
"command": "avc-test-py-mcp",
"args": [
"--base-url",
"https://mcp.luluhero.com",
"--api-key",
"your-api-key"
]
}
}
}
uv run avc-test-py-mcp --base-url https://mcp.luluhero.com --api-key your-api-key
创建视频增强任务(异步)。
参数:
video_source (string, required): 视频 URL 或本地文件路径type (string, optional): 上传类型,默认 "url"
"url" - 网络视频URL, "local" - 本地文件路径resolution (string, optional): 目标分辨率,默认 720p
使用示例:
# URL 方式
{
"video_source": "https://example.com/video.mp4",
"type": "url",
"resolution": "1080p"
}
# 本地文件方式
{
"video_source": "/path/to/local/video.mp4",
"type": "local",
"resolution": "1080p"
}
返回值:
{
"success": true,
"task_id": "xxx",
"status": "wait"
}
查询任务状态。
参数:
task_id (string, required): 任务ID使用示例:
{
"task_id": "task-123-abc"
}
返回值:
{
"success": true,
"task_id": "xxx",
"status": "completed",
"progress": 100,
"video_url": "https://...",
"error_message": null,
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:01:00Z"
}
同步增强视频(阻塞等待完成)。
参数:
video_source (string, required): 视频 URL 或本地文件路径type (string, optional): 上传类型,默认 "url"
"url" - 网络视频URL, "local" - 本地文件路径resolution (string, optional): 目标分辨率,默认 720ppoll_interval (number, optional): 轮询间隔(秒),默认 5timeout (number, optional): 超时时间(秒),默认 600使用示例:
{
"video_source": "https://example.com/video.mp4",
"type": "url",
"resolution": "1080p",
"poll_interval": 5,
"timeout": 600
}
返回值:
{
"success": true,
"task_id": "xxx",
"status": "completed",
"progress": 100,
"video_url": "https://..."
}
当 type 设置为 "local" 时,MCP Server 会:
限制:
| 变量名 | 说明 | 默认值 |
|---|---|---|
HTTP_API_BASE_URL | FastAPI HTTP Server 地址 | https://mcp.luluhero.com |
HTTP_API_KEY | API 认证密钥 | 无 |
# 克隆仓库
git clone https://github.com/yourusername/avc-test-py-mcp.git
cd python_client
# 安装开发依赖
uv pip install -e ".[dev]"
# 运行测试
pytest
# 代码格式化
ruff format .
ruff check --fix .
# 安装构建工具
uv pip install build twine
# 构建分发包
python -m build
# 上传到 PyPI(测试)
python -m twine upload --repository testpypi dist/*
# 上传到 PyPI(正式)
python -m twine upload dist/*
MIT License - 详见 LICENSE 文件