Documentation Index
Fetch the complete documentation index at: https://docs.equinix.dev/llms.txt
Use this file to discover all available pages before exploring further.
The promise: the failure mode of a poorly-prompted agent is a closed PR, not a misconfigured Cloud Router. Every guarantee on this page is enforced at the package level — not relied on at the prompt level.
Six safety controls
Plan-only by default
Every Terraform output ships with
prevent_destroy and an apply
guard. The default execution mode is dry-run.
Control: F-001Scoped MCP identities
Agents authenticate as
network-agent-mcp@ users with project,
metro, and resource scopes. Personal admin identities are never
used for OAuth consent.
Control: F-014Account-aware preflight
Five blocking gates run before any mutating tool: ports/devices,
observability permission, developer app, capacity confirmation,
provider quote.
Control: F-022
pricing.md governance
The agent reads commercial estimates from a versioned
pricing.md contract. Anything missing is reported as
quote_required rather than fabricated.
Control: F-031Audit log per plan
Every plan run captures the prompt, the read tools, the blocked
mutating tools, the timestamp, and the dedicated MCP user. Logs
export as JSON or to a customer SIEM webhook.
Control: F-040
Reviewer-grade Terraform
Output is shaped to be reviewable in a PR — modules, lifecycle
blocks, apply guards, and explicit quote-status fields the reviewer
can grep for before merging.
Control: F-052
What an agent literally cannot do
Run terraform apply
Run terraform apply
Generated HCL ships with
lifecycle { prevent_destroy = true }
on every resource. The CLI never invokes terraform apply —
only terraform init -backend=false and terraform validate.To actually apply, a human reviewer opens the generated PR, edits
out the apply guard, and runs terraform apply against their own
backend.Create or update a Fabric resource without confirmation
Create or update a Fabric resource without confirmation
Mutating MCP tools are gated by the
confirmation envelope:The agent receives this envelope instead of a tool result, with
no execution side-effect.
Spend money or move billing scope
Spend money or move billing scope
pricing.md records carry an agent_instruction field. Common
values:use_for_directional_estimate_only— fine to quoterequire_account_team_confirmation_before_apply— gatequote_required— fabricating a number is a violation
use_for_directional_estimate_only falls back to
quote.Authenticate as a personal admin
Authenticate as a personal admin
The MCP profile expects a dedicated user identity
(
network-agent-mcp@company.com) scoped to the project. Personal
admin OAuth is rejected at the MCP layer.Bypass the audit log
Bypass the audit log
Every plan run writes a JSONL line to
.equinix-dev/audit/<run-id>.jsonl with the prompt, the read tools,
the blocked mutating tools, the timestamp, and the agent identity.
The CLI cannot write to a real Equinix account without first
appending an entry; the local explorer can stream the same shape to
a customer SIEM webhook.What still requires a human
Resolve preflight blockers
The five readiness gates — local
manifest, money guard, Terraform mapping, developer app, account
assets — must all pass before any mutating call is even attempted.
Two of those (developer app, account assets) are administrative
actions on the Equinix portal that only a human can complete.
Approve the Terraform PR
The PR review is a real PR review. The reviewer’s job is to read
the HCL, check the pricing patch, validate the module versions,
and either approve or request changes.
Run terraform apply
The reviewer or platform engineer runs
terraform apply against
their own backend, with their own credentials. equinix.dev never
holds those credentials.Compliance roadmap
This is a concept-grade roadmap. Real compliance scope is set by
Equinix’s existing programs.
| Item | Status |
|---|---|
| SOC 2 Type II | In audit · Q3 2026 |
| ISO 27001 | Scoped · 2027 |
| HIPAA | BAA on request |
| FedRAMP | Via Equinix Government Cloud |
| Subprocessors (local demo) | None |