aws-samples / aws-samples/sample-autonomous-cloud-coding-agents
feat(security): MCP supply-chain controls for extended-tier repos
- Langage dominant
- TypeScript
- Étoiles
- 143
- Forks
- 46
- Merge moyen
- 3 j 10 h
- PR mergées (30 j)
- 24
Description
**Context:** ROADMAP.md → Security → MCP supply-chain controls
**Related:** #429 (signed attestation RFC—complementary), extended-tool-capability-tiers draft, #246
---
## Component
Agent (Python runtime)
## Describe the feature
For **extended-tier** repos (see tool capability tiers draft):
- **Pin or self-host** MCP servers (no floating upstream URLs in production).
- Keep **`.mcp.json` in version control**; blueprint references pinned commit/artifact.
- **Verify tool descriptors** before enablement (hash/signature check at task start).
- **No dynamic tool discovery** in production blueprints (static allowlist only).
Mitigates tool poisoning and rug-pull risks where a remote MCP server changes tool behavior after onboarding.
## Use case
MCP expands agent capability but introduces supply-chain risk: a compromised or updated MCP server can exfiltrate data or add malicious tools. Extended-tier repos need controls comparable to dependency pinning.
## Proposed solution
1. Registry (#246) stores pinned MCP server artifacts with immutable versions.
2. Runtime validates descriptor hash at resolution; reject drift.
3. Blueprint `mcp_servers[]` entries require `registry_ref@version` in production mode.
4. Cedar deny for `mcp.discover` / dynamic registration in production.
5. Operator audit when pinned version ages beyond policy.
6. Document in `docs/design/SECURITY.md`, `docs/design/COMPUTE.md`.
## Other information
- Distinct from #429 (attestation for `AGENTS.md` / instruction files).
- Requires **extended tool capability tiers** draft.
- Design context: `docs/design/COMPUTE.md`, `docs/design/SECURITY.md`.
- [x] This might be a breaking change
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par ROADMAP.md et le brouillon extended-tool-capability-tiers, puis lisez docs/design/SECURITY.md et docs/design/COMPUTE.md avec issue #246 et le Agent Python runtime context. Le travail est considéré comme terminé lorsque les contrôles de chaîne d’approvisionnement MCP de l’extended-tier, les restrictions de production, la vérification des descripteurs, l’audit de l’ancienneté des versions et la documentation associée disposent d’une implémentation définie et révisable.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- ai, security
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100