https://mcp.coffeechats.me/actions, on a page headed “Requests awaiting review”. This documentation calls that page your waiting list.
The nine review requests
Five of them are about your booking page. An event type is one kind of meeting you offer on that page. Each event type has its own title, description, duration, and its own web address on your booking page. The sixth sends a thank-you email. The seventh changes the details, status, rating, tags or notes of up to 25 of your own contacts. The eighth starts research on up to 25 of your contacts, and it is the one review request that spends credits. The ninth changes the settings your outreach emails are written with.mail.drafts.send sends one stored outreach draft without a review page. mail.batch.enqueue queues a checked table of drafts for contacts you already have. Three tools send an email and three tools spend credits: research, and documents.resumes.generate and documents.jobs.tailor, which write a resume or cover letter as soon as the agent calls them, under their own permission, documents:generate.
Every other tool is a read or a change that is applied straight away. The tool reference marks each of the 85 tools with which it is.
Where you approve
Every review request has its own page in your browser, and the agent always hands you its link. That page works for every review request and from every application. A contact update can also be approved without leaving the conversation. In Claude and ChatGPT,contacts.update comes with an approval card that the application shows beside the agent’s reply. The card shows the same changes the review page does, the review link as text, and two buttons, Approve and Deny. Each button works once. After Approve, the card shows which contacts were updated and which were left as they were.
The card’s buttons call a tool of their own, actions.decide, which is meant for the card alone. Coffee Chats refuses it from every application other than Claude and ChatGPT, answering with the review link instead. Approve also needs a one-time code that Coffee Chats sends only to the card, beside the proposed update and outside what the agent reads. An agent that calls actions.decide itself has no code, so its approval changes nothing and it gets the review link. In Claude and ChatGPT, inline approval relies on the application keeping that code away from the agent, so that only your click in the card can approve. A card that has no code, such as one shown again for an update proposed earlier, offers the review link instead of Approve. The card never offers Approve for the other eight kinds of review request, or for a contact update proposed from another application: those are approved on the review page.
Research spends credits, so it is approved only on the review page. Its card shows the contacts, the cost and your balance, with a button that opens the review page. In Claude and ChatGPT the card also has a Deny button.
If no card appears, or the card shows an error, open the review link. The card and the page decide the same review request, so whichever you use first is the decision.
What the review page shows you
The page is headed “Review action”. It shows:- The name and the origin of the application that asked. The application chooses its own name, so the page labels it unverified; trust the origin. For a web application that is the web address its sign-in returns to. For a command-line tool it reads
native://loopback, meaning a program on your own machine. - Which Coffee Chats account the change would affect.
- The values being proposed. For booking page text, the proposed headline and the proposed welcome message in full. For scheduling rules, each of the four values beside the value you have now. For event type details, each of the three values beside the value stored on that event type now. For a thank-you send, the recipient, the sender, the send time, the attachment names and the exact subject and message, printed in full and never shortened. For a contact update, each contact’s changes. For research, each contact with its cost. For outreach settings, each of the four settings beside the value you have now. For visibility and for an event type archive, the one sentence in the effect summary below.
- A one-line summary of the effect, which is “Update your public booking page text”, “Make your booking page public”, “Make your booking page private”, “Update your booking scheduling rules”, “Update the title, description and duration of one event type”, “Archive one of your event types”, “Restore one of your archived event types”, “Send one thank-you email you have already drafted” or, for a contact update, “Update” followed by the number of contacts and “of your contacts”, for research, “Research” followed by the number of contacts and “of your contacts”, and for outreach settings, “Update your outreach settings”.
- The cost in credits, which is zero for every kind but research. A credit is the unit Coffee Chats meters its paid features in. For research, the cost is the sum of each contact’s cost, and the page also shows your available balance. Under the cost, the list of people who would be contacted. That list is empty for the five booking page kinds, for a contact update, for research and for outreach settings, and for a thank-you send it holds the one stored address the message would go to.
- Whether your booking page is public now, and its public address.
- The time the review request expires.
- Buttons to approve and to decline, and for booking page text, for scheduling rules, for event type details and for a thank-you send a form to save a new version.
What each kind of review request adds
Booking page text
Booking page text
The page prints the proposed headline and the proposed welcome message in full, so you approve the exact words that will appear. This review request has an edit form.
Booking page visibility
Booking page visibility
The page says in one sentence which direction is proposed, and shows whether your page is public now. This review request has no edit form, because a booking page is either public or private. If the agent proposed the wrong one, decline it and ask the agent to propose the other one.
Scheduling rules
Scheduling rules
The page prints each of the four values beside the value you have now. The four apply to every event type you offer, and approving writes all four at once. This review request has an edit form.
Event type details
Event type details
This review request carries three values together: the title, the description and the duration of one event type. The page prints each of the three with the value stored on that event type beside it, and a sentence saying whether that value changes. If the proposed description is empty, the page says the description is being cleared. The title cannot be emptied, because an event type must have one.The page also names the event type it is about: the title it has now, its address on the site, its public address, and whether it is active or archived at the moment. That block sits with the current information rather than with the values, so it is not part of what you approve.Three notes appear on this kind of review request. The duration is what a guest gets when they reschedule an existing booking, so changing it changes the length of bookings that already exist. An archived event type stays hidden from your public page, so approving this review request does not publish it again. Saving this event type in Settings sends the title, the description and the duration together, so a later save there replaces what you approve here.This review request has an edit form, and the button is labelled “Save a new event type version”.
Thank-you send
Thank-you send
This is the only review request that sends an email, and it is the only one whose effect leaves Coffee Chats. The message is one you already drafted in the app for a meeting you own. The agent cannot write it, cannot change a word of it, and cannot name a recipient: the one address the message goes to is the address already stored on the contact linked to that meeting.The page prints the recipient, the sender, the send time, the attachment names, and the exact subject and message, complete and never shortened, under a heading saying that this exact text is what your approval covers. The byte length of the message is printed beside it, so you can see you are not reading a shortened version of something longer. If the draft has changed since the agent proposed it, the page says so instead of presenting the new text as the text you approved.This review request has an edit form, and the send time is the one thing it lets you change. The send time must be within the next forty-eight hours. Nothing is sent when you approve: the approval schedules the message, and Coffee Chats sends it at the time the page named. You can still cancel it in the app, up to the moment Coffee Chats starts handing the message to the email provider. Disconnect a connection explains the one bounded window in which a disconnect can arrive too late to stop a message that is already going out.
Event type archive
Event type archive
This review request goes in one of two directions. Archiving an event type stops it appearing on your public booking page. Restoring an archived one makes it appear again. The page says in one sentence which of the two is proposed, and it names the event type the same way the details review request does.This review request has no edit form, because an event type is either active or archived and one of the two is what the agent proposed. If the agent proposed the wrong direction, decline it and ask the agent to propose the other one.Two notes appear on this kind of review request. Bookings that already exist on that event type keep working, and a guest can still reschedule one, because a reschedule finds the event type by its identifier rather than by whether it is active. Saving that event type in Settings marks it active again, so a later save there republishes what you archive here.You always keep at least one active event type. If the event type the agent names is the only active one you have, Coffee Chats refuses the proposal at the moment the agent makes it. No review request is created, so nothing reaches your waiting list, and the agent receives the fixed failure text,
Tool call failed., with no reason given. If your other event types are archived between your approval and the moment the change runs, the refusal comes then instead: nothing is written and the agent is told NOT_APPLIED.Contact update
Contact update
This review request changes up to 25 of your own contacts in one approval. It sends no email and spends no credits, which is why it is the one kind that can also be approved in the approval card.The page prints the changes under “Proposed changes”, one block per contact, headed with the contact’s name. Each changed field shows its value now beside its value after approval, and an empty value reads “(empty)”. An added tag is marked with + and a removed one with -, and text added to the notes is printed in full. A contact the agent named that the change would not apply to is listed under “Left out” with the reason: it was not found, an email send to it is in progress, it unsubscribed so its status cannot change, or the change would blank a value from its profile. Moving a contact to Booked or Chatted cancels its scheduled follow-ups, and the page says so when that applies.This review request has no edit form. If you want a different set of changes, decline it and ask the agent for a new one.Each contact is changed only if it still holds what you were shown. A contact you edited in the app after the agent proposed the change, or one that started sending an email, is left as it is, and the outcome lists it as not changed. The other contacts are still updated, each one once.
Outreach settings
Outreach settings
The agent names the settings it wants to change, and the review request carries all four: your preferred name, your email signature, your scheduling link and your email tone. A setting the agent did not name keeps the value you have now. The page prints each of the four beside the value you have now. An empty signature means a signature is built from your profile, and an empty scheduling link means your booking page link is used.If the scheduling link changes, approving also copies the new link to your campaigns that are still running, as saving it in Settings does. If you change any of the four in Settings before you approve, the review request can no longer be applied and is refused.This review request has no edit form. If you want different values, decline it and ask the agent for a new one.
Contact research
Contact research
This review request starts research on up to 25 of your contacts, people only. It is the one kind that spends credits, so it is approved only on this page and never in the approval card. A connection made before research was available must be connected again, to grant the research permission, before an agent can propose it.The page lists the contacts under “Contacts to research”, each with its cost: “free” for a contact that has a booked meeting or whose research you already paid for, and “5 credits” otherwise. A contact the agent named that cannot be researched is listed under “Left out” with the reason: it was not found, it needs a company or LinkedIn, or research is already running. The page then shows your available balance, read when the page is drawn. When there is no balance to show, for example on a plan that can bill research past its included credits, it reads “not shown here” and points you to Usage in the app.This review request has no edit form. If you want a different batch, decline it and ask the agent for a new one.The cost you approve is the most the batch can spend. When it runs, each contact is checked again, and it starts no more paid research than the cost you approved, or, where your plan has a balance, than that balance at that moment. A contact that can no longer be researched, or that would go past either limit, is left out, and the outcome lists it with the reason.
Two things people get wrong
You are approving exactly the values shown, at exactly the version shown. The surrounding information, such as whether your booking page is public right now, is there so you can judge the review request. It is not part of what you approve, and a later change to it does not invalidate your approval. If the values themselves change before your approval is applied, the approval no longer matches and the change is refused rather than applied to something else. A contact update is checked contact by contact instead: a contact that changed is left as it is, and the rest are applied.How the agent learns what you chose
The agent calls the same tool again with the same identifier. For a contact update it callscontacts.update.get with that identifier instead, which reports the outcome without showing another card. For research it calls contacts.research.start again with the same idempotency key to read the batch’s outcome, and contacts.research.get to read each contact’s research. It does that by itself, usually within a few seconds of your decision, and you do not have to tell it what you chose.
An agent can also withdraw a review request it made, while you have still not decided and no work has started. Withdraw a review request is the procedure. When an agent withdraws one, it leaves your waiting list with no notification, so that page shows a section headed “Recent decisions” under the review requests that are still waiting. It holds up to ten review requests that are no longer waiting for you, newest first, each with one sentence saying how it ended, the application that asked, and the day you or Coffee Chats decided it. Nothing in that section can still be approved.
The state of a review request
A review request is always in one of nine states. This is what each one means for you.
The words above describe your review request. They are not the same as the short tags the agent sees in its own results, such as
requires_confirmation or accepted. Those tags describe the shape of a message, not the state of your review request, and your agent may present them differently. The result object is where those tags are defined.
When the outcome is unknown
Coffee Chats reports an unknown outcome rather than guessing. When you see one, do not ask the agent to try again in the hope of forcing it through, because that could apply the change twice. Open your booking page, or the contacts the update named, and read it. Whatever it shows now is the true current state.Next steps
Error codes
Every reason a change could not be applied, and what to do.
Ending a connection
What a disconnect stops, and what can still finish.
Propose a booking page change
The same flow, written for the person building the agent.
Tool reference
The exact input and result of each tool that proposes a change.

