AWS MCP v4.0.0 / Bible v19.1.10 upgrade — registry-dispatch architecture surfaced
AWS MCP v4.0.0 / Bible v19.1.10 upgrade
Outcome
- Repo:
ARJ999/aws-god-agent-mcp-serverPR #8 onupgrade/bible-v19.1.10-server-v4.0.0 - Server: v3.1.0 → v4.0.0, Bible v18.1 → v19.1.10
- 18 meta-tools / 3,006 internal tools (audit-verified) / 400+ services via CLI fallback
- Pair status: DRAFT (cutover blocked at Phase 9 pending AJ approval)
Architectural surface — R50 DRAFT (Bible cascade candidate)
Registry-dispatch is a third architectural pattern for MCP servers, sibling to:
- R45 (two-layer wrapper-impl arity) — two-layer FastMCP with separate
api_clientclass - R49 (intra-class arity) — all-in-one-class self.
(…) dispatch - R50 (registry-dispatch) — N meta-tools dispatching M internal tools (M >> N) via singleton registry, where dispatch is
func(**params)lookup-by-name across module boundaries
Audit invariants for registry-dispatch (scripts/registry_dispatch_audit.py):
- No
**kwargsin tool function signatures (Law 5) - No positional-only parameters (R46 — kwargs-by-name)
- No
*argsin tool function signatures - Walk
tree.bodyonly, NOTast.walk— nested helpers (boto3 paginators) are legitimate, must not be flagged - Meta-tools (
@mcp.tool()-decorated) have zero**kwargs/*args - Optional name-uniqueness across modules (Law 4)
This pattern generalizes to any MCP server using a registry to manage large internal tool surfaces (e.g., when tool count would blow context budget at registration time).
Reusable framework discoveries
- CLI passthrough via shared helper (
src/tools/_cli_helper.py): for vendor services where SDK lag exists (Q Apps, AppFabric, Cost Optimization Hub all GA 2024 with patchy boto3 coverage),cli_passthrough(namespace, operation, args)shells out to vendor CLI — forward-compatible with newest API surfaces. Generalizes beyond AWS to Snowflake/Salesforce/etc. - install_annotator + R33 + R41-R44: a single decorator wrap delivers outputSchema, ToolAnnotations, result-shape envelope, AND vendor-error-class unification (FEATURE_NOT_ENABLED, PERMISSION_DENIED, RATE_LIMITED, NOT_FOUND, GENERIC). Retro-fits onto v18.1-era codebases without per-tool source changes.
- R48 composite tools for operator-intent:
aws_lambda_deploy_fullcollapses 5+ AWS API calls (role + policy + function + alarm + tags) into one call with structuredsteps[]reporting. Same pattern:aws_ec2_launch_full,aws_s3_bucket_secure_create,aws_iam_role_for_service,aws_account_security_baseline.
Operational gotchas (concrete)
- Pairing Contract
internal_registry_countMUST matchpython3 scripts/registry_dispatch_audit.pyoutput exactly, not hand-counted — drift is a Phase 5 cascade-check failure. Useinventory_verification_commandfield in contract.yaml to lock the source of truth. paginatenested helper in 3 different boto3-using tools is NOT a Law 4 collision — it’s a legitimate paginator pattern. Audit script must walktree.bodyonly (module-level), notast.walk(which descends into nested defs).- Secret scanner blocks AWS test fixtures that look like real keys (
AKIA...). Use string concatenation at runtime to construct test-shaped sentinels, with explicit# test sentinelcomments. /opt/mcp-servers/aws-mcp/is NOT a git clone — sync at cutover requires either freshgit clone(destructive) or careful overlay. Recommend converting to git clone post-cutover for v4.0.0+ to enablegit pullupgrades.
Cutover prerequisites (Phase 9 — when AJ greenlights)
- Merge PR #8 to main
- Tag rollback:
docker tag aws-mcp-aws-mcp:latest aws-mcp-aws-mcp:v3.1.0-pre-upgrade - Sync
/opt/mcp-servers/aws-mcp/from main IMAGE_TAG=v4.0.0 docker compose up -d- Run 17-check Phase 9 gate (skill §7 commands)
- Run R32 Census:
scripts/tool_health_census.py --endpoint https://aws-mcp.arjtech.in/mcp - If 17/17 + 0 TRUE_BUG: edit
docs/pairing-contract.mdflippingpair_status: DRAFT → SIGNED, rebuild + redeploy - File Bible PR proposing R50 canonization
Bible upstream cascade owed
After SIGN: file PR against ARJ999/MCP-God-Agent-Development-Bible introducing 19_FRAMEWORK_REFINEMENTS_v19.1.12.md with R50 (registry-dispatch pattern), framework/scripts/registry_dispatch_audit.py, and Pair Architecture Matrix update in mcp-server-development skill.
Related
- snowflake
- bible-v1918-r41-r44-retrofit-pattern
- snowflake-mcp-v22-retro-bible-law-11-r38-r40-upstream-verifi
- adopt-registry-dispatch-as-a-third-architectural-pattern-r50
- fastmcp
- aws-mcp-v400-signed-2026-05-08-bible-v19110-r50-cascade-live
- aws-mcp-v400-bible-v19110-signed-in-production-at-httpsaws-m
- ship-aws-god-agent-mcp-server-v400-v401-patch-under-bible-v1
- ship-aws-god-agent-mcp-server-v401-v410-minor-release-under