Yoto MCP服务器
模型上下文协议(MCP)服务器,桥接Warp AI和Yoto API,实现无缝音频上传和直接从终端创建MYO卡。
特性
- 🔐 OAuth设备流身份验证 -使用Yoto API进行安全身份验证
- 🎵 音频上传 -通过自动转码将MP3文件上传到Yoto
- 📦 MYO卡创建 -自动创建自制卡
- 🔄 许可证管理 -自动令牌刷新和存储
- 🚀 原生曲程集成 -在曲速代理模式下直接使用Yoto工具
先决条件
- Node.js 18+
- Yoto账户
- 启用代理模式的曲速终端
安装
- 克隆或下载此存储库:
cd yoto-mcp-server- 安装依赖项:
npm install- 构建项目:
npm run build配置
添加到扭曲MCP设置
将此服务器添加到Warp MCP配置文件中(通常 ~/.config/warp/mcp_config.json 或类似):
{
"mcpServers": {
"yoto": {
"command": "node",
"args": [
"/absolute/path/to/yoto-mcp-server/dist/index.js"
]
}
}
}或者进行全局安装:
npm link然后在Warp MCP配置中:
{
"mcpServers": {
"yoto": {
"command": "yoto-mcp-server"
}
}
}用法
配置后,重新启动Warp,您将可以在代理模式下访问三个新工具:
1.与Yoto进行身份验证
首先,使用您的Yoto帐户进行身份验证:
在曲速代理模式下:
Please authenticate with Yoto或者明确地:
Use the yoto-auth tool服务器将显示URL和代码。访问浏览器中的URL,输入代码,然后批准连接。
2.检查身份验证状态
在曲速代理模式下:
Check if I'm authenticated with Yoto3.上传音频到Yoto
在曲速代理模式下:
Upload the file /path/to/audio.mp3 to my Yoto player with title "My Audio Track"服务器将:
- 将音频文件上传到Yoto
- 等待转码(自动转换为Yoto兼容格式)
- 使用音频创建新的MYO卡
- 返回卡ID
然后,您可以使用Yoto应用程序或播放器将卡链接到物理MYO卡。
4.列出您的MYO卡
在曲速代理模式下:
List all my Yoto cards返回所有MYO卡及其ID和标题的列表。
5.获取卡详细信息
在曲速代理模式下:
Get details for Yoto card dyp9b返回特定卡片的详细信息,包括章节和曲目计数。
6.向现有卡添加曲目
在曲速代理模式下:
Add /path/to/track2.mp3 to Yoto card dyp9b with title "Track 2"将新的音轨添加到现有的MYO卡中作为附加章节。
工作流示例
User: Please authenticate with Yoto
[Server displays URL and code]
[User visits URL and approves]
✅ Successfully authenticated with Yoto API!
---
User: Upload hop-little-bunnies.mp3 to Yoto with title "Hop Little Bunnies"
[Server uploads and transcodes]
✅ Successfully uploaded audio to Yoto!
Card ID: dyp9b
Title: Hop Little Bunnies
You can now link this card to a physical MYO card using your Yoto app or player.可用工具
| 工具 | 说明 | 参数 |
|---|---|---|
yoto-auth | 使用Yoto API进行身份验证 | 无 |
yoto-check-auth | 检查身份验证状态 | 无 |
yoto-upload-audio | 上传音频并创建MYO卡 | audioFilePath, title |
yoto-list-cards | 列出所有MYO卡 | 无 |
yoto-get-card | 获取特定卡的详细信息 | cardId |
yoto-add-track | 将音轨添加到现有卡中 | cardId, audioFilePath, trackTitle |
配置存储
身份验证令牌安全地存储在 ~/.yoto-mcp-config.json。服务器自动处理令牌刷新。
发展
构建
npm run build观看模式
npm run watch直接运行
npm run dev故障排除
身份验证问题
- 确保您访问了正确的URL并在规定时间内输入了代码
- 检查您的Yoto帐户是否处于活动状态
- 尝试重新验证:旧令牌将被替换
上传失败
- 验证音频文件路径是否绝对且可访问
- 确保文件为MP3格式
- 检查文件大小(非常大的文件在转码过程中可能会超时)
令牌到期
- 令牌过期时自动刷新
- 如果刷新失败,请使用重新进行身份验证
yoto-auth
API 参考
此服务器使用Yoto Developer API。更多信息:
- 文档:https://yoto.dev/api/
- MYO卡指南:https://yoto.dev/myo/uploading-to-cards/
许可证
麻省理工学院
贡献
欢迎投稿!请随时提交问题或拉取请求。
致谢
- 与 模型上下文协议SDK
- 由 API尤托
- 专为 经纱终端
