I already wrote about the principal limitations of your approach and also, I did not want to "feed the trolls", so to speak. But in the meantime, there were too many posts here that clouded my initial criticism. So I decided to voice my concern again...
You stress that Proximo is "The Proxmox MCP you can hand the keys", but is it? You even took the time to do
this bit, which tries to convince people of that. However, this does not deter from the fact that even when you restrict Proximo's API permissions to read-only operations (which in turn limits its capabilities severely, as already discussed), the AI gains knowledge about the infrastructure (known in spy and hacker circles as "reconnaissance") .
Because of that, the biggest
technical problem I see with that the architectural structure you took with your MCP server:
It has so many "tools" that the context window of a local AI explodes — do not even try to ask basic questions with the default of 8,192 tokens in LM Studio. You will find that the mere MCP connection initialization and your suggested "run pve_doctor" will easily need 128,000 tokens. After your local AI chomps several minutes on that, it will most likely die (mine did).
There are only two remedies to this:
- Disable many of the tools, thus reducing the versatility. Also, you have to decide for yourself what you do not need (wasn't that what the AI was for?).
- Use a cloud AI that can easily swallow the vast amount of tool data that always swamps in, like Claude with >= 200,000 tokens. That in turn will evidently expose your whole infrastructure to the AI company.
The Proximo MCP server is poorly optimized for local models because it follows a "dump-everything" design. Instead of sending a lean list of names and IDs, it floods the model with the entire, un-paginated cluster JSON (including Ceph and SDN metrics whether you use them or not) in a single request. While massive cloud models can filter this effortlessly, it instantly overwhelms the limited context window and hardware memory of local LLMs.
An optimized server must provide separate, highly specific tools for data-heavy details instead of forcing a global data dump.
You proudly claim Proximo went "from 145 tools to over 900 and cover all surfaces" — but this is a classic case of quantity over quality. By flooding the system with bloated tool schemas, you have effectively killed any potential for local LLMs to deal with Proximo, thereby verifiying my security concerns, Q.E.D.
P.S.: I do not expect an answer and I really do not want to discuss this any further, my points were clear from the get-go. I stated the sole purpose of this post at the start.