Skip to main content

Module m0016_seed_starter_mcp_servers

Module m0016_seed_starter_mcp_servers 

Source
Expand description

Seed the global MCP Servers catalog (db_mcp_servers, per-channel) with a curated, credential-free starter set on fresh install.

Runs exactly once per channel, tracked in that channel’s db_migrations table — NOT gated on “is the catalog currently empty,” for the same reason m0015_seed_starter_skills isn’t: that gate can’t distinguish “never seeded” from “seeded then the user deleted every starter server on purpose,” which would silently resurrect the defaults on the next restart after a full deletion. The migration framework’s once-ever-per-channel tracking fixes this at the root: once 0016_seed_starter_mcp_servers is marked applied, it never runs again for that channel regardless of what the user does to the catalog afterward.

up() checks for an existing name collision first (same self-heal as m0015) and treats it as “already seeded” rather than inserting — guards against any future retired startup-seed path leaving the six starter names present before this migration ever ran.

See docs/specs/SPEC_ARMORY_MCP_SERVER_DEFAULT_SEED_CATALOG_2026_07_13.md for why only credential-free, fully local servers are in this manifest.

Structs§

M0016SeedStarterMcpServers