LystBot

Google Keep API: a personal-list alternative with MCP

The Google Keep API exists, and Google aims it at enterprise administrators who manage notes for an organization through a service account. LystBot is our product. For a script or an AI assistant that edits your own grocery list, we think it is the shorter path: one API key, a CLI and a local MCP server, and your Keep notes stay where they are.

Illustration of locked Google Keep API notes beside a connected checklist, laptop and robot assistant
Route Context Credential or connection
Keep API Enterprise administration Service account
Keep through Gemini Create and show notes and lists Google Workspace connected to Gemini Apps
Community keep-mcp Unofficial private API Google master token
LystBot Personal lists through REST, CLI and local MCP LystBot API key

The first two rows come from Google; the third is community software on a private interface. Our list app API and MCP study puts Keep next to other list apps and splits consumer Keep from Workspace access.

What the Google Keep API is for

Google's Keep API guide names enterprise administrators as the audience. The Java setup walks through enabling the API and creating a service account. Those instructions are useful if you have the relevant enterprise administration role and requirements.

For a private Gmail account, we found no API key you can copy into a script. If your goal is adding milk from a terminal, we'd skip the service-account tutorial. Reading a household list and administering an organization's notes are different jobs, even when both run over HTTP.

Gemini may already cover the assistant part

Google connects Keep to Gemini Apps, so Gemini can create and show notes and lists. That connection needs Google Workspace linked to Gemini Apps. Google also saves Assistant shopping lists and notes in Keep, so a list you dictated may already be there.

If chat or voice capture is all you want, we'd try that before adding another app. For MCP, Google's Workspace MCP setup page lists services such as Gmail, Drive, Docs and Calendar, and Keep is not on that list. A Workspace MCP connection doesn't bring Keep along just because both carry the Google name.

What the master token route costs

The gkeepapi project calls itself unofficial and says Google doesn't support or endorse it. The keep-mcp project connects through an unofficial private API and warns that a Google master token has full access to the account.

That warning is why we'd skip this route for a list script: the token reaches the whole Google account to change one grocery list. If you still choose it, read the project's authentication notes and decide whether that access is acceptable on the machine that runs it.

A LystBot API key is a secret too, so handle it with the same care. The difference is what it opens: your LystBot lists, through an official interface made for them.

Google Keep consumer unofficial tool using master token with full account access, compared with LystBot API-key access to REST, CLI and local MCP

Google Keep through an unofficial tool with a master token, next to LystBot's API-key route. Possible breakage is a risk assessment, not a documented incident.

Test a list without moving your notes

Install the LystBot app and copy the API key from Settings → AI Agents. With npx in your terminal, log in and ask for your lists:

npx lystbot login YOUR_API_KEY
npx lystbot lists

Login stores the key locally in ~/.lystbot/config.json. The second command returns your lists, and they should match what the app shows.

For a first grocery test, create a list and add three items. If you already have a list called Groceries, skip the first line and look at that list first:

npx lystbot create "Groceries" --type shopping --emoji "🛒"
npx lystbot add "Groceries" "Milk, Eggs, Bread"
npx lystbot show "Groceries"

The show command prints the list in the terminal, and the phone app should have the same three items. That test moved data from a terminal to a list without any connector seeing your Google password or master token. The CLI article goes further with lists in the terminal.

Connect Claude to your lists through MCP

LystBot's MCP server runs locally with npx lystbot mcp. For Claude Code, the setup is one command:

claude mcp add lystbot -- npx lystbot mcp

It runs over stdio and has no hosted MCP URL, so a client that only accepts remote URLs can't use it directly. For programs that need HTTP, the developer docs cover REST.

There are 26 MCP tools, covering reads, item changes, sharing, categories, attachments and reminders. A vague request can still pick the wrong one. Start by asking Claude to read the grocery list by name, and once that matches the phone app, ask for one addition. Our Claude grocery guide shows how that fits a household routine.

Start the REST API with a read

For a script, the safest first call reads your lists:

curl https://lystbot.com/api/v1/lists \
  -H "Authorization: Bearer YOUR_API_KEY"

A successful response confirms the endpoint and your key without creating anything. New lists, items and reminders require client-generated UUIDs, and the REST reference has the current fields for those writes. Keep the key out of shared examples; the placeholder works fine when you show a colleague the response shape.

Move one list and leave your notes in Keep

There is no automatic note conversion or cross-app synchronization in this guide. Copy the checklist items you use now and leave reference notes where they are. A paragraph of notes broken into tasks usually reads worse than the original.

Running both apps works when each has its own job. For a shared shopping trip, choose one active list and tell everyone where it is. Try one real errand before you move a month of plans. Our AnyList comparison and OurGroceries comparison cover how those apps handle access.

We read the Google, community and LystBot pages linked here in October.

Which route fits you

For enterprise administrators, the Google Keep API is the right tool, and the service-account setup pays off. Gemini and Assistant users who mostly create lists by talking can stay in Keep. If you want a script or Claude to read and edit a personal list, we'd pick LystBot: one API key, made for your lists, with REST, CLI and MCP. The master-token tools are the route we'd skip, because that token opens the whole Google account.

FAQ

Does LystBot import my Keep notes?

No. You copy the checklist items you want by hand, and the originals stay in Keep.

Does LystBot have a hosted MCP URL?

No. The MCP server runs locally over stdio, and programs that need HTTP use the REST API instead.

Is a master token safe in a shared config?

The keep-mcp project warns that the token has full access to the Google account. We'd keep it off shared machines and out of any config other people can read.

Create a LystBot API key in Settings → AI Agents and run npx lystbot lists to connect your lists to your scripts or AI assistant. The shared grocery API examples pick up from there.