README
🚀 Kaltura 模型上下文协议(MCP)服务器
Kaltura MCP 服务器实现了 模型上下文协议 (MCP),该协议赋予了 AI 模型与 Kaltura 媒体管理功能进行交互的能力。
🚀 快速开始
Kaltura MCP 服务器让 AI 模型能够与 Kaltura 的 API 以标准方式交互,实现上传媒体、获取媒体元数据、搜索媒体、管理类别以及管理用户和权限等功能,简化了将 Kaltura 功能集成到 AI 工作流的过程。
运行以下命令即可快速启动服务器:
docker run -p 8000:8000 ghcr.io/zoharbabin/kaltura-mcp:latest
访问 http://localhost:8000 查看文档。
✨ 主要特性
此服务器使 AI 模型能够:
- 上传媒体到 Kaltura
- 获取媒体元数据
- 搜索媒体
- 管理类别
- 管理用户和权限
📦 安装指南
要求
- Python:3.10 或更高版本(官方支持 3.10、3.11、3.12)
- 操作系统:Linux、macOS、Windows
- 依赖项:请参见
pyproject.toml以获取完整列表
安装方式
使用 Docker
方法 1:使用预构建的 Docker 镜像
最简单的方式是使用我们的预构建多架构 Docker 镜像(支持 x86_64/amd64 和 ARM64/Apple Silicon):
# 拉取最新镜像
docker pull ghcr.io/zoharbabin/kaltura-mcp:latest
# 创建配置文件
cp config.yaml.example config.yaml
# 使用 Kaltura API 凭据编辑 config.yaml
# 运行容器
docker run -p 8000:8000 -v $(pwd)/config.yaml:/app/config.yaml ghcr.io/zoharbabin/kaltura-mcp:latest
方法 2:使用 Docker Compose 本地构建
或者,您可以本地构建镜像:
# 克隆仓库
git clone https://github.com/zoharbabin/kaltura-mcp.git
cd kaltura-mcp
# 使用 Docker Compose 构建并运行
docker-compose up
手动安装
# 克隆仓库
git clone https://github.com/zoharbabin/kaltura-mcp.git
cd kaltura-mcp
# 创建虚拟环境(需要 Python 3.10 或更高版本)
python -m venv venv
source venv/bin/activate # 在 Windows 上:venv\Scripts\activate
# 安装依赖项
pip install -e .
# 配置服务器
cp config.yaml.example config.yaml
# 使用 Kaltura API 凭据编辑 config.yaml
# 启动服务器
python -m kaltura_mcp_server
📚 详细文档
仓库结构
kaltura-mcp-public 仓库包含完整的、自给自足的 Kaltura MCP 服务器实现,包括:
- 所有必要的代码
- 完整的文档
- Docker 支持
- 安装脚本
- 示例客户端
- 测试脚本
配置
默认配置文件为 config.yaml,位于仓库根目录下。您可以在其中指定以下设置:
bind:
port: 8000 # 要绑定的端口,默认为 8000
log_level: INFO # 日志级别(DEBUG、INFO、WARNING、ERROR、CRITICAL)
💻 使用示例
命令行工具(CLI)
kaltura-mcp-cli 是一个用于与 Kaltura MCP 服务器交互的命令行工具。可以通过以下方式安装:
pip install kaltura-mcp-cli
基础用法
# 获取媒体元数据
kaltura-mcp-cli get-media-metadata --id=1234
# 搜索媒体
kaltura-mcp-cli search-media --query="猫"
# 管理用户
kaltura-mcp-cli create-user --name="新用户" --email="new@example.com"
Python 客户端库
kaltura-mcp-client 是一个用于与 Kaltura MCP 服务器交互的 Python 库。可以通过以下方式安装:
pip install kaltura-mcp-client
基础用法
from kaltura_mcp_client import KalturaMCPClient
# 初始化客户端
client = KalturaMCPClient(
host="localhost",
port=8000,
insecure=True # 禁用 SSL 验证(测试环境)
)
# 获取媒体元数据
metadata = client.get_media_metadata(id=1234)
print(metadata)
# 搜索媒体
results = client.search_media(query="猫")
print(results)
🤝 贡献
有关如何为该项目做出贡献的详细信息,请参阅 CONTRIBUTING.md。
📄 许可证
本项目根据 AGPLv3 许可证发布,许可证内容请参见 LICENSE 文件。
微信扫一扫