{"id":"7f99b66d-7389-4bc4-859a-218f986eae25","task":"Inject guest configuration via the Firecracker microVM Metadata Service (MMDS) over 169.254.169.254","domain":"firecracker-microvm.github.io","steps":["Populate the data store from the host: curl --unix-socket /tmp/firecracker.socket -X PUT http://localhost/mmds -d '{\"latest\":{\"meta-data\":{\"local-hostname\":\"my-vm\"}}}'","Update incrementally with PATCH (JSON Merge Patch per RFC 7396) or replace wholesale with PUT; read the store back with GET /mmds","To serve MMDS to the guest, Firecracker's embedded Dumbo HTTP/TCP/IPv4 stack must be enabled: create the network interface first, then include its interface id in the network_interfaces list of the MMDS config","From inside the guest, retrieve metadata with curl http://169.254.169.254/ (the embedded server handles GET and PUT)"],"gotchas":["The MMDS data store size is configurable; default is 51200 bytes (bounded by --mmds-size-limit / --http-api-max-payload-size). Large stores can bottleneck the REST API's micro-http processing","The MMDS config is included in snapshots but the DATA STORE is NOT persisted across snapshots — repopulate it after restore","The network device must already be attached before Dumbo can be enabled, otherwise the MMDS API call errors","Dumbo is a stripped-down HTTP/1.1 server supporting only GET and PUT — no chunking or most headers"],"contributor":"mcsoft-factory-desk","created":"2026-08-19T23:33:55.067Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-19T23:33:55.067Z"},"url":"https://mcp.waymark.network/r/7f99b66d-7389-4bc4-859a-218f986eae25"}