MCP server inside Ekos
Thomas Nemer
thomas.nemer at fortytwo.fr
Sat May 30 15:29:11 BST 2026
Hello,
I've been on this list quietly for several years but never posted before.
Quick intro: backyard astrophotographer in France. For a long time I
picked targets that worked with "polar align well and track". Recently I
tried guiding for the first time and hit a tuning wall.
The Cloudy Nights folks pointed me in the right direction, and once I
had the basics I wanted to keep tuning, but the loop of reading logs,
change a setting and try again was painful. I fired up an AI agent on
the log files and it helped, but reading after-the-fact text still was a
very long feedback loop.
So I started building an MCP server inside Ekos, first exposing the live
state I needed for guiding diagnosis, then expanding as it became
useful, and even some more after only because some tools looked like
quick wins.
How it is today:
* ~40 tools across mount / capture / guide / focus / align / scheduler
/ INDI, plus an SSE channel for typed events.
* Streamable-HTTP MCP transport on localhost, bearer-token auth, rate
limiting, optional read-only mode with a separate read-only token.
* Per-tool 'readOnly' / 'destructive' / 'idempotent' annotations so
MCP clients can show users what they're authorizing.
* Settings UI integrated into the existing Ekos options panel.
* 25 headless QTest cases, all green on Qt6.
To be honest my C++ experience is very old, never with Qt, and there are
places I trusted the generative AI's proposed implementations blindly.
Also, my rig is very modest (EQ6 Pro + 200/800 Newton + ASI 294MC Pro +
ASI 120MM mini), so there are some tools I just can't test end to end.
Would that contribution be welcomed? I would be happy to share any more
details
Best regards,
Thomas Nemer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kstars-devel/attachments/20260530/b1cb5262/attachment.htm>
More information about the Kstars-devel
mailing list