yoto-mcp-server
Enables Yoto API tools (audio upload, card management) to be used directly in Warp Agent Mode.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@yoto-mcp-server upload audio.mp3 to Yoto as 'My Audio'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Yoto MCP Server
A Model Context Protocol (MCP) server that bridges Warp AI and the Yoto API, enabling seamless audio uploads and MYO card creation directly from your terminal.
Features
š OAuth Device Flow Authentication - Secure authentication with Yoto API
šµ Audio Upload - Upload MP3 files to Yoto with automatic transcoding
š¦ MYO Card Creation - Automatically create Make Your Own cards
š Token Management - Automatic token refresh and storage
š Native Warp Integration - Use Yoto tools directly in Warp Agent Mode
Related MCP server: YotoMCP Local
Prerequisites
Node.js 18+
A Yoto account
Warp terminal with Agent Mode enabled
Installation
Clone or download this repository:
cd yoto-mcp-serverInstall dependencies:
npm installBuild the project:
npm run buildConfiguration
Add to Warp MCP Settings
Add this server to your Warp MCP configuration file (usually ~/.config/warp/mcp_config.json or similar):
{
"mcpServers": {
"yoto": {
"command": "node",
"args": [
"/absolute/path/to/yoto-mcp-server/dist/index.js"
]
}
}
}Or for global installation:
npm linkThen in your Warp MCP config:
{
"mcpServers": {
"yoto": {
"command": "yoto-mcp-server"
}
}
}Usage
Once configured, restart Warp and you'll have access to three new tools in Agent Mode:
1. Authenticate with Yoto
First, authenticate with your Yoto account:
In Warp Agent Mode:
Please authenticate with YotoOr explicitly:
Use the yoto-auth toolThe server will display a URL and code. Visit the URL in your browser, enter the code, and approve the connection.
2. Check Authentication Status
In Warp Agent Mode:
Check if I'm authenticated with Yoto3. Upload Audio to Yoto
In Warp Agent Mode:
Upload the file /path/to/audio.mp3 to my Yoto player with title "My Audio Track"The server will:
Upload the audio file to Yoto
Wait for transcoding (automatic conversion to Yoto-compatible format)
Create a new MYO card with the audio
Return the card ID
You can then link the card to a physical MYO card using your Yoto app or player.
4. List Your MYO Cards
In Warp Agent Mode:
List all my Yoto cardsReturns a list of all your MYO cards with their IDs and titles.
5. Get Card Details
In Warp Agent Mode:
Get details for Yoto card dyp9bReturns detailed information about a specific card including chapter and track counts.
6. Add Track to Existing Card
In Warp Agent Mode:
Add /path/to/track2.mp3 to Yoto card dyp9b with title "Track 2"Adds a new audio track to an existing MYO card as an additional chapter.
Example Workflow
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.Available Tools
Tool | Description | Parameters |
| Authenticate with Yoto API | None |
| Check authentication status | None |
| Upload audio and create MYO card |
|
| List all MYO cards | None |
| Get details of a specific card |
|
| Add audio track to existing card |
|
Configuration Storage
Authentication tokens are stored securely in ~/.yoto-mcp-config.json. The server automatically handles token refresh.
Development
Build
npm run buildWatch mode
npm run watchRun directly
npm run devTroubleshooting
Authentication Issues
Ensure you're visiting the correct URL and entering the code within the time limit
Check that your Yoto account is active
Try re-authenticating: the old token will be replaced
Upload Failures
Verify the audio file path is absolute and accessible
Ensure the file is in MP3 format
Check file size (very large files may timeout during transcoding)
Token Expiry
Tokens automatically refresh when expired
If refresh fails, re-authenticate using
yoto-auth
API Reference
This server uses the Yoto Developer API. For more information:
Documentation: https://yoto.dev/api/
MYO Cards Guide: https://yoto.dev/myo/uploading-to-cards/
License
MIT
Contributing
Contributions welcome! Please feel free to submit issues or pull requests.
Acknowledgments
Built with the Model Context Protocol SDK
Powered by the Yoto API
Designed for Warp Terminal
Available Tools
6 toolsyoto-add-trackB
Add a track to an existing Yoto MYO card
Inputs: cardId (required), trackTitle (required), audioFilePath (required).
yoto-authA
Authenticate with Yoto API using device authorization flow
Inputs: no named parameters.
yoto-check-authA
Check if authenticated with Yoto API
Inputs: no named parameters.
yoto-get-cardB
Get details of a specific Yoto MYO card
Inputs: cardId (required).
yoto-list-cardsA
List all MYO cards in your Yoto library
Inputs: no named parameters.
yoto-upload-audioC
Upload an audio file to Yoto and create a new MYO card
Inputs: title (required), audioFilePath (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogā¦
TDQS
Scored across 6 tools
Each tool targets a distinct action: authentication, checking auth, uploading audio, adding tracks, listing cards, and fetching card details. The only potential confusion is between yoto-auth and yoto-check-auth, but their descriptions clearly differentiate performing authentication versus checking status.
All tools use a consistent 'yoto-' prefix followed by a verb-noun pattern (e.g., upload-audio, list-cards, get-card). The exception is yoto-auth, which is a single verb, but it still fits the overall style and is readable.
Six tools is well-scoped for a Yoto integration server, covering authentication, uploading, track management, and card queries without unnecessary bloat. Each tool serves a clear purpose.
The tool set covers the core workflow of authenticating, uploading audio to create cards, adding tracks, and querying cards. Minor gaps exist, such as no delete or update card operations, but these are not critical for the primary use case.
Maintenance
Related MCP Connectors
Generate images, video, music and voice from your CLI or AI agent. On-brand AI media toolkit.
Deploy and manage Jade Hosting projects from AI clients. Jade account and OAuth required.
Manage Fly.io apps, Machines, volumes, secrets, Managed Postgres, and Sprites with OAuth.
Run any Relay model (image, video, audio, LLM), poll tasks, upload files and search Relay's docs.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceSign in, create API keys, print OpenAI-compatible env vars, and check credits from the terminal. Optional MCP mode for AI coding agents with tools for credits, models, and environment.34 npm2MIT- FlicenseAqualityBmaintenanceEnables secure local management of Yoto cards, devices, and audio uploads through the official Yoto API, using OAuth PKCE authentication with read-only tools enabled by default and opt-in writes.7-
- AlicenseAqualityBmaintenanceEnables local stdio access to YouTube Music song search, song-radio recommendations, and creation of private playlists in a connected Google account.6MIT
- FlicenseNot gradedqualityBmaintenanceConnects a Yoto library to Claude and ChatGPT so parents can browse and build MYO cards, add tracks, set pixel-art icons, and check player status through natural language. It handles Yoto sign-in via OAuth and stores tokens encrypted so nothing readable is retained.-