naftiko: 1.0.0-alpha2 info: label: Weave Net Container Networking description: Unified container networking workflow for managing Weave Net's IPAM, peer connections, DNS, and network status. Used by DevOps engineers and platform operators to automate container network management. tags: - Containers - Networking - Kubernetes - IPAM - DNS - DevOps created: '2026-05-03' modified: '2026-05-06' binds: - namespace: env keys: WEAVE_NET_HOST: WEAVE_NET_HOST capability: consumes: - type: http namespace: weave-net baseUri: http://127.0.0.1:6784 description: Weave Net daemon HTTP API for container network management. resources: - name: status path: /status description: Daemon status and health operations: - name: get-status method: GET description: Get Weave Net daemon status outputRawFormat: json outputParameters: - name: result type: object value: $. - name: peers path: /connect description: Peer connection management operations: - name: connect-peer method: POST description: Connect to a remote Weave peer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: ipam path: /ip description: IP address allocation management operations: - name: lookup-ip method: GET description: Look up allocated IP for a container inputParameters: - name: containerId in: path type: string required: true description: Container identifier outputRawFormat: json outputParameters: - name: result type: string value: $. - name: allocate-ip method: POST description: Allocate an IP address for a container inputParameters: - name: containerId in: path type: string required: true description: Container identifier outputRawFormat: json outputParameters: - name: result type: string value: $. - name: release-ips method: DELETE description: Release all IPs for a container inputParameters: - name: containerId in: path type: string required: true description: Container identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: default-subnet path: /ipinfo/defaultsubnet description: Default subnet information operations: - name: get-default-subnet method: GET description: Get the default IPAM subnet outputRawFormat: json outputParameters: - name: result type: string value: $. - name: dns path: /domain description: WeaveDNS domain management operations: - name: get-dns-domain method: GET description: Get the WeaveDNS domain outputRawFormat: json outputParameters: - name: result type: string value: $. - name: register-dns method: PUT description: Register a DNS name for a container inputParameters: - name: containerId in: path type: string required: true description: Container identifier - name: ip in: path type: string required: true description: Container IP address outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deregister-dns method: DELETE description: Deregister a DNS name for a container inputParameters: - name: containerId in: path type: string required: true description: Container identifier - name: ip in: path type: string required: true description: Container IP address outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8082 namespace: container-networking-api description: Unified REST API for Weave Net container networking management. resources: - path: /v1/status name: status description: Daemon status operations: - method: GET name: get-status description: Get Weave Net daemon status call: weave-net.get-status outputParameters: - type: object mapping: $. - path: /v1/peers name: peers description: Peer connection management operations: - method: POST name: connect-peer description: Connect to a remote peer call: weave-net.connect-peer outputParameters: - type: object mapping: $. - path: /v1/ipam/allocations name: ipam-allocations description: IP address allocations operations: - method: POST name: allocate-ip description: Allocate IP for a container call: weave-net.allocate-ip outputParameters: - type: object mapping: $. - path: /v1/ipam/allocations/{containerId} name: ipam-allocation description: Container IP allocation operations: - method: GET name: lookup-ip description: Look up container IP call: weave-net.lookup-ip with: containerId: rest.containerId outputParameters: - type: object mapping: $. - method: DELETE name: release-ips description: Release container IPs call: weave-net.release-ips with: containerId: rest.containerId outputParameters: - type: object mapping: $. - path: /v1/ipam/subnet name: default-subnet description: Default subnet information operations: - method: GET name: get-default-subnet description: Get default IPAM subnet call: weave-net.get-default-subnet outputParameters: - type: object mapping: $. - path: /v1/dns/domain name: dns-domain description: DNS domain operations: - method: GET name: get-dns-domain description: Get WeaveDNS domain call: weave-net.get-dns-domain outputParameters: - type: object mapping: $. - path: /v1/dns/registrations/{containerId}/{ip} name: dns-registration description: DNS name registrations operations: - method: PUT name: register-dns description: Register container DNS name call: weave-net.register-dns with: containerId: rest.containerId ip: rest.ip outputParameters: - type: object mapping: $. - method: DELETE name: deregister-dns description: Deregister container DNS name call: weave-net.deregister-dns with: containerId: rest.containerId ip: rest.ip outputParameters: - type: object mapping: $. - type: mcp port: 9092 namespace: container-networking-mcp transport: http description: MCP server for AI-assisted Weave Net container networking management. tools: - name: get-daemon-status description: Get the current status of the Weave Net daemon including peers and IPAM state hints: readOnly: true openWorld: false call: weave-net.get-status outputParameters: - type: object mapping: $. - name: connect-to-peer description: Connect Weave Net to a remote peer node hints: readOnly: false idempotent: true call: weave-net.connect-peer outputParameters: - type: object mapping: $. - name: allocate-container-ip description: Allocate an IP address for a container on the Weave network hints: readOnly: false idempotent: false call: weave-net.allocate-ip with: containerId: tools.containerId outputParameters: - type: object mapping: $. - name: lookup-container-ip description: Look up the IP address allocated to a container hints: readOnly: true openWorld: false call: weave-net.lookup-ip with: containerId: tools.containerId outputParameters: - type: object mapping: $. - name: release-container-ips description: Release all IP addresses allocated to a container hints: readOnly: false destructive: true call: weave-net.release-ips with: containerId: tools.containerId outputParameters: - type: object mapping: $. - name: get-default-subnet description: Get the default subnet used for IPAM allocation hints: readOnly: true openWorld: false call: weave-net.get-default-subnet outputParameters: - type: object mapping: $. - name: get-dns-domain description: Get the WeaveDNS domain suffix for name resolution hints: readOnly: true openWorld: false call: weave-net.get-dns-domain outputParameters: - type: object mapping: $. - name: register-container-dns description: Register a DNS name for a container in WeaveDNS hints: readOnly: false idempotent: true call: weave-net.register-dns with: containerId: tools.containerId ip: tools.ip outputParameters: - type: object mapping: $. - name: deregister-container-dns description: Deregister a container's DNS name from WeaveDNS hints: readOnly: false destructive: true call: weave-net.deregister-dns with: containerId: tools.containerId ip: tools.ip outputParameters: - type: object mapping: $.