Let me open with the sentence you are not supposed to put in an article: we do not sell MS-Tools. It is not a product, it has no price, and we honestly do not know yet whether it will ever be released. It is simply the tool we work with, and it monitors 22 client websites every day, the ones on a maintenance plan.
So why write about something that is not for sale? Fair question, I was expecting it. Because what a tool actually does says more about how a company works than any marketing line ever will. Words are roomy. A cron job that wakes up every five minutes is not. A cron job cannot tell you how serious we are; it either runs or it does not.
Let us start with three problems, and I have lived all three
Anyone who maintains other people’s websites runs into the same three, over and over. I did not read about them somewhere. I collected them the hard way.
You cannot see. You do not know a site went down until the client phones you. You do not know a certificate is expiring until the red warning appears in every visitor’s browser. And from that moment on you are not doing maintenance any more. You are doing firefighting. With everything that implies for your mood, for your day, and for a client’s trust, which takes months to build and cracks in a single phone call.
You cannot show your work. The client asks “what exactly do you do for me every month?”, which is a completely fair question, and the answer is verbal. There is no measurable history, only impressions. And impressions fade a lot faster than an invoice does.
You run out of time. Checking one site by hand, speed, SEO, SSL, broken links, WordPress, is half an hour of work. Times 22 sites, every month, that is eleven hours nobody has. Am I wrong? And please do not tell me you will find them at the weekend, because we both know how that story ends.
MS-Tools turns all three into automation. Not because automation sounds good in a brochure, but because a machine does not get tired, does not forget, and does not take August off.
Eight checks on every scan, and a ninth that steals the show
Each scan runs eight independent checks and keeps a full history, so that there is a comparison rather than a snapshot. The difference is the whole point: a photograph tells you how the site is today. A history tells you where it is heading:
- Performance via Google PageSpeed Insights, mobile and desktop, together with SEO, Accessibility and Best Practices. We store the individual audits with their estimated savings in milliseconds and bytes, not just the final score.
- SEO and content: titles, meta, heading structure, structured data.
- Infrastructure files: robots.txt, sitemap, llms.txt.
- SSL with a real TLS probe: days to expiry, certificate chain.
- Technologies: detection of CMS, framework, CDN and plugins from HTML and headers.
- WordPress audit for WordPress installations.
- Broken links, via crawl.
- Environmental footprint, through the Green Web Foundation.
And a ninth that stands apart, because this is exactly where the misunderstandings start: traffic read from the server’s AWStats. Real unique visitors per month, bots excluded, read straight off the server. No sampling, no third-party estimate. An external tool only sees what the analytics script hands it; we see what actually reached the server. The gap between those two numbers, once you see it, tends to stay with you. And I do not mean for ten minutes.
Out of all this comes a health score per site, graded A+ to F on a 0 to 100 scale, a security score based on seven security headers, and per-site SLA targets that light up the moment a metric falls outside them. A grade is not decoration. It is the thing you glance at and instantly know whether somebody needs to get out of their chair.
The watchman, and the watchman’s watchman
Uptime monitoring runs every 5 minutes. Nothing remarkable so far, plenty of people do that. The details are what matter, as usual.
Anti-flap logic. One failure is not enough. An immediate retry follows, and a site is only marked down after two consecutive failed cycles. A momentary network hiccup does not fire an alarm, because an alarm that cries wolf stops being read. Like the car alarm down the street: the first time you worry, the fifth time you roll over and go back to sleep.
Two channels, with escalation. Email and Telegram, immediately. If the site stays down, it re-alerts at 1 hour, at 6 and at 24, so the problem does not get lost in the flow of the day.
A dead-man switch. If the monitoring system itself stops, we find out. Because the worst version of silence is not “everything is fine”. It is “nobody is watching”. The watchman watches the watchman.
And now the point that decides whether any of the above is worth anything, because up to here it is architecture on a slide, and slides will tolerate absolutely anything: we tested it. We took sites down deliberately, in controlled tests, to see whether and how fast the alert arrives. It arrived on Telegram immediately. A monitoring system nobody has ever tested is not a system, it is a wish.
The SSL expiry warning fires when a certificate drops below 14 days, once a day so it does not become noise. It has already fired several times, always in time. It is the kind of problem the client never sees, precisely because somebody saw it first. And yes, our best work is often the work nobody ever notices. Thankless, but there it is.
The part no conventional tool had
When SEO started turning into GEO, we went looking for a tool that measures whether a brand appears inside the answers of answer engines. We looked properly, let me be clear about that. There was none. So we built one. That is simply how I am wired: when I cannot find the tool, I open the editor.
The GEO panel in MS-Tools answers one question, one only: when a prospect asks an answer engine, do you show up?
Per site we define the visibility variables: brand, alternative spellings, sector, regions, competitors, target language. From those we generate target questions, and they are deliberately blind: phrased the way someone who does not know you would phrase them. Not “what does company X do”, but “who builds websites in Athens”. Because if we ask using your name, we will find your name. That is not a measurement, that is a mirror. And a mirror, as you know, has never once told you something you did not want to hear.
The questions run through Perplexity Sonar, GPT, Claude and Gemini, with the cost per call visible before anyone presses run. For each question we record whether the brand was mentioned, whether it was cited as a source, in what position, and with what share of voice against competitors. One click shows the full answer, with brand mentions highlighted and the sources as links.
The GEO score combines technical readiness at 35% and actual quality of appearance in the answers at 65%. Because technical readiness is a precondition, not a result. Owning the running shoes is not the same as having run.
The check runs automatically every week for the sites that have the service, and keeps a history of every run.
And the other side: who is reading you
Prompt-testing answers “what do the engines say about you”. That leaves the other half, which is every bit as interesting: who visits your site, and what did they come for. We do not guess this, we read it from the server logs. A log has no opinion, no agenda and no marketing department. It just records.
MS-Tools separates crawlers into four categories by purpose: answer engines that read in order to cite you, user searches where somebody asked something right then and the model came to look, model training that harvests text, and dual-use for the ones that do both, such as Applebot and bingbot. Those last ones are counted separately, precisely so they do not inflate the pure totals.
Here is what 180 days on a client website showed:
- 23,393 model training crawls. ClaudeBot leads with 5,836, followed by Amazonbot, Meta-ExternalAgent, Bytespider and GPTBot.
- 2,012 crawls from answer engines, meaning crawlers that read in order to cite. Mostly OAI-SearchBot, GoogleOther and PerplexityBot.
- 262 live user queries: somebody asked, and the model came to read the page right then.
- 67 referrals. Visitors who actually arrived from an answer engine.
- 9,461 dual-use, counted separately.
Sit with that ratio for a second, it is worth the time: for every single visitor an answer engine sent, 349 crawls went to model training. Your content is read a great deal and returns little. That is the new economics of search, in numbers rather than opinions. Suspecting it is one thing. Seeing it written out on a line of server log is another.
The panel also shows which engines read you at all: OpenAI, Anthropic, Perplexity and Google all pass through this site, and the first three also with live user queries.
And one clarification the tool itself makes, because this is exactly where the mistakes happen, usually stated with great confidence: crawl presence is not a citation. Being read means you are eligible, not that you are mentioned. Whether and how you are mentioned is answered only by prompt-testing. A tool that told you “ChatGPT reads you, therefore you appear” would be lying to you. With beautiful charts, but lying.
GEO, in other words, is not a theory we write articles about. It is a measurement we run.
What actually reaches the client
None of this is worth anything if it stays on an internal dashboard that only we look at, quietly admiring ourselves. So MS-Tools produces a branded PDF report, per site or consolidated across all of a client’s sites, covering current status, performance, security and the last month’s uptime. There is also a version written without technical jargon, for the client rather than for the developer. Because a report nobody reads is just a file.
There is also a visual diff between two scans, highlighting the pixels that changed. It catches what no metric shows, such as a layout that broke after an update and nobody noticed. And we all know how discreetly layouts break. Never on the home page, always on the one page that only your most important visitor ever opens.
The technical identity, briefly
Next.js 15 with the App Router, React, Node 22. SQLite with WAL. Playwright and Chromium for screenshots and PDFs. It runs on our own server in Finland, wired into the MS-Logic ecosystem’s single sign-on. In production since May 2026.
Reliability by design, which in plain language means we thought about it before the first accident rather than after: a daily online backup of the database with 14-day retention, automatic pruning and VACUUM, versioned schema migrations, and every cron job with its own logs and fail-safe behavior.
What all of this means for you
We do not assume, we measure. Every site we look after has a history of measurements, not impressions. When we say a site improved, there is a before and an after, with a date on it.
We learn about the problem first, not you. A check every 5 minutes, alerts on two channels, escalation if it persists, an SSL warning two weeks ahead.
We build our own tools. When there was no way to measure visibility in answer engines, we made one. Whatever we do for ourselves, we know how to do for you.
We are ready for what comes next. SEO is becoming GEO. We are not predicting it, we are already measuring it.
The numbers in our case studies, such as mswriter.eu from F to A and osyllektis.com from 19 seconds down to 4.4, did not come from an estimate. They came from here.
So no, MS-Tools is still not for sale, exactly as I said at the top. But what it does, it does every day for 22 websites, and one of them could be yours. If you want to see where your website stands today, get in touch.