AnyList MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| COTLET_API_KEY | Yes | Your Cotlet.dev API key, used to authorize the MCP server (e.g. as a Bearer token in the Authorization header, or via the COTLET_API_KEY environment variable when running locally). Get a key at https://cotlet.dev/app. Without it, tool calls fail with "Set COTLET_API_KEY." |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
AnyList through Cotlet.dev. Call anylist_guide first. Set COTLET_API_KEY (https://cotlet.dev/app).
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| anylist_guideA | How to work in AnyList (shopping lists, recipes and meal plans): its screens and the sign-in link. Call this first. |
| anylist_statusA | Check that your Cotlet.dev account and AnyList are ready: account, credits and AnyList connection. |
| anylist_openA | Open a AnyList page in your signed-in Cloud Browser (default https://www.anylist.com) to work with shopping lists, recipes and meal plans. |
| anylist_readA | Read the current AnyList page: its text and numbered buttons, links and fields. |
| anylist_clickC | Click a numbered element on the current AnyList page. |
| anylist_typeB | Type text into a numbered field on the current AnyList page. |
| anylist_closeA | Close the AnyList browser session when the work is done, so credits stop running. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Each tool maps to a distinct step in a browser-automation loop: guide (instructions), status (account check), open/close (session lifecycle), and read/click/type (page interaction). There is no meaningful overlap — open vs read vs click vs type are clearly separable actions, and guide vs status address different concerns.
All tools use a uniform anylist_ prefix with a single short verb (guide, status, open, close, read, click, type) in snake_case. The convention is predictable throughout and easy to infer for any future tool.
Seven tools is well-scoped for a browser-automation server: lifecycle (open/close/status), guidance, and a minimal interaction triad (read/click/type). Every tool earns its place with no filler.
The open→read→click/type→close loop covers the core workflow for interacting with AnyList, plus status and guide for setup. Minor gaps exist — no explicit scroll, navigation, or wait/select-element operation — but agents can largely work around these via the existing primitives.