Connect an assistant
Add the MCP server to your AI client, choose what it may reach among the five permission groups, and revoke it when you are done.
Open the MCP page in the Read Frog web app. It shows the server address, per-client setup steps, and every client you have already authorized.
The server address is the same for everyone:
https://api.readfrog.app/api/mcpRead Frog is listed in ChatGPT and Claude. Add it from their directories, or connect another MCP client using the server address.
Add the server
For other MCP clients, add the server address above using Streamable HTTP. The MCP page has commands for Codex and Claude Code.
Choose OAuth 2.1 authorization. Dynamic client registration and client ID metadata documents
are both supported, so there is no client ID or secret to enter. Clients that insist on a
discovery document can read it at
https://api.readfrog.app/.well-known/oauth-protected-resource/api/mcp.
The client sends you to Read Frog's consent page. Sign in, check the application name and identifier shown there, choose a level for each permission group it asked for, and select Allow.
In a managed workspace, an administrator may need to enable the plugin. On Team and Enterprise, your organization may need to enable the connector first.
Read Frog works on every plan: Free accounts can run 10 tools a day, Pro accounts 50, and Ultra has no limit (see daily limits). An account that has used its calls stays connected, and its tools refuse with a message saying when calls are available again — reconnecting does not reset the count.
The five permission groups
There are exactly five groups. account is read-only; the other four can each be set to no access, read, or read and write. You choose per group, and only among the groups the client actually asked for.
| Group | Read lets the assistant see | Write additionally lets it |
|---|---|---|
account | Your name, email address and profile picture. Never note content. | Nothing — this group has no write level. |
notebases | Your notebases and their field definitions, including field IDs. | Create, rename and delete notebases; add, change and delete fields. |
notes | The field values of every note, and search across them. | Create, edit and delete notes. |
card_templates | The front and back patterns that generate cards. | Create, edit and delete templates. |
study | Review history, scheduling state, queue counts and daily limits. | Record and undo reviews, change daily limits, suspend and bury cards, put notebases to sleep. |
Two tools straddle groups. Reading a rendered card — its front, its back, its learning state — needs notes:read and study:read together, because a card is note content plus scheduling state. Granting only one of them leaves list_cards and get_card unavailable.
What a write grant can destroy
Write is not only "can add things". Every group's write level includes deletion, and deletion in a notebase cascades.
| Granting | Worst case |
|---|---|
notes:write | A note is deleted permanently, along with every card generated from it and those cards' review records. |
notebases:write | A whole notebase is deleted permanently — its fields, all its notes, its templates, its cards and its entire review history. |
card_templates:write | A template is deleted, and with it every card it generated and their review records. The source notes survive. |
study:write | A review is recorded that you did not do. FSRS takes it as real, so the card's stability, difficulty and next due date all move. |
None of this is reversible from Read Frog. undo_review rolls back the latest review of one card, but there is no undo for a deleted note, field, template or notebase.
Grant read first. Read-only access already covers looking things up, planning what to review, and reporting on your progress — and it cannot lose anything. Raise a group to write only when you have a specific recipe that needs it, and read what your assistant proposes before approving a deletion.
Adding permissions later
A grant only ever contains what a particular authorization request asked for, at the level you chose for it. If a tool fails because the connection lacks a permission, the client is told which one it needs; many clients then send you back through consent on their own, and some have to be reconnected by hand before they will ask again.
Going the other way works too: authorize again and lower a group. The consent page can only lower the groups the new request mentions, so a grant the client stopped asking about stays as it was. To clear everything at once, revoke the connection.
Manage and revoke
The MCP page lists every connected client with the name it registered, its application identifier, when you connected it, when it last authorized, and the permissions it currently holds.
Revoke deletes that client's permissions and invalidates its access immediately. Its refresh token goes with the grant, so the next time it tries to reconnect it lands back on the consent page, where you decide again. You can reconnect the same client later; a new grant starts from nothing.
Revoking does not reach backwards. Content a service already received stays with that service — see the Privacy Policy for how Read Frog handles data. Removing the connector inside the assistant is worth doing too, but on its own it does not revoke the grant on Read Frog's side.
When something does not work
- A tool says it needs more permissions. Authorize that group, or leave it denied and stay within the operations you allowed. Reconnect the client if it does not re-ask by itself.
- Every tool refuses with a message about daily calls. The account has used its tool calls for the day. The message says when more are available.
- New tools do not appear. Refresh or reconnect the connector; clients cache the tool list.
- A write fails saying the note changed. Edits are guarded against stale data. Ask the assistant to read the note again and retry.
- A review fails asking for a time zone. Recording a review decides which study day it belongs to, so it will not guess. Tell the assistant your IANA time zone, or open the Read Frog web app once while signed in so your account stores it.
If you are stuck, contact us.
