Browserless · Capability

Browserless — Profiles and Proxies

Browserless reusable-profile and proxy-utility capability. Covers /profile (CRUD), /profile/refresh, /profiles (list), and /proxy/cities helper to enumerate residential-proxy cities.

Browserless — Profiles and Proxies is a Naftiko capability published by Browserless, one of 4 capabilities the APIs.io network indexes for this provider. It bundles 5 operations across the GET, POST, and DELETE methods.

The capability includes 2 read-only operations and 3 state-changing operations. Lead operation: List profiles. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Browserless, Profiles, Proxies, and Persistence.

Run with Naftiko BrowserlessProfilesProxiesPersistence

What You Can Do

GET
Listprofiles
/profiles
POST
Createprofile
/profile
DELETE
Deleteprofile
/profile
POST
Refreshprofile
/profile/refresh
GET
Listproxycities
/proxy/cities

MCP Tools

browserless-list-profiles

List profiles.

read-only idempotent
browserless-create-profile

Create a profile from a session.

browserless-delete-profile

Delete a profile.

idempotent
browserless-refresh-profile

Refresh a profile from a more recent session.

browserless-proxy-cities

List residential-proxy egress cities.

read-only idempotent

Capability Spec

profiles.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Browserless — Profiles and Proxies
  description: >-
    Browserless reusable-profile and proxy-utility capability. Covers
    /profile (CRUD), /profile/refresh, /profiles (list), and /proxy/cities
    helper to enumerate residential-proxy cities.
  tags:
    - Browserless
    - Profiles
    - Proxies
    - Persistence
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
  - namespace: env
    keys:
      BROWSERLESS_API_TOKEN: BROWSERLESS_API_TOKEN
capability:
  consumes:
    - type: http
      namespace: profiles
      baseUri: https://production-sfo.browserless.io
      description: Profile and proxy-utility consumes block.
      resources:
        - name: profiles
          path: /profiles
          operations:
            - name: listProfiles
              method: GET
              description: List profiles for the token.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: array
                  value: $.
              inputParameters:
                - name: token
                  in: query
                  type: string
                  required: true
        - name: profile
          path: /profile
          operations:
            - name: createProfile
              method: POST
              description: Create a profile from a session.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  required: true
                - name: token
                  in: query
                  type: string
                  required: true
            - name: deleteProfile
              method: DELETE
              description: Delete a profile.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: id
                  in: query
                  type: string
                  required: true
                - name: token
                  in: query
                  type: string
                  required: true
        - name: profile-refresh
          path: /profile/refresh
          operations:
            - name: refreshProfile
              method: POST
              description: Refresh a profile from a more recent session.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  required: true
                - name: token
                  in: query
                  type: string
                  required: true
        - name: proxy-cities
          path: /proxy/cities
          operations:
            - name: listProxyCities
              method: GET
              description: List residential-proxy egress cities.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: array
                  value: $.
              inputParameters:
                - name: token
                  in: query
                  type: string
                  required: true
      authentication:
        type: apikey
        key: token
        value: '{{env.BROWSERLESS_API_TOKEN}}'
        placement: query
  exposes:
    - type: rest
      namespace: profiles-rest
      port: 8080
      description: REST adapter for profiles + proxy utilities.
      resources:
        - path: /profiles
          name: profiles
          operations:
            - method: GET
              name: listProfiles
              call: profiles.listProfiles
              outputParameters: [{ type: array, mapping: $. }]
        - path: /profile
          name: profile
          operations:
            - method: POST
              name: createProfile
              call: profiles.createProfile
              with: { body: rest.body }
              outputParameters: [{ type: object, mapping: $. }]
            - method: DELETE
              name: deleteProfile
              call: profiles.deleteProfile
              outputParameters: [{ type: object, mapping: $. }]
        - path: /profile/refresh
          name: profile-refresh
          operations:
            - method: POST
              name: refreshProfile
              call: profiles.refreshProfile
              with: { body: rest.body }
              outputParameters: [{ type: object, mapping: $. }]
        - path: /proxy/cities
          name: proxy-cities
          operations:
            - method: GET
              name: listProxyCities
              call: profiles.listProxyCities
              outputParameters: [{ type: array, mapping: $. }]
    - type: mcp
      namespace: profiles-mcp
      port: 9090
      transport: http
      description: MCP adapter for profiles + proxy utilities.
      tools:
        - name: browserless-list-profiles
          description: List profiles.
          hints: { readOnly: true, destructive: false, idempotent: true }
          call: profiles.listProfiles
          outputParameters: [{ type: array, mapping: $. }]
        - name: browserless-create-profile
          description: Create a profile from a session.
          hints: { readOnly: false, destructive: false, idempotent: false }
          call: profiles.createProfile
          with: { body: tools.body }
          outputParameters: [{ type: object, mapping: $. }]
        - name: browserless-delete-profile
          description: Delete a profile.
          hints: { readOnly: false, destructive: true, idempotent: true }
          call: profiles.deleteProfile
          outputParameters: [{ type: object, mapping: $. }]
        - name: browserless-refresh-profile
          description: Refresh a profile from a more recent session.
          hints: { readOnly: false, destructive: false, idempotent: false }
          call: profiles.refreshProfile
          with: { body: tools.body }
          outputParameters: [{ type: object, mapping: $. }]
        - name: browserless-proxy-cities
          description: List residential-proxy egress cities.
          hints: { readOnly: true, destructive: false, idempotent: true }
          call: profiles.listProxyCities
          outputParameters: [{ type: array, mapping: $. }]