AnyList API and MCP server Let your AI agent write your AnyList grocery list.

Connect AnyList shopping lists, recipes and meal plans to your own workflow. Use an AI agent through MCP or REST from automation tools and scripts.

  • Free 7-day trial, no card
  • Unofficial, not affiliated with AnyList
AnyList logo AnyList Cloud Browser

12 tools Read and write

Plan, shop, cook

What can you automate in AnyList? Use an AI agent, a workflow or a script.

  • Turn the meal plan into a shopping list

  • Plan dinners from your recipes

  • Add items to a shared list

  • Save a recipe from text

  • Clear the list after the store

  • Check what you buy often

No official API

Does AnyList have an MCP server or an API? No, only voice and a calendar feed.

AnyList has no public API, no developer docs and no MCP server (checked 25 Oct 2026). Cotlet runs 12 AnyList tools hosted, over MCP for agents and REST for scripts.

  • AnyList support wrote in April 2023 that a public API is "a big task" for "a very small team". Nothing has shipped since.
  • The official ways in: Alexa and Siri add items by voice, and an iCalendar link copies the meal plan to your calendar, one way. Zapier, n8n and IFTTT have no AnyList app.
  • About eight community MCP servers on GitHub use AnyList's reverse-engineered API with your AnyList password, on a machine you run.
AnyList with Alexa or Siri, a GitHub MCP server and Cotlet compared
What you need Alexa or SiriGitHub MCP serverCotlet
Add items to a list Yes, by voice Yes Yes, after your OK
Read the list, cross off, clear No Yes Yes
Recipes and the meal plan Read on Echo Show Yes Yes, with Complete
No AnyList password in a config file Yes No Yes, you sign in once
Runs with your computer off Yes If you host it Yes, hosted

Checked 25 Oct 2026. Sources: AnyList Help: Using AnyList with Amazon Alexa · AnyList Help: Viewing Your Meal Planning Calendar in External Apps · AnyList Help: Using AnyList with Siri · AnyList support on a public API (DAKboard discussion)

Set up once

How does Cotlet connect to AnyList? One account, two ways to connect.

  1. 1Sign in to AnyList

    Use your own account in its Cotlet Cloud Browser.

  2. 2Choose MCP or REST

    Connect your agent or create a Cotlet API key.

  3. 3Run your workflow

    Ask your agent or send an HTTP request.

We never keep your AnyList password, and nothing lands on a list your household shares until you approve it. Who can see your session

Any MCP client

Connect AnyList to your agent or workflow

Use MCP with your AI agent, or HTTP requests in n8n, Make, Zapier and scripts. Follow the MCP setup below or jump to the REST guide.

  1. 1

    Enable AnyList for agents. Create a Cotlet account, sign in to AnyList for the Web in its Cloud Browser and press Enable for agents.

  2. 2

    Give your agent the address. Add https://cotlet.dev/mcp/v1 to its MCP server or connector list.

  3. 3

    Let it in. Chat apps open a Cotlet sign-in. Editors, n8n and scripts send an API key made in the console.

AnyList shares https://cotlet.dev/mcp/v1 with every other app in your workspace. Turned AnyList on after you connected? Refresh the connector and its tools appear.

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

Claude Code:
claude mcp add --transport http cotlet-anylist \
  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-anylist": {
      "url": "https://cotlet.dev/mcp/v1",
      "headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
    }
  }
}
Codex
# ~/.codex/config.toml
[mcp_servers.cotlet-anylist]
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: anylist_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: anylist_write
Scripts and HTTP

How to use the AnyList REST API

Create your Cotlet API key

Create a Cotlet API key with access to AnyList and its read operations. Store it as COTLET_API_KEY in your environment or automation platform's credential store.

Sign in to AnyList in its Cotlet Cloud Browser and enable the app for agents. AnyList Complete is required for access through AnyList for the Web.

Make your first AnyList API request

cURL

curl https://cotlet.dev/api/v1/anylist/lists \
  -H "Authorization: Bearer $COTLET_API_KEY"

Read list names before their items

A successful REST call puts the tool output in result. This illustrative response excerpt omits call IDs, messages and credit details.

Illustrative response excerpt

{
  "status": "success",
  "app": "anylist",
  "tool": "list_lists",
  "result": {
    "lists": [
      {
        "list": "Groceries",
        "items_left": 7,
        "items_crossed_off": 3
      }
    ]
  }
}

Read result.lists and pass a returned list name to get_list. These reads expose no cursor, page or offset inputs.

List details omit crossed-off items by default; use include_crossed_off=true when comparing full snapshots. Items expose names rather than stable item IDs, so do not invent ID-based upserts.

Recipe quantities are returned as saved, without scaling. Meal-plan reads require a date range and omit empty days.

AnyList workflows for agents and automations

AnyList workflows you configure
ToolConnect throughExample workflow
n8nHTTP RequestRead shopping-list details into a checklist snapshot with saved categories, quantities and notes.
MakeHTTP > Make a requestRead recipes and recipe details into your private ingredient and recipe archive without scaling quantities.
Python or Node.jsREST APICombine a dated meal plan and recipe details into a household meal briefing without adding groceries.

Send Authorization: Bearer <your Cotlet API key> in request headers. You configure the schedule, destination and record comparisons.

Cotlet reads AnyList; your workflow steps write to your chosen destination. These HTTP workflows do not require a native Cotlet connector or a prebuilt template.

Python and Node.js can use the same HTTP requests without an AI agent. Keep access keys in credentials, outside shared workflow exports.

The API and MCP reference lists operations and inputs. The REST API guide explains authentication, errors and approvals.

6 read, 6 write

AnyList API endpoints and MCP tools

Shopping lists and favorites6

Lists are found by name. Shared lists behave like your own, so everyone on them sees each change. Favorites are kept per list.

  • list_lists Shopping lists of your account with the number of items left on each. read

    Returns every list in the account, with its name and how many items are not crossed off. Use list as the list parameter of the other tools. Shared lists appear like your own.

    MCP callanylist_read → list_lists

    REST endpointGET https://cotlet.dev/api/v1/anylist/lists

    Parameters

    No parameters.

    Example response

    {
      "lists": [
        {
          "list": "Groceries",
          "items_left": 7,
          "items_crossed_off": 3
        },
        {
          "list": "Hardware store",
          "items_left": 2,
          "items_crossed_off": 0
        }
      ]
    }
  • get_list Items of one list with category, quantity, note and whether each is crossed off. read

    Returns the items in the order AnyList shows them, grouped by category. Each item has its name, quantity and note when you set them, and crossed_off. Crossed off items come back only when you ask for them.

    MCP callanylist_read → get_list

    REST endpointGET https://cotlet.dev/api/v1/anylist/list

    Parameters

    Parameters: get_list
    NameTypeDescription
    list string required string Name of the list, as list_lists returns it.
    include_crossed_off boolean boolean Also return crossed off items. Default: false.

    Example input

    {
      "list": "list"
    }

    Example response

    {
      "list": "Groceries",
      "items": [
        {
          "name": "Oat milk",
          "category": "Dairy",
          "quantity": "2",
          "note": null,
          "crossed_off": false
        },
        {
          "name": "Avocados",
          "category": "Produce",
          "quantity": "2",
          "note": "ripe",
          "crossed_off": false
        }
      ]
    }
  • list_favorites Favorite items of one list, the master list of what you buy often. read

    Returns the favorites saved on that list, with the category and the details AnyList keeps for them. An item that is already on the list is marked on_list.

    MCP callanylist_read → list_favorites

    REST endpointGET https://cotlet.dev/api/v1/anylist/favorites

    Parameters

    Parameters: list_favorites
    NameTypeDescription
    list string required string Name of the list. Favorites are kept separately for each list.

    Example input

    {
      "list": "list"
    }

    Example response

    {
      "list": "Groceries",
      "favorites": [
        {
          "name": "Bananas",
          "category": "Produce",
          "on_list": false
        },
        {
          "name": "Oat milk",
          "category": "Dairy",
          "on_list": true
        }
      ]
    }
  • add_list_item Add an item to a list, with optional quantity, note and category. writeasks first

    Adds one item to the list. A shared list shows the change to everyone you share it with. An item that is already on the list is not added twice. By default you confirm each call; you can switch that off for this tool.

    MCP callanylist_write → add_list_item

    REST endpointPOST https://cotlet.dev/api/v1/anylist/list-items

    Parameters

    Parameters: add_list_item
    NameTypeDescription
    list string required string Name of the list.
    name string required string Item name, for example "Oat milk".
    quantity string string Quantity, for example "2".
    note string string Note shown under the item.
    category string string Category as it exists on the list. Without it AnyList picks one.

    Example input

    {
      "list": "Groceries",
      "name": "Oat milk",
      "quantity": "2",
      "category": "Dairy"
    }

    Example response

    {
      "list": "Groceries",
      "item": {
        "name": "Oat milk",
        "category": "Dairy",
        "quantity": "2",
        "crossed_off": false
      },
      "added": true
    }
  • cross_off_item Cross off an item on a list, or put it back. writeasks first

    Changes one item. People sharing the list see it cross off. An unknown item name fails and the list stays as it was. By default you confirm each call; you can switch that off for this tool.

    MCP callanylist_write → cross_off_item

    REST endpointPOST https://cotlet.dev/api/v1/anylist/off-item/cross

    Parameters

    Parameters: cross_off_item
    NameTypeDescription
    list string required string Name of the list.
    name string required string Item name as get_list returns it.
    crossed_off boolean boolean true crosses it off, false puts it back. Default: true.

    Example input

    {
      "list": "list",
      "name": "Jane Doe"
    }

    Example response

    {
      "list": "Groceries",
      "item": "Avocados",
      "crossed_off": true
    }
  • delete_crossed_off_items Delete all crossed off items of a list. writeasks first

    Removes every crossed off item and leaves the rest. Deleted items cannot be brought back through Cotlet. The call returns the names it removed. By default you confirm each call; you can switch that off for this tool.

    MCP callanylist_write → delete_crossed_off_items

    REST endpointDELETE https://cotlet.dev/api/v1/anylist/crossed-off-items

    Parameters

    Parameters: delete_crossed_off_items
    NameTypeDescription
    list string required string Name of the list.

    Example input

    {
      "list": "list"
    }

    Example response

    {
      "list": "Groceries",
      "deleted": [
        "Avocados",
        "Dish soap",
        "Bananas"
      ],
      "items_left": 4
    }

Recipes3

New recipes are saved from text, without photos. Recipes come back as saved, not scaled.

  • list_recipes Recipes in your account, optionally from one recipe collection or matching a search. read

    Returns recipe names with their collections, so you can pick one and call get_recipe. Recipes shared by your household appear with your own.

    MCP callanylist_read → list_recipes

    REST endpointGET https://cotlet.dev/api/v1/anylist/recipes

    Parameters

    Parameters: list_recipes
    NameTypeDescription
    collection string string Name of a recipe collection.
    query string string Words to match in the recipe name.

    Example response

    {
      "recipes": [
        {
          "recipe": "Lemon pasta",
          "collections": [
            "Weeknight"
          ]
        },
        {
          "recipe": "Sheet pan chicken",
          "collections": [
            "Weeknight",
            "Family"
          ]
        }
      ]
    }
  • get_recipe One recipe with ingredients, preparation steps and servings. read

    Returns the ingredients with their quantities, the preparation steps in order and the servings. It reads the recipe as saved and does not scale it.

    MCP callanylist_read → get_recipe

    REST endpointGET https://cotlet.dev/api/v1/anylist/recipe

    Parameters

    Parameters: get_recipe
    NameTypeDescription
    recipe string required string Name of the recipe, as list_recipes returns it.

    Example input

    {
      "recipe": "recipe"
    }

    Example response

    {
      "recipe": "Lemon pasta",
      "servings": 4,
      "ingredients": [
        "400 g spaghetti",
        "2 lemons",
        "60 g parmesan"
      ],
      "steps": [
        "Boil the pasta.",
        "Toss with lemon zest, juice and parmesan."
      ]
    }
  • create_recipe Save a new recipe from text: name, ingredients and steps. writeasks first

    Adds the recipe the way AnyList does when you paste text into it. Household members who share your recipes see it. Photos are not uploaded. By default you confirm each call; you can switch that off for this tool.

    MCP callanylist_write → create_recipe

    REST endpointPOST https://cotlet.dev/api/v1/anylist/recipes

    Parameters

    Parameters: create_recipe
    NameTypeDescription
    name string required string Recipe name.
    ingredients array required array One string per ingredient, with quantity.
    steps array array One string per preparation step.
    servings integer integer Number of servings.
    collection string string Name of a recipe collection to put it in.

    Example input

    {
      "name": "Jane Doe",
      "ingredients": "ingredients"
    }

    Example response

    {
      "recipe": "Lemon pasta",
      "servings": 4,
      "ingredients_saved": 3,
      "steps_saved": 2,
      "collection": "Weeknight"
    }

Meal planning calendar3

Part of AnyList Complete. Ingredients from several recipes are merged into one item by AnyList itself.

  • get_meal_plan Entries of the meal planning calendar between two dates. read

    Returns the recipes and notes on each day of the range, in calendar order. Days with nothing planned are left out.

    MCP callanylist_read → get_meal_plan

    REST endpointGET https://cotlet.dev/api/v1/anylist/meal-plan

    Parameters

    Parameters: get_meal_plan
    NameTypeDescription
    from date required date First day, YYYY-MM-DD.
    to date required date Last day, YYYY-MM-DD.

    Example input

    {
      "from": "2026-10-01",
      "to": "2026-10-01"
    }

    Example response

    {
      "entries": [
        {
          "date": "2026-10-26",
          "type": "recipe",
          "title": "Lemon pasta"
        },
        {
          "date": "2026-10-27",
          "type": "note",
          "title": "Leftovers"
        }
      ]
    }
  • add_recipe_to_meal_plan Put a recipe on a day of the meal planning calendar. writeasks first

    Adds the recipe to that day. The meal plan is shared with your household, so they see the entry. It does not add ingredients to a list; use add_meal_plan_ingredients_to_list for that. By default you confirm each call; you can switch that off for this tool.

    MCP callanylist_write → add_recipe_to_meal_plan

    REST endpointPOST https://cotlet.dev/api/v1/anylist/recipe-to-meal-plans

    Parameters

    Parameters: add_recipe_to_meal_plan
    NameTypeDescription
    recipe string required string Name of the recipe.
    date date required date Day, YYYY-MM-DD.

    Example input

    {
      "recipe": "recipe",
      "date": "2026-10-01"
    }

    Example response

    {
      "date": "2026-10-28",
      "recipe": "Sheet pan chicken",
      "added": true
    }
  • add_meal_plan_ingredients_to_list Add the ingredients of the planned recipes in a date range to a list. writeasks first

    Adds every ingredient of the recipes planned from the first to the last day, the way "Add All Ingredients to List" does in the Meal Plan tab. AnyList combines similar ingredients into one item. It returns the items added. By default you confirm each call; you can switch that off for this tool.

    MCP callanylist_write → add_meal_plan_ingredients_to_list

    REST endpointPOST https://cotlet.dev/api/v1/anylist/meal-plan-ingredients-to-lists

    Parameters

    Parameters: add_meal_plan_ingredients_to_list
    NameTypeDescription
    list string required string Name of the list that receives the ingredients.
    from date required date First day, YYYY-MM-DD.
    to date required date Last day, YYYY-MM-DD.

    Example input

    {
      "list": "list",
      "from": "2026-10-01",
      "to": "2026-10-01"
    }

    Example response

    {
      "list": "Groceries",
      "from": "2026-10-26",
      "to": "2026-11-01",
      "recipes": 5,
      "items_added": 23
    }
Encrypted, revocable

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

  • What we store

    Your signed-in AnyList for the Web profile, AES-256-GCM, in Finland. No password.

  • What your agent gets

    The 12 AnyList tools. Never the session cookie.

  • What the session sees

    Your lists, recipes and meal plan, and what your household shares with you.

  • What no tool touches

    Your subscription, household members, password, and deleting lists or recipes.

  • If AnyList signs you out

    An email with a sign-in link reaches you. We never sign in for you.

  • How to cut access

    Disable for agents, reset the browser or delete the API key. The next call fails.

cotlet.dev has A+ grades on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results). We have no SOC 2 report or third-party pentest yet.

Low account risk

Is it against AnyList's terms? Account safety The terms are silent on automation.

"We also reserve the right to terminate any user's right to access the site or services at any time, in our discretion."
AnyList Terms of Service, last revised 18 Jul 2019

That is the only rule that could reach an agent. The terms have no clause on bots, scraping, reverse engineering or third-party apps, and Home Assistant integrations have read AnyList since 2023. We found no public case of an account closed for automation (checked 25 Oct 2026). AnyList can still end access at its own discretion.

How we keep your account looking like you

  • Your own AnyList account, signed in by you on the official web app
  • One Cloud Browser with its own IP and cookies, not a fresh login per call
  • Every write waits for your OK by default
  • No tool deletes a list, a recipe or a household member
  • If AnyList objects, we pause the AnyList tools for everyone within 24 h

AnyList is a small team on a shared sync service. Keep schedules to a few runs a day; the Home Assistant integration polls no more than once a minute.

Tested every 12 h

What happens when AnyList changes? We repair the tool; your prompts stay the same.

between tests of the AnyList list, recipe and meal plan tools
12 h
for a call to an AnyList tool paused for a fix
$0

AnyList's terms say it may change the service "at any time, with or without notice". When the web app moves something, the fix is ours and your prompts keep working. status.cotlet.dev checks the site, console and API every 3 minutes.

6 tools ask first

Approvals, undo and mistakes Your household sees nothing until you approve.

  1. 01 Reads the week Planned recipes and notes for the next 7 days.
  2. 02 Checks the list What is already on Groceries stays as it is.
  3. 03 Waits for your OK The add shows up in your Cotlet console first.
  4. 04 Reports back Recipes used and items added, after AnyList merges them.
Which AnyList actions can be undone
ActionUndo
Cross off an itemYes, cross_off_item with crossed_off false
Delete crossed off itemsRe-add them from Recent Items in AnyList
Add an item or meal plan ingredientsCross off or delete them in AnyList
Add a recipe to the meal planRemove the entry in AnyList
Create a recipeDelete it in AnyList; it syncs to your household first

6 of 12 tools ask first: every write, because lists, recipes and the meal plan sync to the people you share them with. Reads run at once. Switch the wait off per tool, for example for add_list_item on a list only you use.

AnyList keeps recently crossed off and deleted items on its Recent Items screen, so a wrong clear is a few taps to fix.

MCP call
{
  "name": "add_list_item",
  "arguments": {
    "list": "Groceries",
    "name": "Oat milk",
    "quantity": "2",
    "category": "Dairy"
  }
}
REST
curl -X POST https://cotlet.dev/api/v1/anylist/list-items \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"list":"Groceries","name":"Oat milk","quantity":"2","category":"Dairy"}'
Tool output
{
  "list": "Groceries",
  "item": {
    "name": "Oat milk",
    "category": "Dairy",
    "quantity": "2",
    "crossed_off": false
  },
  "added": true
}

REST at /api/v1/anylist serves the same tools to scripts and cron jobs, with the same key and price. Without AnyList Complete the web app does not open, so calls fail and cost nothing. The tools table lists the REST path of each tool.

Pay per call

How much does the AnyList MCP server cost?

About $15 a monthfor one household planning dinners and shopping every week, 2,540 credits. AnyList Complete is billed by AnyList as before.

A month of AnyList jobs for one household, in credits
JobCallsCredits
Meal plan ingredients to Groceries, weekly2 × 480
Plan five dinners from saved recipes, weekly7 × 4280
Add an item you mention in chat1 × 40400
Clear crossed off items after a store trip2 × 12240
Save a recipe from text, weekly1 × 440
Cloud Browser, 30 days1,500
Total2,540
  • Free 7-day trial, no card
  • 10 credits per successful call, MCP or REST
  • 50 credits a day for the Cloud Browser
  • Needs AnyList Complete, $9.99 or $14.99 a year

The month is our example. FMI's 2026 shopper survey puts a US household at 2.8 grocery trips a week, so about 12 clears a month; the rest is five dinners and ten chat adds a week. The Cloud Browser is most of the bill. Dollars at the $29 pack rate.

Cotlet credit packs: price, credits and calls at 10 credits each
Credits Price, one time Calls at 10 credits Per 1,000 credits
5,000 $29 500 $5.80
15,000 $79 1,500 $5.27
32,000 $149 3,200 $4.66
60,000 $249 6,000 $4.15

Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.

Other options

AnyList MCP server on GitHub or hosted: which to use GitHub has several, all self-run.

Other AnyList MCP servers and tools, checked 25 Oct 2026
OptionWhat it doesWhere it stops
bobby060/anylist-mcpThe most starred (35). Five grouped tools for lists, recipes, collections and the meal plan, on the reverse-engineered API.Your AnyList password in an env var; Claude on the web needs Docker and a Cloudflare Tunnel. Release 1.8.1, 5 Oct 2026, no license.
Forks and smaller serversdjbrinkerhoff (Cloudflare Workers), zkSac/AnyListProMax (prices, UPC codes), avanrossum, mplabs, PuttyByteCoding: 0 or 1 star each.One maintainer each, mostly unlicensed, and every one asks for your password.
kevdliu/anylistThe Node wrapper under most of the servers above, 150 stars.A library: you write the agent side and keep it working.
moryoav/ha-anylist, kevdliu/hacs-anylistHome Assistant: lists as to-do entities, recipe actions, polling every 60 s.Needs a Home Assistant box at home; no MCP.

We found no hosted AnyList MCP server besides ours. A GitHub server is free if you run a home server and accept your password in its config. Alexa or Siri is enough for adding items by voice. Cotlet suits an agent that keeps the list and meal plan with no machine of yours running.

EU company, since 2019

Who runs Cotlet A company you can look up.

Behind Cotlet is Take Group sp. z o.o., a Polish software company in the EU (VAT PL6342984273) working since 2019 and led by Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the AnyList tools go to contact@cotlet.dev.

AnyList API and MCP: questions

Can I use the AnyList API without an AI agent?

Yes. Call Cotlet's REST API from a script or an HTTP step in n8n, Make or Zapier with your Cotlet key. MCP is the alternative for AI agents; you do not need to connect an agent to use REST.

How do I get access?

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

Do I need AnyList Complete?

Yes. Cotlet works in AnyList for the Web, and AnyList opens the web app to AnyList Complete subscribers only. Complete costs $9.99 a year for one person or $14.99 a year for a household (checked 25 Oct 2026). Your account needs it before you sign in to Cotlet.

Does it change lists that I share with my household?

Yes. AnyList shows changes to a shared list to everyone sharing it, and the recipes and meal plan of a household are shared too. For that reason every write waits for your approval by default.

Do you need my AnyList password?

No. You type it into AnyList's own sign-in page in your Cloud Browser, and we keep the signed-in session, not the password. The GitHub servers need it in their config.

Does AnyList have webhooks?

No. AnyList sends no events out, so nothing tells an agent that someone added or crossed off an item. Run your agent on a schedule instead, for example get_list every evening.

Is the MCP server different from the REST API?

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

Is Cotlet affiliated with AnyList?

No. Cotlet is independent and not affiliated with AnyList or Purple Cover, Inc.

Give your agent access to AnyList.

Free 7-day trial with 2,000 credits, no card needed.