Ask Claude about your reviews
Your rating tells you something moved. The reviews tell you what. Connect them to Claude and it reads six months of long, messy, multilingual text in the time it takes to ask, and shows you the reviews behind the answer. Read-only, so it can analyse and can never post as you.
Set up in under five minutes • No demo required
We dropped from 4.42 to 4.08 in Q2. Read the one-stars and tell me what they are about.
rating: 1 · start_date: "2026-04-01" · end_date: "2026-06-30"
Speak, the pronunciation grader in v5.2. 268 of the 412 say it marks them wrong when they are right.
121 are French, 84 German, 38 Spanish. Only 25 are in English, which is why nobody in the office had noticed.
“Speak no entiende mi acento. He perdido la racha dos veces.”
“Speak does not understand my accent. I have lost my streak twice.”
The part of a review nobody reads
Every report you have ever seen is built on the star, because the star is the part that fits in a column. The paragraph underneath is where the customer explains themselves, and it is the part that gets truncated at eight words and never opened.
That paragraph is horrible input by every normal standard. It runs on, it contradicts itself, it was typed with a thumb on a train, and a third of it is in a language nobody on your team reads. It is also the only place the reason is written down.
Long, messy and multilingual is the exact shape of text a language model handles well. Claude does not need the reviews cleaned, bucketed or translated first. You point it at the corpus as it actually arrived and ask a question about it.
The arithmetic is what settles it. Three and a half thousand reviews in a quarter, twenty seconds each, is twenty hours of reading before anyone forms an opinion. That is why the opinion usually comes from the number instead.
Been using Lumo every day for two years and I have never written a review before, but…
“Been using Lumo every day for two years and I have never written a review before, but Speak fails me on words I say correctly, so the lesson will not close and the streak breaks. Just let me skip it.”
3,617 of those landed in Q2 alone.
Twenty seconds each is twenty hours. Nobody has the afternoon, so the column gets read and the paragraph does not.
It reads the reviews. It does not count the stars.
A rating is a summary the customer already made, and summarising is where information goes to die. Four point four two down to four point zero eight tells you something happened in the second quarter and nothing whatsoever about what.
Ask what changed between two quarters and Claude reads both of them. Not a sample, not the most recent hundred, both. What comes back is a changed list of subjects rather than a changed number, and a changed subject is something you can act on.
It reads the good ones too, which is where the early warning lives. People who still rate you four stars will tell you exactly what is wrong on the way past, and no average will ever surface that, because a four is filed as good news and rolled into the score.
The dashboard could always show you the dip. It was never going to say the word that explains it, because nobody knew in advance which word to build a chart for. Reading is what turns a movement into a name.
start_date: "2026-01-01" · end_date: "2026-06-30"
It was in the four-stars two weeks earlier.
63 people rated Lumo 4 after 14 April and still wrote that Speak failed them. A rating average counts those as good news.
Read in the language they were written in
Reviews come back over the connection exactly as posted, in whatever language your customers used. Nothing is machine-translated into English on the way through, so nothing is flattened before Claude sees it.
That matters because translation loses the specific and keeps the general. A French one-star that names the exact exercise that failed becomes, in translation, a French user who is unhappy. The first is a bug report. The second is a mood.
It also matters because complaints concentrate by market. When two thirds of a problem is in French and German and barely a tenth of it is in English, an English-speaking team reading English reviews concludes there is no problem, and is wrong.
get_reviews filters on language and on country, so the comparison is a question rather than a project. Ask what the German one-stars are complaining about that the American ones are not, and read both answers in one sitting.
rating: 1 · start_date: "2026-04-14" · keywords: ["Speak"]
“Je prononce correctement et Speak me met zéro à chaque fois. Depuis avril, l'exercice est inutilisable.”
“I pronounce it correctly and Speak gives me zero every time. Since April the exercise is unusable.”
Translate the corpus first and all 268 land in one pile. The market that is actually breaking stops being visible.
Every answer with the reviews underneath it
An answer you cannot trace is one you cannot act on. Because Claude is reading rows rather than recalling something you pasted, it can put the reviews behind each claim in front of you, and you can go and read them yourself.
Each one arrives whole: the text, the rating, the date, the reviewer, the language, the platform, the tags on it, whether anyone has replied yet, and a link to where it was posted. That is a ticket engineering can reproduce from, not a sentiment score.
The counts are checkable in the same way. When Claude says 268 of the 412 one-stars are about one feature, the 268 are rows it will list for you, so the claim is an assertion with evidence attached rather than a number to trust.
It is the difference between being told your customers are frustrated and being handed the review that says the app rejects a word they pronounced correctly, in their words, with their name and the date on it.
268 of the 412 Q2 one-stars are about Speak.
Here is one of them. The other 267 arrive the same way.
“Seit dem Update erkennt die Sprachübung mein Deutsch nicht mehr. Drei Jahre Streak weg.”
“Since the update the speaking exercise no longer recognises my German. Three year streak gone.”
That is a ticket, not a sentiment score.
Android, German, nobody has answered it, and the link goes to the listing. Engineering can reproduce it from the row.
You write the sentence. It writes the query.
There is no filter panel and nothing to learn. You ask for the unanswered French one-stars since the April release, and Claude works out that this is a language, a rating, a replied flag and a start date, and calls the server with them.
It has three tools to choose from and all three read: list_review_profiles for what you monitor, get_reviews for the reviews themselves, get_stats for the counts. A surface that small is one it picks correctly rather than guesses at.
When one call is not enough it makes several. Profiles first to get the ids, then the reviews, then the counts to check its own answer. You can see each call it made and the arguments it filled in, so the reasoning is inspectable rather than implied.
Which changes what you bother to ask. A question that takes a sentence gets asked on a hunch at four in the afternoon. The same question as an export, a pivot table and a translation pass gets asked once a quarter, if that.
“Pull the French one-stars nobody has answered since Speak shipped.”
No arguments. It needs the ids before it can filter on them.
language: "fr"
rating: 1
replied: false
start_date: "2026-04-14"
Same filters again, so the count in the answer is the database’s and not its own.
Four filters you did not have to know the names of.
Nobody has answered maps to replied, since Speak shipped maps to a date. Ask again with a different market and it rewrites the call.
The counting is not the model’s job
Language models read well and tally badly. Hand one four thousand ratings and ask for an average and you are trusting arithmetic done a token at a time, which is a bad place to put the number that goes in the board deck.
get_stats exists so Claude never has to. One call returns the total, the average score, the breakdown by star, how many were replied to and the reply rate, computed in the database. They are the same figures your reports show.
Add a date range and a period of day, week or month and it returns the series, so did the rating actually move has a real answer with a real date on it. You find the week it turned, and then you go and read that week.
Every get_reviews filter works on get_stats too, so the counts narrow the same way the reading does. Claude asks the server how many and reads the reviews for why, and neither job is done by the wrong half.
start_date: "2026-01-01" · end_date: "2026-06-30"
period: "month"
| Month | avg_score | total_count |
|---|---|---|
| January 2026 | 4.44 | 1,021 |
| February 2026 | 4.41 | 1,043 |
| March 2026 | 4.41 | 1,140 |
| April 2026 | 4.19 | 1,187 |
| May 2026 | 4.02 | 1,226 |
| June 2026 | 4.04 | 1,204 |
The move is 0.34. The reason is not a number.
get_stats sizes the drop and dates it. What people are angry about sits in the review text, which is what get_reviews returns.
Read-only, and that is structural
The whole server is three tools and every one of them reads. There is no fourth. Claude connected to your reviews can analyse them and has nowhere to write, which is not a setting somebody has to remember to leave alone.
You connect by signing in rather than by pasting a key. Claude sends you to Reviewflowz, the screen lists what is being granted, you approve it. OAuth 2.1 with PKCE, so there is no token sitting in a settings box for the next two years.
The connection inherits the access of the person who authorised it. If you use access groups, an assistant connected by someone who only sees three review profiles only ever sees those three. It cannot reach further than the human it belongs to.
Revoke it from Claude and nothing else stops working, because each client holds its own authorisation. Replies still go out through Reviewflowz, Slack or your helpdesk, where your own rules decide who is allowed to send one and in whose name.
What you monitor, with each score and review count.
The text, rating, date, language, platform and any reply.
Counts, averages and a series, straight from the database.
No fourth tool. Nothing here posts, edits or deletes.
It runs with the permissions of whoever authorised it.
Access groups apply. Revoke it in Claude, the rest keeps working.
Connected once, then nothing to maintain
In Claude it is Settings, then Connectors, then Add a custom connector. Name it Reviewflowz, paste https://app.reviewflowz.com/mcp/tools, sign in and approve read-only access. That is the entire setup.
After that there is no export to schedule, no spreadsheet to refresh and no file that was right on Tuesday. Claude reads your account at the moment you ask it something, so this morning’s review is in this afternoon’s answer.
Reviewflowz is already collecting on its own schedule from the platforms you have connected. The connector is a window onto that rather than a second pipeline with its own lag and its own way of quietly stopping.
And it is a standard remote MCP server rather than a Claude plugin, so the same URL is the one you would paste into any other client that speaks the protocol. The MCP server page covers that side of it in full.
Settings, Connectors, Add a custom connector
Paste the Reviewflowz server URL
Sign in to Reviewflowz
Approve read-only access. There is no token to paste.
No export, no schedule, no refresh. It reads the account when you ask.
The same three screens on a second machine. There is nothing to install.
Stop reading the number and guessing
Connect your reviews to Claude in under five minutes. Read-only, no demo required.
How do I connect Claude to my reviews?
In Claude, open Settings, then Connectors, then Add a custom connector. Name it Reviewflowz and paste one URL: https://app.reviewflowz.com/mcp/tools. Claude sends you to Reviewflowz to sign in and approve read-only access. There is no API key anywhere in the flow.
Is this a Claude plugin?
No. It is a standard remote MCP server, so the same URL works in any client that speaks the Model Context Protocol. Claude is where most people use it, which is why this page is about Claude, but nothing about the connection is Claude-specific. See the MCP server page for that side of it.
What can Claude actually see?
Your review profiles, your reviews with their full text, and the replies that have gone out. Nothing else in your account. The connection runs with the permissions of whoever authorised it, so if access groups limit you to certain profiles, they limit your assistant to the same ones.
Can Claude publish a reply?
No, and not because it is switched off. The server exposes three tools, list_review_profiles, get_reviews and get_stats, and all three read. There is no tool that writes. Replies go out through Reviewflowz, Slack or your helpdesk, where your access rules apply.
Does it handle non-English reviews?
Yes, and it reads them as written rather than translating them into English first. That matters when a problem concentrates in one market: the detail that names the bug is usually the first thing a machine translation loses.
How is this different from pasting reviews into a chat?
A paste is the rows that fit and the day you copied them. A connection is every review you monitor, filtered on the spot, read at the moment you ask. Claude picks the query itself and shows you which one it ran, so you can check the answer against the rows.
Do I need a demo to get started?
No. You connect your review profiles and add the server to Claude yourself, in under five minutes. 14 day free trial, no credit card.





