Runloop · Capability

Runloop Secrets (secrets)

Runloop secrets capability covering one Runloop business surface. 5 operations.

Runloop Secrets (secrets) is a Naftiko capability published by Runloop, one of 17 capabilities the APIs.io network indexes for this provider. It bundles 5 operations across the POST and GET methods rooted at /v1/secrets.

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

Tagged areas include Runloop, Secrets, AI Agents, and Sandboxes.

Run with Naftiko RunloopSecretsAI AgentsSandboxes

What You Can Do

POST
Createsecret — Create a Secret.
/v1/secrets
GET
Listsecrets — List Secrets.
/v1/secrets
GET
Getsecret — Get a Secret.
/v1/secrets/{name}
POST
Updatesecret — Update a Secret.
/v1/secrets/{name}
POST
Deletesecret — Delete a Secret.
/v1/secrets/{name}/delete

MCP Tools

runloop-secrets-secrets-createSecret

Create a Secret.

runloop-secrets-secrets-listSecrets

List Secrets.

read-only idempotent
runloop-secrets-secrets-getSecret

Get a Secret.

read-only idempotent
runloop-secrets-secrets-updateSecret

Update a Secret.

runloop-secrets-secrets-deleteSecret

Delete a Secret.

Capability Spec

secrets-secrets.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Runloop Secrets (secrets)
  description: Runloop secrets capability covering one Runloop business surface. 5 operations.
  tags:
  - Runloop
  - Secrets
  - AI Agents
  - Sandboxes
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    RUNLOOP_API_KEY: RUNLOOP_API_KEY
capability:
  consumes:
  - type: http
    namespace: secrets-secrets
    baseUri: https://api.runloop.ai
    description: Runloop secrets business capability. Self-contained, no shared references.
    resources:
    - name: v1-secrets
      path: /v1/secrets
      operations:
      - name: createSecret
        method: POST
        description: Create a Secret.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: listSecrets
        method: GET
        description: List Secrets.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: The limit of items to return. Default is 20. Max is 5000.
          required: false
    - name: v1-secrets-name
      path: /v1/secrets/{name}
      operations:
      - name: getSecret
        method: GET
        description: Get a Secret.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: The name of the Secret to retrieve.
          required: true
      - name: updateSecret
        method: POST
        description: Update a Secret.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: The name of the Secret to update.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-secrets-name-delete
      path: /v1/secrets/{name}/delete
      operations:
      - name: deleteSecret
        method: POST
        description: Delete a Secret.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: The name of the Secret to delete.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: bearer
      value: '{{env.RUNLOOP_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: secrets-secrets-rest
    port: 8080
    description: REST adapter for Runloop secrets. One Spectral-compliant resource per consumed operation.
    resources:
    - path: /v1/secrets
      name: v1-secrets
      description: REST surface for v1-secrets.
      operations:
      - method: POST
        name: createSecret
        description: Create a Secret.
        call: secrets-secrets.createSecret
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: listSecrets
        description: List Secrets.
        call: secrets-secrets.listSecrets
        with:
          limit: rest.params.limit
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/secrets/{name}
      name: v1-secrets-name
      description: REST surface for v1-secrets-name.
      operations:
      - method: GET
        name: getSecret
        description: Get a Secret.
        call: secrets-secrets.getSecret
        with:
          name: rest.params.name
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: updateSecret
        description: Update a Secret.
        call: secrets-secrets.updateSecret
        with:
          name: rest.params.name
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/secrets/{name}/delete
      name: v1-secrets-name-delete
      description: REST surface for v1-secrets-name-delete.
      operations:
      - method: POST
        name: deleteSecret
        description: Delete a Secret.
        call: secrets-secrets.deleteSecret
        with:
          name: rest.params.name
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: secrets-secrets-mcp
    port: 9090
    transport: http
    description: MCP adapter for Runloop secrets. One tool per consumed operation.
    tools:
    - name: runloop-secrets-secrets-createSecret
      description: Create a Secret.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: secrets-secrets.createSecret
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: runloop-secrets-secrets-listSecrets
      description: List Secrets.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: secrets-secrets.listSecrets
      with:
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.
    - name: runloop-secrets-secrets-getSecret
      description: Get a Secret.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: secrets-secrets.getSecret
      with:
        name: tools.name
      outputParameters:
      - type: object
        mapping: $.
    - name: runloop-secrets-secrets-updateSecret
      description: Update a Secret.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: secrets-secrets.updateSecret
      with:
        name: tools.name
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: runloop-secrets-secrets-deleteSecret
      description: Delete a Secret.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: secrets-secrets.deleteSecret
      with:
        name: tools.name
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.