Fastly · Capability

Fastly Load Balancing — Server Pools

Manage Fastly dynamic server pools and their member servers. Pools allow servers to be added or removed without activating a new service version.

Fastly Load Balancing — Server Pools is a Naftiko capability published by Fastly, one of 73 capabilities the APIs.io network indexes for this provider. It bundles 10 operations across the GET, POST, PATCH, and DELETE methods rooted at /v1/services/{…}/pools.

The capability includes 4 read-only operations and 6 state-changing operations. Lead operation: List Fastly server pools. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Fastly, Load Balancing, and Server Pools.

Run with Naftiko FastlyLoad BalancingServer Pools

What You Can Do

GET
Listpools — List pools
/v1/services/{service-id}/pools
POST
Createpool — Create pool
/v1/services/{service-id}/pools
GET
Getpool — Get pool
/v1/services/{service-id}/pools/{pool-id}
PATCH
Updatepool — Update pool
/v1/services/{service-id}/pools/{pool-id}
DELETE
Deletepool — Delete pool
/v1/services/{service-id}/pools/{pool-id}
GET
Listservers — List pool servers
/v1/services/{service-id}/pools/{pool-id}/servers
POST
Createserver — Create pool server
/v1/services/{service-id}/pools/{pool-id}/servers
GET
Getserver — Get pool server
/v1/services/{service-id}/pools/{pool-id}/servers/{server-id}
PATCH
Updateserver — Update pool server
/v1/services/{service-id}/pools/{pool-id}/servers/{server-id}
DELETE
Deleteserver — Delete pool server
/v1/services/{service-id}/pools/{pool-id}/servers/{server-id}

MCP Tools

list-pools

List Fastly server pools

read-only idempotent
create-pool

Create a Fastly server pool

get-pool

Get a Fastly server pool

read-only idempotent
update-pool

Update a Fastly server pool

idempotent
delete-pool

Delete a Fastly server pool

idempotent
list-pool-servers

List servers in a Fastly server pool

read-only idempotent
create-pool-server

Add a server to a Fastly server pool

get-pool-server

Get a server in a Fastly server pool

read-only idempotent
update-pool-server

Update a server in a Fastly server pool

idempotent
delete-pool-server

Remove a server from a Fastly server pool

idempotent

Capability Spec

load-balancing-pools.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Fastly Load Balancing — Server Pools
  description: Manage Fastly dynamic server pools and their member servers. Pools allow servers to be added or removed without activating a new service version.
  tags: [Fastly, Load Balancing, Server Pools]
  created: '2026-05-22'
  modified: '2026-05-22'
binds:
- namespace: env
  keys: { FASTLY_API_KEY: FASTLY_API_KEY }
capability:
  consumes:
  - type: http
    namespace: load-balancing-pools
    baseUri: https://api.fastly.com
    description: Dynamic server pools and pool servers.
    resources:
    - name: pools
      path: /service/{service_id}/pool
      operations:
      - { name: listpools, method: GET, description: List server pools, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
      - { name: createpool, method: POST, description: Create server pool, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
    - name: pool
      path: /service/{service_id}/pool/{pool_id}
      operations:
      - { name: getpool, method: GET, description: Get server pool, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
      - { name: updatepool, method: PATCH, description: Update server pool, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
      - { name: deletepool, method: DELETE, description: Delete server pool, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
    - name: pool-servers
      path: /service/{service_id}/pool/{pool_id}/server
      operations:
      - { name: listservers, method: GET, description: List pool servers, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
      - { name: createserver, method: POST, description: Create pool server, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
    - name: pool-server
      path: /service/{service_id}/pool/{pool_id}/server/{server_id}
      operations:
      - { name: getserver, method: GET, description: Get pool server, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
      - { name: updateserver, method: PATCH, description: Update pool server, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
      - { name: deleteserver, method: DELETE, description: Delete pool server, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] }
    authentication: { type: apikey, key: Fastly-Key, value: '{{env.FASTLY_API_KEY}}', placement: header }
  exposes:
  - type: rest
    namespace: load-balancing-pools-rest
    port: 8080
    description: REST adapter.
    resources:
    - path: /v1/services/{service-id}/pools
      name: pools
      description: Pools collection.
      operations:
      - { method: GET, name: listpools, description: List pools, call: load-balancing-pools.listpools, outputParameters: [ { type: object, mapping: $. } ] }
      - { method: POST, name: createpool, description: Create pool, call: load-balancing-pools.createpool, outputParameters: [ { type: object, mapping: $. } ] }
    - path: /v1/services/{service-id}/pools/{pool-id}
      name: pool
      description: Single pool.
      operations:
      - { method: GET, name: getpool, description: Get pool, call: load-balancing-pools.getpool, outputParameters: [ { type: object, mapping: $. } ] }
      - { method: PATCH, name: updatepool, description: Update pool, call: load-balancing-pools.updatepool, outputParameters: [ { type: object, mapping: $. } ] }
      - { method: DELETE, name: deletepool, description: Delete pool, call: load-balancing-pools.deletepool, outputParameters: [ { type: object, mapping: $. } ] }
    - path: /v1/services/{service-id}/pools/{pool-id}/servers
      name: pool-servers
      description: Pool servers collection.
      operations:
      - { method: GET, name: listservers, description: List pool servers, call: load-balancing-pools.listservers, outputParameters: [ { type: object, mapping: $. } ] }
      - { method: POST, name: createserver, description: Create pool server, call: load-balancing-pools.createserver, outputParameters: [ { type: object, mapping: $. } ] }
    - path: /v1/services/{service-id}/pools/{pool-id}/servers/{server-id}
      name: pool-server
      description: Single pool server.
      operations:
      - { method: GET, name: getserver, description: Get pool server, call: load-balancing-pools.getserver, outputParameters: [ { type: object, mapping: $. } ] }
      - { method: PATCH, name: updateserver, description: Update pool server, call: load-balancing-pools.updateserver, outputParameters: [ { type: object, mapping: $. } ] }
      - { method: DELETE, name: deleteserver, description: Delete pool server, call: load-balancing-pools.deleteserver, outputParameters: [ { type: object, mapping: $. } ] }
  - type: mcp
    namespace: load-balancing-pools-mcp
    port: 9090
    transport: http
    description: MCP adapter.
    tools:
    - { name: list-pools, description: List Fastly server pools, hints: { readOnly: true, destructive: false, idempotent: true }, call: load-balancing-pools.listpools, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: create-pool, description: Create a Fastly server pool, hints: { readOnly: false, destructive: false, idempotent: false }, call: load-balancing-pools.createpool, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: get-pool, description: Get a Fastly server pool, hints: { readOnly: true, destructive: false, idempotent: true }, call: load-balancing-pools.getpool, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: update-pool, description: Update a Fastly server pool, hints: { readOnly: false, destructive: false, idempotent: true }, call: load-balancing-pools.updatepool, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: delete-pool, description: Delete a Fastly server pool, hints: { readOnly: false, destructive: true, idempotent: true }, call: load-balancing-pools.deletepool, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: list-pool-servers, description: List servers in a Fastly server pool, hints: { readOnly: true, destructive: false, idempotent: true }, call: load-balancing-pools.listservers, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: create-pool-server, description: Add a server to a Fastly server pool, hints: { readOnly: false, destructive: false, idempotent: false }, call: load-balancing-pools.createserver, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: get-pool-server, description: Get a server in a Fastly server pool, hints: { readOnly: true, destructive: false, idempotent: true }, call: load-balancing-pools.getserver, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: update-pool-server, description: Update a server in a Fastly server pool, hints: { readOnly: false, destructive: false, idempotent: true }, call: load-balancing-pools.updateserver, outputParameters: [ { type: object, mapping: $. } ] }
    - { name: delete-pool-server, description: Remove a server from a Fastly server pool, hints: { readOnly: false, destructive: true, idempotent: true }, call: load-balancing-pools.deleteserver, outputParameters: [ { type: object, mapping: $. } ] }