Jellyfin MCP. Manage Your Entire Media Library with Conversational AI
Use Jellyfin to manage your entire media library directly through conversation. This MCP lets you browse movies, TV shows, and music collections, check server health, and track playback progress without logging into an interface. You can get detailed information on any item or user account instantly from your AI agent.
Give Claude and any AI agent real-world access
See the root libraries (like Movies or Music) and query all items within them.
Retrieve deep metadata, including IDs and descriptions, for a single movie or show episode.
Tell the server when you start watching something, update your current position, or notify it that playback has ended.
Get core operational details about the Jellyfin setup, including version and OS information.
List all active users or verify a user's credentials by name and password.
Ask an AI about this
Waiting for input…
What AI agents can do with Jellyfin (Plex Alternative) MCP with 11 Tools
These tools let you perform specific actions on your Jellyfin server—from checking system versions to managing playback status—all through natural language commands.
Make your AI actually useful.
Add this MCP to Claude, Cursor, or Windsurf and your AI stops guessing. It gets real tools to look things up, take action, and handle the stuff you keep doing by hand.
Start using Jellyfin (Plex Alternative) MCPAuthenticate By Name
Verifies a user's identity by submitting their name and password.
Get Current User
Fetches information about the account that is currently logged into the server.
Get Item
Retrieves full details, including descriptions and IDs, for a specific media item.
Get Playback Info
Gathers the necessary information to start playing any piece of content on the...
List Items
Searches and reports all available media items within the entire library.
List Users
List all users (Admin only)
List Virtual Folders
Shows a list of all top-level libraries configured on the server (e.g., Movies, Music).
Session Playing Progress
Updates the system with how far along you are in watching a piece of media.
Session Playing Stopped
Sends a signal to the server that your current playback session has ended.
Session Playing
Notifies the server when you begin playing media content.
Get System Configuration
Retrieves the global settings and configuration details for the entire Jellyfin...
Get System Info
Provides essential basic server facts, such as its version number and operating system.
Security and governance baked right in.
Pick your AI client below to get set up. Just create a Vinkius account, subscribe, and you're instantly up and running. We handle the entire backend infrastructure, delivering out-of-the-box support for HTTPS Streamable, SSE, and OAuth2—zero messy routing required.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on each call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with Jellyfin (Plex Alternative), then connect any of our 5,200+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 5,200+ others, all in one place
- Add new capabilities to your AI anytime you want
- Connections are secured and governed automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog weekly
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Jellyfin. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS CLOUD
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on each call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Managing media libraries usually means switching between too many apps.
Today, if you want to know what's in your library or update the status on a show you just watched, you have to open the Jellyfin web interface. You click into the 'TV Shows' tab, scroll down, find the title, and manually hit the progress button—all while switching contexts and dealing with browser lag.
With this MCP, that entire process disappears. You simply tell your AI agent what you want to do, whether it's querying all available shows or updating `session_playing_progress`. The data flows directly from the server into your chat window. It’s instant control.
Get full system visibility with get_system_info
Before, checking if the server was running the latest OS or version required SSHing into the machine and running manual commands. You’d have to interpret logs and check multiple dashboard widgets just to feel safe.
Now, you ask your agent, 'What is the system status?' It uses `get_system_info` and gives you a clean, direct answer about the version and OS right where you are working. That's immediate peace of mind.
What Jellyfin MCP does for your AI
Connecting your self-hosted Jellyfin instance to your favorite AI client gives you complete command over your media vault using natural conversation. Instead of navigating complex web dashboards, you talk to the system and it performs actions. You can ask what's available in your root libraries or request a list of specific movies and shows currently stored on the server.
Furthermore, if you need to monitor how the system is running—checking things like the version number or OS details—you just ask. This capability lets developers test API interactions easily, while media enthusiasts get total control over their collection from right in your chat window. When you connect this MCP through Vinkius, you gain a single access point to manage everything, making sure your media management stays inside your workflow.
019e38b0-1621-72fc-aa03-f67dddefdb15 How to set up Jellyfin MCP
The bottom line is that this connector turns your media server into an actionable resource for any compatible AI client.
First, subscribe to this MCP within Vinkius and provide your specific Jellyfin Server URL and API Key.
Next, tell your AI agent exactly what you need—for example, 'List all TV shows in the library' or 'What is the server version?'
Your agent sends a request through the connection; the MCP retrieves the data from Jellyfin and passes it back to you as readable text.
Who uses Jellyfin MCP
Anyone managing large, self-hosted digital collections needs this. It's critical for home lab users who need to monitor system integrity without a dashboard, and developers building applications that rely on media metadata.
Uses the MCP to check their entire video library or track playback progress from an AI chat instead of opening Plex/Jellyfin.
Uses it to run status checks, like getting basic server information (get_system_info), ensuring the media stack is healthy and operational.
Tests API interactions or needs specific metadata details for a project, using tools like list_items to query content in natural language.
Benefits of connecting Jellyfin MCP
Don't manually click through folders. You can check your entire catalog instantly by using list_items or asking to browse root libraries, making content discovery effortless.
Keep track of viewing progress without hassle. Use functions like session_playing_progress and session_playing so the server knows exactly where you left off when you step away.
System monitoring becomes part of your chat routine. Getting system facts via get_system_info lets you check the OS or version number instantly, which is huge for home lab users.
Handling user accounts is simple. You can list all connected users with list_users, or validate credentials using authenticate_by_name without switching apps.
Getting deep content context is fast. If a friend asks about a title, you use get_item to retrieve detailed metadata and IDs instantly for them.
Jellyfin MCP use cases
Diagnosing playback issues
A user notices their media player isn't tracking progress. They ask the agent, 'What is the current session status?' The agent responds by using get_playback_info, allowing them to diagnose if the server needs a manual update via session_playing_progress.
Building an inventory script
A developer needs all available titles for a new app feature. They ask the agent to 'List every show and movie in the library.' The agent uses list_items, providing a comprehensive list of content that can then be processed by code.
Checking system readiness
A user just installed Jellyfin on a new box. They ask, 'Tell me about the server.' The agent uses get_system_info to report the current version and operating system details in plain text.
Onboarding new users
An admin needs to verify a contractor's access. They ask, 'Can I check if John Doe has an account?' The agent runs authenticate_by_name, confirming the user's status and providing their details.
Jellyfin MCP tradeoffs
What to watch out for, and the recommended way to handle each one.
Trying to get data without context
Asking, 'Show me the episode details.' The agent can't answer because it doesn't know which item you mean. It needs more information than just a vague request.
Always narrow your query first. Use list_virtual_folders to identify the library (e.g., TV Shows), then use list_items within that folder, and finally ask for details using get_item with the specific ID.
Ignoring system status checks
Assuming everything works because the media loads fine on your screen. The underlying API might be stale or running an old version.
Run a health check first. Use get_system_info to verify the server's current version and OS details before attempting any major operations.
Attempting playback without setup
Just asking, 'Play this movie.' The system fails because it needs explicit permission and data on what to play.
Before playing, you must use get_playback_info to get the required start data. Then, tell the agent to initiate playback using session_playing.
When to use Jellyfin MCP
Use this MCP if your workflow requires continuous interaction with a self-hosted media server's internal state—like monitoring playback or verifying user access. It is perfect for developers building tools that need read/write access to content metadata and system health metrics, or for advanced users who want full control without GUI clicks. Don't use this if you only need basic file storage viewing; those are better handled by simple cloud file connectors. If your goal is purely managing user credentials across dozens of different services, look at a dedicated Identity Provider connector instead.
Frequently asked questions about Jellyfin MCP
How do I list all my root libraries using Jellyfin MCP? +
You simply ask your agent to list the virtual folders. The tool list_virtual_folders gives you a clean breakdown of every top-level library—like 'Movies' or 'Music'—configured on your server.
Can I check if a user exists in Jellyfin using the MCP? +
Yes, you can. Use list_users to get a full roster of all accounts. If you need to verify credentials for a specific person, use authenticate_by_name.
What is the difference between list_items and get_item in Jellyfin MCP? +
list_items gives you a broad query of all content available within a library. get_item, however, requires knowing the specific item ID to retrieve deep, detailed metadata about just that single piece of media.
How do I tell Jellyfin that I started watching something? +
You initiate playback using the session_playing function. This notifies the server immediately and ensures your activity is logged correctly for tracking purposes.