Twilio · Capability

Twilio Messaging API — Media

Twilio Messaging API — Media. 3 operations. Lead operation: Twilio List Media for a Message. Self-contained Naftiko capability covering one Twilio business surface.

Run with Naftiko TwilioMedia

What You Can Do

GET
Listmedia — Twilio List Media for a Message
/v1/accounts/{accountsid}/messages/{messagesid}/media-json
GET
Fetchmedia — Twilio Fetch a Media Resource
/v1/accounts/{accountsid}/messages/{messagesid}/media/mediasid-json
DELETE
Deletemedia — Twilio Delete a Media Resource
/v1/accounts/{accountsid}/messages/{messagesid}/media/mediasid-json

MCP Tools

twilio-list-media-message

Twilio List Media for a Message

read-only idempotent
twilio-fetch-media-resource

Twilio Fetch a Media Resource

read-only idempotent
twilio-delete-media-resource

Twilio Delete a Media Resource

idempotent

Capability Spec

messaging-media.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Twilio Messaging API — Media
  description: 'Twilio Messaging API — Media. 3 operations. Lead operation: Twilio List Media for a Message. Self-contained
    Naftiko capability covering one Twilio business surface.'
  tags:
  - Twilio
  - Media
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TWILIO_API_KEY: TWILIO_API_KEY
capability:
  consumes:
  - type: http
    namespace: messaging-media
    baseUri: https://api.twilio.com/2010-04-01
    description: Twilio Messaging API — Media business capability. Self-contained, no shared references.
    resources:
    - name: Accounts-AccountSid-Messages-MessageSid-Media.json
      path: /Accounts/{AccountSid}/Messages/{MessageSid}/Media.json
      operations:
      - name: listmedia
        method: GET
        description: Twilio List Media for a Message
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: PageSize
          in: query
          type: integer
    - name: Accounts-AccountSid-Messages-MessageSid-Media-MediaSid}.json
      path: /Accounts/{AccountSid}/Messages/{MessageSid}/Media/{MediaSid}.json
      operations:
      - name: fetchmedia
        method: GET
        description: Twilio Fetch a Media Resource
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: MediaSid
          in: path
          type: string
          required: true
      - name: deletemedia
        method: DELETE
        description: Twilio Delete a Media Resource
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: MediaSid
          in: path
          type: string
          required: true
    authentication:
      type: basic
      username: '{{env.TWILIO_USER}}'
      password: '{{env.TWILIO_PASS}}'
  exposes:
  - type: rest
    namespace: messaging-media-rest
    port: 8080
    description: REST adapter for Twilio Messaging API — Media. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/accounts/{accountsid}/messages/{messagesid}/media-json
      name: accounts-accountsid-messages-messagesid-media-json
      description: REST surface for Accounts-AccountSid-Messages-MessageSid-Media.json.
      operations:
      - method: GET
        name: listmedia
        description: Twilio List Media for a Message
        call: messaging-media.listmedia
        with:
          PageSize: rest.PageSize
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/accounts/{accountsid}/messages/{messagesid}/media/mediasid-json
      name: accounts-accountsid-messages-messagesid-media-mediasid-json
      description: REST surface for Accounts-AccountSid-Messages-MessageSid-Media-MediaSid}.json.
      operations:
      - method: GET
        name: fetchmedia
        description: Twilio Fetch a Media Resource
        call: messaging-media.fetchmedia
        with:
          MediaSid: rest.MediaSid
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletemedia
        description: Twilio Delete a Media Resource
        call: messaging-media.deletemedia
        with:
          MediaSid: rest.MediaSid
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: messaging-media-mcp
    port: 9090
    transport: http
    description: MCP adapter for Twilio Messaging API — Media. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: twilio-list-media-message
      description: Twilio List Media for a Message
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: messaging-media.listmedia
      with:
        PageSize: tools.PageSize
      outputParameters:
      - type: object
        mapping: $.
    - name: twilio-fetch-media-resource
      description: Twilio Fetch a Media Resource
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: messaging-media.fetchmedia
      with:
        MediaSid: tools.MediaSid
      outputParameters:
      - type: object
        mapping: $.
    - name: twilio-delete-media-resource
      description: Twilio Delete a Media Resource
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: messaging-media.deletemedia
      with:
        MediaSid: tools.MediaSid
      outputParameters:
      - type: object
        mapping: $.