Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Sovereign

FreeNot checked

MCP server for the Sovereign AI Blog: Search, retrieve, and diagnose tools for self-hosted AI on NVIDIA DGX Spark.

GitHubEmbed

About

MCP server for the Sovereign AI Blog: Search, retrieve, and diagnose tools for self-hosted AI on NVIDIA DGX Spark.

README

CI License: MIT Content: CC BY-SA 4.0 MCP Registry smithery badge Glama MCP server Write-up

MCP server exposing the Sovereign AI Blog to AI agents. The blog is a hands-on engineering log of self-hosted AI on NVIDIA DGX Spark (GB10/SM121A).

Live endpoint: https://mcp.sovgrid.org/self-hosted-ai Transport: Streamable HTTP (FastMCP) Auth: none (free tier, 60 req/min/IP)

Why use it

Training data on niche hardware (GB10, SM121A, SGLang on ARM64) is sparse and stale. This MCP gives agents direct, structured access to 60+ articles documenting actual setups, fixes, and benchmarks. If you're building or debugging on similar stacks, your agent can pull verified, version-current information instead of hallucinating.

The corpus covers SGLang and vLLM patches for GB10, voxtral and TTS pipelines on ARM64, KV-cache and quantization tradeoffs, podcast-grade audio generation, MCP server design, knowledge-base construction, and the operational side of running it all on a hardened European VPS.

Tools

Tool Purpose
search_blog(query, tag?, sort?, n?) TF-IDF full-text search. Optional tag filter, sort by relevance or date_desc. Empty query lists newest articles. Returns ranked SearchResult items with quality score, style, slug, and excerpt.
list_tags(sort?) List all topic tags across the corpus with article counts. Sort by count_desc (default) or alpha. Use to discover the topic space before filtering search_blog.
get_article(slug) Fetch full article body and frontmatter by slug. Returns markdown content plus tags, quality score, publish date.
diagnose_sglang(error_message) Pattern-match a runtime error against a curated rule set for SGLang on GB10/SM121A. Returns matched fixes with links to setup articles.

All tools are read-only, idempotent, and declared with ToolAnnotations so MCP clients can calibrate retry policy and trust signals. Inputs use Pydantic Annotated[type, Field(description=...)] so parameter docs reach agents through introspection. Outputs are typed BaseModel shapes — schemas are real, not vacuous dicts.

Quick start

With Claude Code

claude mcp add sovereign-ai --transport http https://mcp.sovgrid.org/self-hosted-ai

Verify:

claude mcp list | grep sovereign-ai

With Cline / Continue / other MCP clients

Add to your client's MCP server config:

{
  "sovereign-ai": {
    "type": "http",
    "url": "https://mcp.sovgrid.org/self-hosted-ai"
  }
}

Run locally

From source (uv)

git clone https://github.com/cipherfoxie/sovereign-mcp.git
cd sovereign-mcp
uv sync
uv run uvicorn src.main:app --host 127.0.0.1 --port 8002

Docker

git clone https://github.com/cipherfoxie/sovereign-mcp.git
cd sovereign-mcp
docker build -t sovereign-mcp .
docker run -p 8002:8002 sovereign-mcp

The repo ships a placeholder data/knowledge-base.json (zero articles, valid schema) so the server starts and answers MCP introspection cleanly out-of-the-box. To populate it with real content, generate from the sovgrid.org blog source using scripts/generate_knowledge_base.py, or build your own KB matching the schema in src/knowledge.py. Or just use the live endpoint at https://mcp.sovgrid.org/self-hosted-ai.

A walk-through of the same KB pattern (Markdown plus JSON index, no vector store) is documented in Build a Self-Hosted Knowledge Base with Plain Text and LLMs.

Architecture

  • FastMCP 1.27+ with Streamable HTTP transport at path /self-hosted-ai
  • DNS rebinding protection via TransportSecuritySettings: only allows requests with Host: mcp.sovgrid.org (or localhost for healthchecks)
  • Health endpoint at /health returns article count and KB generation timestamp
  • Knowledge base is a flat JSON file generated from blog Markdown content; loaded at startup, queried via TF-IDF for search_blog

The server is stateless. All blog content is already public (CC BY-SA 4.0). No PII, no auth tokens, no secrets.

Operations

Live deployment runs on a privacy-focused European VPS via Docker, fronted by Caddy with TLS. Server logs flow into a privacy-respecting analytics pipeline (Caddy JSON access logs, no client-side tracking, no JS pixels).

License

Contact

from github.com/cipherfoxie/sovereign-mcp

Installing Sovereign

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/cipherfoxie/sovereign-mcp

FAQ

Is Sovereign MCP free?

Yes, Sovereign MCP is free — one-click install via Unyly at no cost.

Does Sovereign need an API key?

No, Sovereign runs without API keys or environment variables.

Is Sovereign hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Sovereign in Claude Desktop, Claude Code or Cursor?

Open Sovereign on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Sovereign with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All ai MCPs