[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.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)

# Update AniList anime list progress and scores

> Set status, episode progress and scores on your AniList anime or manga list from a plain-text note, in one run from Claude Code, n8n or a script.

Source: https://cotlet.dev/integrations/anilist-api-mcp-server/update-anime-list-progress

After a binge weekend, your AniList list is behind: six shows need Completed, four need a new episode count, and the scores live in a note on your phone.

Cotlet does it in your own AniList account with list\_media\_list, search\_media and save\_list\_entry, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=anilist) [All AniList tools](https://cotlet.dev/integrations/anilist-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can AniList do this on its own?

AniList's GraphQL API covers this job (checked 17 Oct 2026). The SaveMediaListEntry mutation sets status, score, progress, notes, privacy and custom lists, and UpdateMediaListEntries sets the same values on several entries. You need an OAuth app and an access token, there is no official MCP server, and you write the GraphQL and the paging yourself.

## How you do it in AniList today

1. Open the title on anilist.co and use the list editor to change its status, episode progress and score.
2. Repeat for each title, because the editor works on one entry at a time.
3. Add notes, mark an entry private or put it on a custom list inside the same editor if you want those set.
4. Check your list afterwards, since a wrong status or a title matched to the wrong season is easy to miss in a long list.
5. AniList shows list changes in your activity feed, so each save is also visible to the people who follow you unless the entry is private.

## How to update AniList anime list progress and scores

Prompt

```
On my AniList anime list, take everything in Currently watching that I tell you I finished: set it to Completed, set progress to the last episode, and score it from my notes below. Show me the changes before you save.
```

1. 01  
### Read the current list first  
Your agent calls list\_media\_list for ANIME with the status you name, for example CURRENT, and pages through it. It needs the list to turn "the one with the dragon girl, episode 12" into a media ID that is really on your list.
2. 02  
### Match titles to AniList entries  
Titles from your note are matched against the list. Anything not on the list goes through search\_media, and the agent picks the right season or format by episode count and year instead of the first hit.
3. 03  
### Show the planned changes  
Before saving, the agent prints one line per entry: old status and progress, new status and progress, score. You fix a wrong match here, in plain words, before anything is written.
4. 04  
### Save entry by entry  
save\_list\_entry runs once per title. Setting COMPLETED with progress equal to the episode count keeps the entry consistent. Each call asks for your OK until you switch confirmation off for the tool.
5. 05  
### Report what changed  
The agent lists saved entries and any it skipped, such as a title it could not match, so the note you started with is fully accounted for.

### What you get back

Example data

```
Anime list updates for yourname: 7 saved, 1 skipped
Completed: Frieren (28 of 28, score 9), Dungeon Meshi (24 of 24, score 9)
Progress only: Blue Lock 2 (episode 7)
Status to Dropped: Shows I Skipped (episode 3)
Skipped: "that school one", 3 possible matches, tell me which
```

### Other ways to ask

- Move everything I have not touched for a year from Currently watching to Paused and list them.
- Score these ten titles from my note, but leave status and progress alone.
- Add these manga to Planning and mark them private so they do not show in my activity.
- Every Sunday, ask me for the week's episodes and update progress for those shows.

## What AniList allows, and what to know first

- MediaListStatus has six values: CURRENT, PLANNING, COMPLETED, DROPPED, PAUSED and REPEATING.
- A score is stored in the scoring system the user picked: POINT\_100, POINT\_10\_DECIMAL, POINT\_10, POINT\_5 or POINT\_3.
- Notes allow up to 6000 characters, repeat counts up to 1000 and planning priority up to 255.
- An entry can be private, so it is visible only to its owner.
- List updates also appear as list activity, which an account can switch off for chosen list types in its settings.

save\_list\_entry asks for your OK by default. To run it weekly without you, switch confirmation off for that tool in your dashboard.

Sources: [AniList API Docs: Mutations reference (SaveMediaListEntry)](https://docs.anilist.co/reference/mutation) · [AniList API Docs: MediaListStatus](https://docs.anilist.co/reference/enum/medialiststatus) · [AniList API Docs: ScoreFormat](https://docs.anilist.co/reference/enum/scoreformat) · [AniList API Docs: Authentication](https://docs.anilist.co/guide/auth/)

## Call save\_list\_entry from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/anilist/medias/154587/list-entry/save \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status":"COMPLETED","progress":28,"score":9}'
```

Example response

```
{
"entry_id": 481337021,
"media": {
"media_id": 154587,
"title": "Frieren: Beyond Journey's End"
},
"status": "COMPLETED",
"progress": 28,
"score": 9,
"private": false
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is anilist\_write → save\_list\_entry. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/anilist-api-mcp-server.md#automations)

## AniList tools this automation uses

__Cotlet AniList tools used to update AniList anime list progress and scores__
| Tool | Parameters |
| ----------------- | -------------------------------------------------- |
| list\_media\_list | type, username, status, cursor |
| search\_media | query, type, season\_year, genre, cursor |
| save\_list\_entry | media\_id, status, progress, score, notes, private |

[All 14 AniList tools with descriptions](https://cotlet.dev/integrations/anilist-api-mcp-server.md#tools)

## Frequently asked questions

### Which score scale does my agent use?

Yours. AniList stores a score in the scoring system set on your account, such as 10 points or 100 points, so a score of 9 means 9 out of 10 only if your account uses a 10-point system.

### Is it safe to connect AniList to Cotlet?

Yes. You sign in to AniList yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get AniList once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More AniList automations

- [Triage AniList notifications and reply to activity](https://cotlet.dev/integrations/anilist-api-mcp-server/triage-anilist-notifications.md)
- [AniList API and MCP server: every tool](https://cotlet.dev/integrations/anilist-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to AniList.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with AniList.

[Sign up free](https://cotlet.dev/app/signup?app=anilist)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.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 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.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
