[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Plex MCP server: Let your AI agent keep your Plex in order.

> Plex has a documented HTTP API for Plex Media Server and no official MCP server (checked 6 Nov 2026). The API needs an X-Plex-Token and your own code. Cotlet runs 14 Plex tools hosted, 6 of them writes, over MCP for agents and REST for scripts.

Your AI agent checks the Watchlist against your libraries, marks finished series watched, builds playlists and invites friends to the libraries you pick, with your OK before anyone is invited. Sign in to Plex once in your own Cloud Browser. No token to dig out and no server code to run.

- Free 7-day trial, no card
- Unofficial, not affiliated with Plex
- Page: https://cotlet.dev/integrations/plex-api-mcp-server

## What can your AI agent do in Plex?

- Find a title in your libraries
- Add and remove Watchlist titles
- Mark a series watched
- Build a themed playlist
- See who can use your server
- Invite a friend to chosen libraries

## Does Plex have an MCP server or an API?

- The Plex Media Server API covers libraries, search, playlists, collections, playback history and marking items played or unplayed. Its docs list no Watchlist and no library sharing category.
- Plex webhooks send server events to a URL you give them. They need Plex Pass on the owner account and only send events out. Zapier has no Plex app and n8n has no Plex node; Make lists a Plex app with one trigger.
- Community Plex MCP servers on GitHub exist, from 158 stars down to 0. You install one, hand it your server address and token, and keep it running.

| What you need | Plex server API | Community MCP server | Cotlet |
|---|---|---|---|
| Browse and search your libraries | Yes, with your code | Yes | Yes |
| Mark items watched or unwatched | Yes, with your code | Yes | Yes |
| Playlists and collections | Yes, with your code | Yes | Yes |
| Add and remove Watchlist titles | Not in the docs | In some | Yes |
| Invite someone to your libraries | Not in the docs | In one | Yes, after your OK |
| What it takes to start | Token and a developer | Install, token, keep it running | Your Plex login |
| Works inside the ChatGPT and Claude apps, always on | No, code only | If you put it online | Yes, hosted |

Checked 6 Nov 2026. Sources: [Plex Developer: Plex Media Server API](https://developer.plex.tv/pms/), [Plex Support: Managing Library Access](https://support.plex.tv/articles/201105738-creating-and-managing-server-shares/), [Plex Support: Webhooks](https://support.plex.tv/articles/115002267687-webhooks/), [GitHub: vladimir-tutin/plex-mcp-server](https://github.com/vladimir-tutin/plex-mcp-server), [GitHub: dustinhansen/plex-mcp](https://github.com/dustinhansen/plex-mcp)

## How does the Plex MCP server work?

1. **Sign in to Plex.** Once, in a browser we host for you.
2. **Connect your AI agent.** Add one address to its settings.
3. **Ask in plain words.** It does the clicks, you OK any invite.

We never keep your Plex password, and no library invite goes out until you approve it.

## How to connect Plex to your AI agent

1. **Enable Plex for agents.** Create a Cotlet account, sign in to Plex in its Cloud Browser, then press Enable for agents.
2. **Add the Cotlet address.** Enter https://cotlet.dev/mcp/v1 in your agent as a remote MCP server or custom connector.
3. **Approve the link.** Chat apps ask you to sign in to Cotlet once. Editors, n8n and scripts send an API key from the console.

`https://cotlet.dev/mcp/v1` carries Plex next to your other apps. Library access tools work only when you sign in as the owner of the server; the Watchlist needs just your account. Refresh the connector after enabling Plex so the tools load.

Claude:

```
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect

Claude Code:
claude mcp add --transport http cotlet-plex \
  https://cotlet.dev/mcp/v1 \
  --header "Authorization: Bearer $COTLET_API_KEY"
```

ChatGPT:

```
Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth
```

Cursor:

```
// ~/.cursor/mcp.json
{
  "mcpServers": {
    "cotlet-plex": {
      "url": "https://cotlet.dev/mcp/v1",
      "headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
    }
  }
}
```

Codex:

```
# ~/.codex/config.toml
[mcp_servers.cotlet-plex]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY"
```

n8n:

```
MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: plex_read
```

Make, Zapier:

```
Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: plex_write
```

## All 14 Plex MCP tools

### Libraries and search

Search covers your libraries only; a title that sits just on your Watchlist shows up in list_watchlist instead.

- **List libraries** (`list_libraries`, read): The libraries of your Plex server with their type and item count.
- **List library items** (`list_library_items`, read): Items of one library with title, year, watched state and date added.
- **Search media** (`search_media`, read): Search your libraries by title and see which library each match is in.
- **Get media item** (`get_media_item`, read): One movie, show, season or episode with summary, runtime and watched state.

### Watchlist

Plex keeps movies and shows on the Watchlist, not single seasons or episodes. in_library says whether a title also sits on your server.

- **List Watchlist** (`list_watchlist`, read): Titles on your Plex Watchlist, with type, year and whether they are in your libraries.
- **Add to Watchlist** (`add_to_watchlist`, write): Put a movie or show on your Plex Watchlist.
- **Remove from Watchlist** (`remove_from_watchlist`, write): Take a title off your Plex Watchlist.

### Watched state, playlists and collections

Smart playlists cannot be added to by hand, so add_to_playlist skips them. Give a season or show id to mark all its episodes at once.

- **Mark watched or unwatched** (`mark_watched`, write): Mark a movie, episode, season or show as watched or unwatched.
- **List playlists** (`list_playlists`, read): Your Plex playlists with item count and type.
- **Add to playlist** (`add_to_playlist`, write): Add items to one of your playlists, or create it with the first items.
- **List collections** (`list_collections`, read): Collections of a library with their items.

### Library access

Only the owner of a server can see and change who has access. Other accounts get APP_PERMISSION_DENIED.

- **List library access** (`list_library_access`, read): Plex accounts with access to your server and the libraries each can see.
- **Grant library access** (`grant_library_access`, write, asks first): Invite a Plex account to use chosen libraries of your server.
- **Revoke library access** (`revoke_library_access`, write, asks first): Remove a Plex account's access to your server.

Inputs, REST path and example response of every tool: https://cotlet.dev/integrations/plex-api-mcp-server#tools

## Who can see my Plex session, and how do I revoke it?

- **What we store.** Your signed-in Plex browser profile, AES-256-GCM encrypted, in Finland. No password.
- **What your agent gets.** The 14 Plex tools. Never the session cookie or your X-Plex-Token.
- **What the session sees.** What your account sees in Plex Web: libraries, Watchlist, playlists, access list.
- **What no tool touches.** Plex Pass billing, password, two-factor, deleting media and playing video.
- **If Plex signs you out.** Your agent gets a link to sign in again. You type the password, we never do.
- **How to cut access.** Disable for agents, reset the browser, or sign out your devices in Plex.

Our site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory ([live results](https://cotlet.dev/security.md)). There is no SOC 2 report or third-party pentest yet.

## What happens when Plex changes?

- **12 h** between tests of the Plex tools
- **$0** for a call to a Plex tool paused for repair

When Plex moves a button or renames a field in Plex Web, the fix happens on our side and your prompts keep working. [status.cotlet.dev](https://status.cotlet.dev) checks the site, console and API every 3 minutes.

## Approvals, undo and mistakes

1. **Reads your libraries.** list_libraries shows the names the invite can use.
2. **Prepares the invite.** Account and chosen libraries, nothing sent yet.
3. **Waits for your OK.** The invite shows up in your Cotlet console first.
4. **Reports the result.** Account, status invited, libraries shared.

| Action | Undo |
|---|---|
| Add to Watchlist | remove_from_watchlist |
| Remove from Watchlist | add_to_watchlist |
| Mark watched | The same call with watched false; Plex can drop a watched title from your Watchlist |
| Add to a playlist | Remove the items in Plex |
| Grant library access | revoke_library_access; the invite Plex sent is out |
| Revoke library access | grant_library_access invites the person again |

2 of 14 tools ask first: grant_library_access and revoke_library_access, the two that change who can use your server. Watchlist, watched state and playlists are yours alone, so they run at once. Switch the wait off per tool for a scheduled run.

> Library access is the owner's job: sign in as the owner of the server, or these two tools answer permission denied and cost nothing.

MCP call:

```
{
  "name": "grant_library_access",
  "arguments": {
    "account": "sam@example.com",
    "libraries": [
      "Movies"
    ]
  }
}
```

REST:

```
curl -X POST https://cotlet.dev/api/v1/plex/library-access/grant \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"account":"sam@example.com","libraries":["Movies"]}'
```

Response:

```
{
  "account": "sam@example.com",
  "status": "invited",
  "libraries": [
    "Movies"
  ]
}
```

A script or a nightly job calls the same tools over REST at `/api/v1/plex`, with one key and one price, and no X-Plex-Token of your own. The tools table gives the REST path of each tool.

## How much does the Plex MCP server cost?

**About $13 a month** for one server owner with a weekly Watchlist routine, 2,230 credits. Your Plex plan is billed by Plex as before.

| Job | Calls | Credits |
|---|---|---|
| Check the Watchlist against libraries, weekly | 3 × 4 | 120 |
| Add 5 recommended titles to the Watchlist, weekly | 5 × 4 | 200 |
| Mark a finished series watched | 4 × 6 | 240 |
| Build a themed playlist | 3 × 3 | 90 |
| Review who can use the server, weekly | 1 × 4 | 40 |
| Invite a friend to chosen libraries | 2 × 2 | 40 |
| Cloud Browser, 30 days |  | 1,500 |
| Total |  | 2,230 |

- Free 7-day trial, no card
- 10 credits per successful call, MCP or REST
- 50 credits a day for the Cloud Browser
- No X-Plex-Token or server code to manage

Plex publishes no figure for a typical account, so the month is our example: a home server with 3 libraries, a weekly Watchlist check and a few invites. Plex Pass is $6.99 a month or $69.99 a year, billed by Plex (6 Nov 2026). Dollars at the $29 pack rate.

## Plex MCP server: the server API, GitHub or hosted

| Option | What it does | Where it stops |
|---|---|---|
| [Plex Media Server API](https://developer.plex.tv/pms/) | Official REST on your server: libraries, search, playlists, collections, history, mark played. | Token and your own code. No Watchlist or sharing category in the docs. |
| [Plex webhooks](https://support.plex.tv/articles/115002267687-webhooks/) | Your server calls a URL when something plays or is added. | Plex Pass on the owner account. Events out only, nothing changes in Plex. |
| [vladimir-tutin/plex-mcp-server](https://github.com/vladimir-tutin/plex-mcp-server) | Python MCP server: libraries, media, collections, playlists, clients, users. 158 stars, MIT, last commit 13 Oct 2026. | You host it with your server address and token; Claude.ai and ChatGPT need it on public HTTPS. |
| [niavasha/plex-mcp-server](https://github.com/niavasha/plex-mcp-server) | 54 tools, 66 with writes on, plus Sonarr, Radarr and Trakt. 57 stars, MIT, last commit 2 Nov 2026. | You host it. Writes are opt-in; its README lists no library sharing. |
| [dustinhansen/plex-mcp](https://github.com/dustinhansen/plex-mcp) | Libraries, every household member's history, playlists, collections, ratings and the Watchlist. 0 stars, MIT, last commit 3 Nov 2026. | Local stdio on your computer, started 16 Oct 2026. |
| [rollecode/plex-mcp](https://github.com/rollecode/plex-mcp) | Lists 405 operations, including plex.tv sharing and the Watchlist. 0 stars, MIT, last commit 3 Oct 2026. | One person's project, started 15 Sep 2026; you host it. |

If you like running your own tools, a community server is free and covers the library side well. The Plex API suits a developer who wants full control of one server. When you want Plex inside ChatGPT or Claude, always on, with the Watchlist and library invites included and no token on your own computer, that is the part Cotlet covers.

## Who runs Cotlet

Take Group sp. z o.o. builds and runs Cotlet. It is a software company registered in Poland, EU (VAT PL6342984273), operating since 2019 and founded by Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the Plex tools go to contact@cotlet.dev.

## Plex MCP server: questions

### How do I connect Plex to ChatGPT or Claude?

Sign up at cotlet.dev, log in to Plex once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your Plex account through Cotlet, in their phone apps too.

### What can ChatGPT do in Plex?

With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in Plex: check my Watchlist against my libraries; add recommended titles to the Watchlist; mark a finished series as watched. You ask in plain words, and anything that reaches other people waits for your OK first.

### How do I get access?

Sign up free at https://cotlet.dev, open Plex under Integrations in the console and sign in to Plex in its Cloud Browser. The trial starts with your first app, and no card is asked.

### Does my Plex server need to be reachable from the internet?

Yes, the way it must be when you open Plex Web away from home. Plex says Remote Access reaches your server from outside your local network, and that Relay is on by default as a fallback when the app cannot connect directly. The server also has to be online. The Watchlist works without a server.

### Does it stream or play my media?

No. The tools browse, search and manage; nothing plays video. Plex requires a Remote Watch Pass or Plex Pass, or an admin with Plex Pass, to stream personal video remotely since 29 Apr 2025. That rule is about playback, so it does not apply to these tools.

### Who can invite people to my libraries?

Only the server owner, and only for a server they own: Plex does not let you re-share a server shared with you. Restrictions on an invited account need a Plex Pass, and these tools do not set them.

### Does Plex have webhooks?

Yes. Plex webhooks call a URL you set when your server sees an event, and Plex says they need an active Plex Pass on the server owner account. They only send events out. To change something in Plex from an agent, use the tools above.

### Is there an official Plex API?

Yes, for your Plex Media Server: developer.plex.tv/pms documents libraries, search, playlists, collections, playback history and marking items played. It needs an X-Plex-Token and your own code, and its docs list no Watchlist or library sharing category (checked 6 Nov 2026).

### Is the MCP server different from the REST API?

Only in how it is called. Both carry the same 14 tools, inputs and answers, with one API key and one price. Agents use MCP; scripts and HTTP steps use REST.

### Is Cotlet affiliated with Plex?

No. Cotlet is independent and not affiliated with Plex, Inc.

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet.dev is built by Bart Krawczyk and Jake Slugocki, the founders of Take Group sp. z o.o., ul. Wincentego Janasa 4, 40-855 Katowice, Poland. KRS 0000871398, NIP 6342984273, VAT EU: PL6342984273. [About us](https://cotlet.dev/about.md)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.
