# Sovereign AI Blog > Engineering log of building self-hosted AI on NVIDIA DGX Spark (GB10 Blackwell). > Real configs, real failures, real fixes. Mistral Small 4 119B on a desk. ## MCP Tools (Agent API) Endpoint: `https://mcp.sovgrid.org/mcp` (streamable-http) · Discovery: `https://sovgrid.org/.well-known/ai-plugin.json` · Health: `https://mcp.sovgrid.org/health` - **`search_blog(query, n=5)`** — Search articles by topic, hardware, or error message. Returns ranked results with EEAT scores. Use for: "how do I configure X", "errors involving Y", "articles about Z". - **`get_article(slug)`** — Retrieve full article content by slug (e.g. `setup-mistral-sglang-setup`). Returns title, body, tags, EEAT scores. Use after `search_blog` returns a hit. - **`diagnose_sglang(attention_backend, mem_fraction, cuda_graph_max_bs, image_tag, hardware, error_message)`** — Validate an SGLang configuration for DGX Spark / GB10 / SM121A. Returns known issues, recommended fixes, and links to relevant articles. Paste error output into `error_message` for pattern matching. Rate limit: 60 req/min/IP. No auth required. Robots disallowed for crawler-bots; intended for agentic clients via MCP protocol. ## Setup & Configuration Guides - [The Sovereign AI Blog MCP Is Mostly Redundant Today, And That Will Change](https://sovgrid.org/blog/setup-blog-mcp-honest-mvp): Why the first Sovereign AI MCP server isn't worth installing yet, but will be once it hits 200 articles and adds specialized tools. An honest MVP/POC critique. - [Floki-VPS Setup for Sovereign AI Workloads](https://sovgrid.org/blog/setup-floki-vps-setup): Move your AI stack off cloud servers. This post shows how to migrate a production Sovereign AI blog and MCP server to a €163/year VPS, harden it, and run it with Docker and Caddy, complete with real configs and pitfalls. - [Build a Self-Hosted Knowledge Base with Plain Text and LLMs](https://sovgrid.org/blog/setup-knowledge-base): A practical guide to setting up a searchable, growing knowledge base using Markdown files, JSON indexing, and local LLMs, no vector stores required. - [OpenClaw Setup on DGX Spark for Sovereign AI Agents](https://sovgrid.org/blog/setup-openclaw-setup): A hands-on guide to installing and configuring OpenClaw on NVIDIA DGX Spark, switching between cloud and local models, and wiring MCP servers. - [Self-Hosted AI: Start Here](https://sovgrid.org/blog/setup-self-hosted-ai-start-here): The honest decision tree for taking a local LLM stack seriously. Hardware tradeoffs I actually made, the inference engine I picked and why, the parts that hurt the most after I started, and the reading path through the rest of this blog. - [Sovereign MCP Server: Local Setup, Integration, and Hard Lessons](https://sovgrid.org/blog/setup-sovereign-mcp-setup): Learn how to run a self-hosted MCP server for your blog’s knowledge base, integrate it with OpenClaw and Vibe, and avoid the pitfalls I hit while migrating from cloud to Sovereign AI. - [100/100 on Smithery in 4 Hours, and Why That Means Almost Nothing](https://sovgrid.org/blog/setup-mcp-listing-smithery-100): Built a self-hosted MCP, mirrored it to GitHub, listed it on Smithery, hit a perfect quality score before dinner. The exact patches, badges, and pitfalls. Plus an honest take on why a number on a dashboard is not a customer. - [Build a Self-Hosted AI Blog with Astro, Mistral, and ComfyUI on One Machine](https://sovgrid.org/blog/setup-sovereign-blog-setup_part1): A practical guide to running a full content pipeline, writing, generating images, and serving, on your own hardware with Astro, Mistral Small 4, and ComfyUI FLUX. - [Sovereign Blog Setup: Self-Hosted AI Content Pipeline & Monetization](https://sovgrid.org/blog/setup-sovereign-blog-setup_part2): A hands-on guide to deploying a self-hosted AI blog with Docker, Astro, and MCP discovery, complete with working code, real-world gotchas, and monetization via Lightning and Nostr. - [Self-Host Mistral Small 4 with SGLang on NVIDIA DGX Spark (GB10): What Actually Works](https://sovgrid.org/blog/setup-mistral-sglang-setup): Run Mistral Small 4 119B on NVIDIA GB10 with SGLang nightly: exact flags, real benchmarks, every gotcha that costs a day - [ComfyUI plus FLUX.1-schnell on DGX Spark: Per-Style Visual Vocabularies](https://sovgrid.org/blog/setup-comfyui-flux-setup): Optimized workflow for running FLUX.1-schnell and Mistral sequentially on NVIDIA DGX Spark with 128GB unified memory - [Self-Hosted AI Pipeline (Part 1): Targeted Scripts, Hardware-Crashing Flags, and Why Grep Beats LLM](https://sovgrid.org/blog/setup-content-pipeline-learnings_part1): A practical guide to optimizing a self-hosted AI content pipeline with targeted scripts, grep-based validation, and precise flag handling. - [Self-Hosted AI Content Pipeline: What Works and What Doesn’t](https://sovgrid.org/blog/setup-content-pipeline-learnings_part2): Lessons learned from a failed LLM self-review experiment that broke our validation pipeline and how we fixed it with deterministic checks. - [Automate Better Blog Posts: Self-Hosted Article Optimization That Actually Works](https://sovgrid.org/blog/setup-optimize-articles-setup): A weekly automation pipeline that repairs, updates, and optimizes self-hosted blog articles in place using Mistral and SearXNG. - [Feedbin and Lightning V4V: Tipping RSS Authors Through Alby](https://sovgrid.org/blog/setup-feedbin-v4v-integration): Learn how to implement Value-4-Value payments in Feedbin using podcast:value tags and the Alby bounty for a zap button. - [Gitea ARM64 Setup: Tor Hidden Service and Sovereign Dev Workflow](https://sovgrid.org/blog/setup-gitea-setup): A detailed guide to deploying Gitea on ARM64 with Docker, SQLite, Tor access, and automated encrypted backups. - [OpenHands Setup with Mistral-via-SGLang: The Multi-Arch Container Recipe](https://sovgrid.org/blog/setup-openhands-setup): Deploy a privacy-respecting AI coding assistant with Mistral Small 4 and SearXNG using Docker on ARM64 hardware. - [Android AI Terminal: SSH plus Termux plus tmux for the AI Stack from Your Phone](https://sovgrid.org/blog/setup-mobile-terminal-setup): Turn your Android device into a full terminal for your Sovereign AI Grid with Termux, Tailscale, and tmux for seamless remote access. - [Alby Lightning Wallet: From Zero to Sovereign AI Tipper in 30 Minutes](https://sovgrid.org/blog/setup-alby-lightning-wallet): Learn how to install Alby, receive your first Lightning payment, and become a Nostr power user with Zaps, all without trusting a bank or exchange. - [Alby + Nostr: Send Lightning Zaps with Sovereign Identity](https://sovgrid.org/blog/setup-alby-nostr-wallet): Skip the cloud accounts. Use Alby’s NIP-07 signer to send Bitcoin zaps directly from your browser, no middlemen, no passwords, just your keypair and a Lightning wallet. - [BitBox02: The Swiss-Made Hardware Wallet for Sovereign Bitcoin](https://sovgrid.org/blog/setup-bitbox-hardware-wallet): Why Swiss precision matters for your Bitcoin self-custody stack: and how to set it up in under 30 minutes without trusting anyone - [Sovereign AI Webshop (Part 1): No-KYC Lightning Checkout Architecture](https://sovgrid.org/blog/setup-sovereign-webshop-setup_part1): Deploy a self-hosted WooCommerce stack with one command, full privacy control, and ARM64 support from Raspberry Pi 5 to DGX Spark. - [Sovereign Webshop Setup](https://sovgrid.org/blog/setup-sovereign-webshop-setup_part2): Optimize your cloud costs, secure your login pages, and activate Amazon Associates with this battle-tested webshop setup guide. ## Fixes & Debugging - [Voxtral Podcast Audio: Mono 24 kHz Baseline and Three Compression Pitfalls](https://sovgrid.org/blog/fixes-podcast-audio-quality-2026-04-25): How we fixed loudness pumping, markup stripping, and dialogue rhythm in a self-hosted podcast pipeline - [Voxtral-TTS Blocker on GB10: The Three-Line vllm-omni Patch](https://sovgrid.org/blog/fixes-voxtral-blackwell-blocker): How a silent AttributeError nearly killed our TTS pipeline, and why three lines of code fixed it forever. - [The 3.5-Hour Deadlock That Was Really an AttributeError](https://sovgrid.org/blog/fixes-voxtral-text-config-bug): How a three-line Python init order bug masqueraded as a Blackwell GPU hang, and why checking raw logs beat all hardware theories. - [Fix OpenClaw + SGLang with Mistral: Stop the "conversation roles must alternate" 400 BadRequest](https://sovgrid.org/blog/fixes-openclaw-mistral-alternating-roles): Learn how a 200-line proxy fixed a strict role-alternation bug that broke Mistral Small 4 after the first few turns - [Voxtral Stage 1 OOM on GB10: Why --enforce-eager Is Not Enough](https://sovgrid.org/blog/fixes-voxtral-stage1-oom-fix): How a single flag killed my self-hosted TTS stack, and how I fixed it without losing a second of audio. - [Aider Setup on DGX Spark: Mistral-via-SGLang Endpoint and Tor-Routed pip](https://sovgrid.org/blog/fixes-aider-setup): Learn how to install and configure Aider for reliable local LLM coding sessions on ARM64 workstations with practical troubleshooting tips. - [Three Silent Failures That Would Have Killed My Self-Hosted AI Stack](https://sovgrid.org/blog/fixes-system-cleanup-2026-04-01): How a single SSH syntax error, misconfigured swappiness, and container limits almost took down my Sovereign AI stack, and the exact commands I used to fix them. - [Cloudflared in Astro's Docker Network: The Hostname-Resolution Fix](https://sovgrid.org/blog/fixes-cloudflared-astro-migration-2026-04-04): Resolving Docker network isolation between cloudflared and an Astro static site container to restore Cloudflare Zero Trust tunnel functionality. - [Reclaiming 20 GB: Dead Docker Images and Why Caddy Runs Better as systemd](https://sovgrid.org/blog/fixes-disk-cleanup-2026-04-05): Learn how to reclaim disk space from unused Docker images and optimize your stack by running Caddy as a systemd service instead of in Docker. - [OpenHands and Gitea Integration: Docker-Network Hostname Fix](https://sovgrid.org/blog/fixes-openhands-gitea-integration): Resolve Docker networking failures where containers can't resolve names or access volumes, with a single `.gitconfig` tweak that fixes both issues. - [Fix: OpenHands BadRequestError: Mistral Alternating Roles](https://sovgrid.org/blog/fixes-openhands-badrequest-fix): OpenHands crashes after 10 minutes with a BadRequestError. Here’s exactly how to fix the alternating roles bug in Mistral Small 4 and why the default config is broken. - [OpenWebUI Port Conflict on DGX Spark: Why 8080 Was Already Taken](https://sovgrid.org/blog/fixes-openwebui-port-fix): Learn how to diagnose and resolve Docker port conflicts with practical troubleshooting steps and configuration fixes. - [Vibe 400 Bad Request Fix: Mistral Alternating Roles and reasoning_effort](https://sovgrid.org/blog/fixes-vibe-400-badrequest-fix): Three separate 400 Bad Request causes in Mistral Vibe with SGLang, their root causes, and update-safe fixes - [Vibe write_file Overwrite Bug: When Edits Silently Replace Whole Files](https://sovgrid.org/blog/fixes-vibe-write-file-overwrite): How strict workflow rules and tool constraints prevent AI agents from destroying your codebase during file edits. - [SGLang Restart OOM Fix: Unified Memory Cleanup on GB10/DGX Spark](https://sovgrid.org/blog/fixes-sglang-restart-oom-fix): How I wasted three days debugging SIGKILL 137 after every SGLang restart, until I learned that GPU memory isn’t freed instantly and Docker’s `--rm` and `--restart` hate each other. - [SGLang on DGX Spark: 35-41 tok/s with EAGLE Speculative Decoding](https://sovgrid.org/blog/fixes-sglang-vibe-performance-benchmark): How we got Mistral Small 4 119B inference working on NVIDIA DGX Spark's ARM64 GB10 chip with SGLang, including backend selection, speculative decoding, and Vibe CLI optimizations. - [Four Bugs That Only Showed Up Under Load: Fixing a FastAPI Dashboard](https://sovgrid.org/blog/fixes-dashboard-api-performance-fix): Async event loop blocking, N+1 Docker calls, systemd ProtectSystem conflicts, and stacking frontend polling: four independent bugs in one FastAPI app, all invisible at idle. - [Backup System Rebuilt from Scratch: The Night I Found Out Six Months of Backups Were Fake](https://sovgrid.org/blog/fixes-backup-system-rebuild-2026-04-14): A senior engineer walks through four hidden failures that made their backup system look healthy while actually doing nothing. Exact commands, real error messages, and the fixes that finally worked. ## Stack & Services - [How Much Electricity Does Self-Hosted AI Actually Use? Lightbulbs, Bitcoin Miners, and Solar Panels](https://sovgrid.org/blog/strategy-self-hosted-ai-electricity-cost-and-solar): What a DGX Spark actually draws from the wall, what that costs in Germany versus the US, how it compares to a lightbulb and a Bitcoin miner, and how many solar panels would offset it. With sources. - [Sovereign Grid Dashboard: Architecture, Service Tab Overhaul, and Service Control Pattern](https://sovgrid.org/blog/services-sovereign-dashboard): A deep dive into a self-hosted AI operations dashboard that replaces cloud dashboards with a privacy-first, hardware-aware control plane. Learn how the Service tab was rebuilt to handle long commands without layout breaks, how service control works at the system level, and why a single source of truth for your AI stack matters. - [Self-Hosted AI: Start Here](https://sovgrid.org/blog/setup-self-hosted-ai-start-here): The honest decision tree for taking a local LLM stack seriously. Hardware tradeoffs I actually made, the inference engine I picked and why, the parts that hurt the most after I started, and the reading path through the rest of this blog. - [How Two Sovereign AI Personas Run Your Blog and Nostr Feed](https://sovgrid.org/blog/strategy-agents-cipherfox-hexabella): Cipherfox and Hexabella post curated content without human oversight, using Mistral Small 4 on a DGX Spark and a hardened signing service. Here’s how it works today. - [Hub Articles Protocol: How Three Reading-Paths Earn Their Homepage Slot](https://sovgrid.org/blog/strategy-hub-articles-protocol): How sovgrid.org structures its most important posts to guide readers and shape the blog’s identity. - [MCP Registry Distribution: Submission Plan & Tracking](https://sovgrid.org/blog/strategy-mcp-registry-distribution): How we’re getting the Sovereign AI MCP endpoint listed in five registries with real traffic tracking and zero KYC friction. - [OpenClaw: What’s Still Missing for Full Usability](https://sovgrid.org/blog/strategy-openclaw-roadmap): A no-BS breakdown of the gaps in a self-hosted AI stack and the exact next steps to plug them. - [Building Per-Article Zap Tracking on Nostr, and Then Getting Zero Zaps](https://sovgrid.org/blog/strategy-zap-tracking-and-blog-nostr-account): Three Nostr identities, a working zap-attribution pipeline, 44 articles live, and after 30 days exactly zero zaps. What I learned about V4V on a small technical blog. - [Two Days From Localhost to Production: Building a Hybrid Sovereign AI Site](https://sovgrid.org/blog/two-days-from-localhost-to-production-building-a-hybrid-sovereign-ai-site): A two-day build log from localhost to a sovereign hybrid AI site. Three failure modes, exact fixes, and the reproducibility checklist most cloud guides skip. - [Two Leaderboards Nobody Reads Together: Why arena.ai Doesn't Tell You About Self-Hosted AI](https://sovgrid.org/blog/two-leaderboards-nobody-reads-together-why-arena-ai-doesn-t-tell-you-about-self-hosted-ai): Mainstream AI coverage cites only one leaderboard. arena.ai ranks quality. spark-arena.com ranks throughput on real hardware. The decision that matters lives in the third column nobody publishes. - [Sovereign AI Grid: What's Working and What Comes Next](https://sovgrid.org/blog/strategy-roadmap): Status snapshot of what is running on this stack today and what is being built next. For returning readers. New here? Read 'Self-Hosted AI: Start Here' first. - [A Self-Hosted AI Blog That Serves Both Humans and Machines](https://sovgrid.org/blog/strategy-agentic-economy-pivot): This technical blog maintains a single source of truth while layering machine-readable tools on top, ensuring both human readers and AI agents get accurate, up-to-date information. - [From Blog to Agent Tools: How One Knowledge Base Powers Both Humans and AI](https://sovgrid.org/blog/strategy-agentic-economy-pivot_part1): Learn how to transform your technical blog into a dual-purpose knowledge base that serves both human readers and AI agents while future-proofing your content strategy. - [Running a 119B AI Model at Home: Who Actually Does This in 2026](https://sovgrid.org/blog/strategy-agentic-economy-pivot_part2): A deep dive into the DGX Spark ecosystem, real power costs, and agent-driven tool adoption for self-hosting 119B models at home in 2026. - [Hands-on AI Coding Tools: Why I Kept Claude Code + Vibe and Dumped Cursor and Continue.dev](https://sovgrid.org/blog/strategy-coding-tools-evaluation): A hands-on comparison of AI coding tools testing local inference vs cloud dependency for privacy-first workflows. - [Six Weeks Running Mistral Small 4 as a Production Tool: What I Actually Learned](https://sovgrid.org/blog/strategy-mistral-claude-hybrid-learnings): A deep dive into optimizing Mistral Small 4 for local technical blogging, with practical solutions for session memory, image generation, and EEAT compliance. - [Privacy-Hardened AI Stack: OpenHands, Aider, and Gitea over Tor](https://sovgrid.org/blog/services-sovereign_dev_studio_v2_2_part1): A hardened local AI development stack using OpenHands, Aider, and Gitea over Tor with Mistral Small 4 inference - [SOVEREIGN DEV STUDIO v2: Self-Hosted AI Coding Agents That Actually Work](https://sovgrid.org/blog/services-sovereign_dev_studio_v2_2_part2): How to run OpenHands and Aider locally with Mistral Small 4 and Qwen3 Coder Next for reliable, private AI-assisted development. - [Sovereign Dev Stack: Gitea-as-Tor-Hidden-Service and pip-via-Tor](https://sovgrid.org/blog/services-sovereign_dev_studio_v2_2_part3): Protect your code and metadata from cloud services using self-hosted Git, Tor routing, and privacy-focused package management. - [How to Bootstrap New Sovereign AI Projects with SHARED_CORE](https://sovgrid.org/blog/services-sovereign_dev_studio_v2_2_part4): Learn how SHARED_CORE enforces security and consistency across Sovereign AI projects while automating setup with standardized scaffolding. - [Docker Dev Stack on DGX Spark: Compose Patterns for Sovereign AI](https://sovgrid.org/blog/services-sovereign_dev_studio_v2_2_part5): A practical guide to configuring a secure, self-hosted Docker development stack with OpenHands, Gitea, and model caching for Sovereign AI. - [NVIDIA Playbook Stack](https://sovgrid.org/blog/services-sovereign_dev_studio_v2_2_part6): How NVIDIA's tested playbooks transform DGX Spark into a reproducible AI development environment with pre-configured stacks, MCP integration, and battle-tested configurations. ## Strategy & Learnings - [How Much Electricity Does Self-Hosted AI Actually Use? Lightbulbs, Bitcoin Miners, and Solar Panels](https://sovgrid.org/blog/strategy-self-hosted-ai-electricity-cost-and-solar): What a DGX Spark actually draws from the wall, what that costs in Germany versus the US, how it compares to a lightbulb and a Bitcoin miner, and how many solar panels would offset it. With sources. - [How Two Sovereign AI Personas Run Your Blog and Nostr Feed](https://sovgrid.org/blog/strategy-agents-cipherfox-hexabella): Cipherfox and Hexabella post curated content without human oversight, using Mistral Small 4 on a DGX Spark and a hardened signing service. Here’s how it works today. - [Hub Articles Protocol: How Three Reading-Paths Earn Their Homepage Slot](https://sovgrid.org/blog/strategy-hub-articles-protocol): How sovgrid.org structures its most important posts to guide readers and shape the blog’s identity. - [MCP Registry Distribution: Submission Plan & Tracking](https://sovgrid.org/blog/strategy-mcp-registry-distribution): How we’re getting the Sovereign AI MCP endpoint listed in five registries with real traffic tracking and zero KYC friction. - [OpenClaw: What’s Still Missing for Full Usability](https://sovgrid.org/blog/strategy-openclaw-roadmap): A no-BS breakdown of the gaps in a self-hosted AI stack and the exact next steps to plug them. - [Building Per-Article Zap Tracking on Nostr, and Then Getting Zero Zaps](https://sovgrid.org/blog/strategy-zap-tracking-and-blog-nostr-account): Three Nostr identities, a working zap-attribution pipeline, 44 articles live, and after 30 days exactly zero zaps. What I learned about V4V on a small technical blog. - [Two Days From Localhost to Production: Building a Hybrid Sovereign AI Site](https://sovgrid.org/blog/two-days-from-localhost-to-production-building-a-hybrid-sovereign-ai-site): A two-day build log from localhost to a sovereign hybrid AI site. Three failure modes, exact fixes, and the reproducibility checklist most cloud guides skip. - [Two Leaderboards Nobody Reads Together: Why arena.ai Doesn't Tell You About Self-Hosted AI](https://sovgrid.org/blog/two-leaderboards-nobody-reads-together-why-arena-ai-doesn-t-tell-you-about-self-hosted-ai): Mainstream AI coverage cites only one leaderboard. arena.ai ranks quality. spark-arena.com ranks throughput on real hardware. The decision that matters lives in the third column nobody publishes. - [Sovereign AI Grid: What's Working and What Comes Next](https://sovgrid.org/blog/strategy-roadmap): Status snapshot of what is running on this stack today and what is being built next. For returning readers. New here? Read 'Self-Hosted AI: Start Here' first. - [A Self-Hosted AI Blog That Serves Both Humans and Machines](https://sovgrid.org/blog/strategy-agentic-economy-pivot): This technical blog maintains a single source of truth while layering machine-readable tools on top, ensuring both human readers and AI agents get accurate, up-to-date information. - [From Blog to Agent Tools: How One Knowledge Base Powers Both Humans and AI](https://sovgrid.org/blog/strategy-agentic-economy-pivot_part1): Learn how to transform your technical blog into a dual-purpose knowledge base that serves both human readers and AI agents while future-proofing your content strategy. - [Running a 119B AI Model at Home: Who Actually Does This in 2026](https://sovgrid.org/blog/strategy-agentic-economy-pivot_part2): A deep dive into the DGX Spark ecosystem, real power costs, and agent-driven tool adoption for self-hosting 119B models at home in 2026. - [Hands-on AI Coding Tools: Why I Kept Claude Code + Vibe and Dumped Cursor and Continue.dev](https://sovgrid.org/blog/strategy-coding-tools-evaluation): A hands-on comparison of AI coding tools testing local inference vs cloud dependency for privacy-first workflows. - [Six Weeks Running Mistral Small 4 as a Production Tool: What I Actually Learned](https://sovgrid.org/blog/strategy-mistral-claude-hybrid-learnings): A deep dive into optimizing Mistral Small 4 for local technical blogging, with practical solutions for session memory, image generation, and EEAT compliance. - [Content Quality in the AI Age: Where Our Scoring System Is Right, Wrong, and Missing](https://sovgrid.org/blog/strategy-content-quality-manifest-evaluation): A full-system review of our quality scoring pipeline against a rigorous philosophical framework. Three things it confirms, two things it exposes, and one concrete fix that changes the architecture. ## Knowledge Base - [Cross-Project KB](https://sovgrid.org/llms-kb.txt): Dialog-techniques, forbidden phrases, no-KYC affiliate policy, learning principles. ## About - [About](https://sovgrid.org/about): Stack overview, Claude vs local AI comparison. - [Full article index](https://sovgrid.org/llms-full.txt): All articles plus KB bundle. - [RSS Feed](https://sovgrid.org/rss.xml): Machine-readable article feed.