MobileAPI.dev · Capability

MobileAPI — demo-x7k9m2p4

MobileAPI — demo-x7k9m2p4. 23 operations. Lead operation: List All Devices. Self-contained Naftiko capability covering one Mobileapi Dev business surface.

Run with Naftiko Mobileapi Devdemo-x7k9m2p4

What You Can Do

GET
Demox7k9m2p4deviceslist — List All Devices
/v1/demo-x7k9m2p4/devices
GET
Demox7k9m2p4devicesaiquery — Natural Language Device Query (AI-Powered) - Paid Users Only
/v1/demo-x7k9m2p4/devices/ai-query
GET
Demox7k9m2p4devicesautocomplete — Autocomplete Device Names
/v1/demo-x7k9m2p4/devices/autocomplete
GET
Demox7k9m2p4devicesbybrand — [Deprecated] List Devices by Brand - Use /by-Manufacturer/ Instead
/v1/demo-x7k9m2p4/devices/by-brand
GET
Demox7k9m2p4devicesbymanufacturer — List Devices by Manufacturer
/v1/demo-x7k9m2p4/devices/by-manufacturer
GET
Demox7k9m2p4devicesbytype — List Devices by Type
/v1/demo-x7k9m2p4/devices/by-type
GET
Demox7k9m2p4devicesbyyear — List Devices by Launch Year
/v1/demo-x7k9m2p4/devices/by-year
GET
Demox7k9m2p4devicessearch — Search Device by Name or Model Number
/v1/demo-x7k9m2p4/devices/search
GET
Demox7k9m2p4devicesread — Get Device by ID
/v1/demo-x7k9m2p4/devices/{id}
GET
Demox7k9m2p4devicesbattery — Get Device Battery Specifications
/v1/demo-x7k9m2p4/devices/{id}/battery
GET
Demox7k9m2p4devicesbody — Get Device Body Specifications
/v1/demo-x7k9m2p4/devices/{id}/body
GET
Demox7k9m2p4devicescomms — Get Device Communications Specifications
/v1/demo-x7k9m2p4/devices/{id}/comms
GET
Demox7k9m2p4devicesdisplay — Get Device Display Specifications
/v1/demo-x7k9m2p4/devices/{id}/display
GET
Demox7k9m2p4devicesfeatures — Get Device Features Specifications
/v1/demo-x7k9m2p4/devices/{id}/features
GET
Demox7k9m2p4devicesimagelist — Serve full-resolution device main image for demo purposes.
/v1/demo-x7k9m2p4/devices/{id}/image
GET
Demox7k9m2p4devicesimages — Get Device Images
/v1/demo-x7k9m2p4/devices/{id}/images
GET
Demox7k9m2p4devicesmaincamera — Get Device Main Camera Specifications
/v1/demo-x7k9m2p4/devices/{id}/main-camera
GET
Demox7k9m2p4devicesmemory — Get Device Memory Specifications
/v1/demo-x7k9m2p4/devices/{id}/memory
GET
Demox7k9m2p4devicesmisc — Get Device Miscellaneous Specifications
/v1/demo-x7k9m2p4/devices/{id}/misc
GET
Demox7k9m2p4devicesnetwork — Get Device Network Specifications
/v1/demo-x7k9m2p4/devices/{id}/network
GET
Demox7k9m2p4devicesplatform — Get Device Platform Specifications
/v1/demo-x7k9m2p4/devices/{id}/platform
GET
Demox7k9m2p4devicesselfiecamera — Get Device Selfie Camera Specifications
/v1/demo-x7k9m2p4/devices/{id}/selfie-camera
GET
Demox7k9m2p4devicessound — Get Device Sound Specifications
/v1/demo-x7k9m2p4/devices/{id}/sound

MCP Tools

list-all-devices

List All Devices

read-only idempotent
natural-language-device-query-ai

Natural Language Device Query (AI-Powered) - Paid Users Only

read-only idempotent
autocomplete-device-names

Autocomplete Device Names

read-only idempotent
deprecated-list-devices-brand-use

[Deprecated] List Devices by Brand - Use /by-Manufacturer/ Instead

read-only idempotent
list-devices-manufacturer

List Devices by Manufacturer

read-only idempotent
list-devices-type

List Devices by Type

read-only idempotent
list-devices-launch-year

List Devices by Launch Year

read-only idempotent
search-device-name-model-number

Search Device by Name or Model Number

read-only idempotent
get-device-id

Get Device by ID

read-only idempotent
get-device-battery-specifications

Get Device Battery Specifications

read-only idempotent
get-device-body-specifications

Get Device Body Specifications

read-only idempotent
get-device-communications-specifications

Get Device Communications Specifications

read-only idempotent
get-device-display-specifications

Get Device Display Specifications

read-only idempotent
get-device-features-specifications

Get Device Features Specifications

read-only idempotent
serve-full-resolution-device-main

Serve full-resolution device main image for demo purposes.

read-only idempotent
get-device-images

Get Device Images

read-only idempotent
get-device-main-camera-specifications

Get Device Main Camera Specifications

read-only idempotent
get-device-memory-specifications

Get Device Memory Specifications

read-only idempotent
get-device-miscellaneous-specifications

Get Device Miscellaneous Specifications

read-only idempotent
get-device-network-specifications

Get Device Network Specifications

read-only idempotent
get-device-platform-specifications

Get Device Platform Specifications

read-only idempotent
get-device-selfie-camera-specifications

Get Device Selfie Camera Specifications

read-only idempotent
get-device-sound-specifications

Get Device Sound Specifications

read-only idempotent

Capability Spec

mobileapi-demo-x7k9m2p4.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: MobileAPI — demo-x7k9m2p4
  description: 'MobileAPI — demo-x7k9m2p4. 23 operations. Lead operation: List All Devices. Self-contained Naftiko capability
    covering one Mobileapi Dev business surface.'
  tags:
  - Mobileapi Dev
  - demo-x7k9m2p4
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MOBILEAPI_DEV_API_KEY: MOBILEAPI_DEV_API_KEY
capability:
  consumes:
  - type: http
    namespace: mobileapi-demo-x7k9m2p4
    baseUri: https://api.mobileapi.dev
    description: MobileAPI — demo-x7k9m2p4 business capability. Self-contained, no shared references.
    resources:
    - name: demo-x7k9m2p4-devices
      path: /demo-x7k9m2p4/devices/
      operations:
      - name: demox7k9m2p4deviceslist
        method: GET
        description: List All Devices
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (optional for demo)'
        - name: page
          in: query
          type: integer
          description: 'Page number (default: 1). Each page contains 50 devices.'
    - name: demo-x7k9m2p4-devices-ai-query
      path: /demo-x7k9m2p4/devices/ai-query/
      operations:
      - name: demox7k9m2p4devicesaiquery
        method: GET
        description: Natural Language Device Query (AI-Powered) - Paid Users Only
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: query
          in: query
          type: string
          description: Natural language query (e.g., 'top 5 devices with most RAM', 'phones with best battery')
          required: true
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'' (requires paid plan)'
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (requires paid plan)'
    - name: demo-x7k9m2p4-devices-autocomplete
      path: /demo-x7k9m2p4/devices/autocomplete/
      operations:
      - name: demox7k9m2p4devicesautocomplete
        method: GET
        description: Autocomplete Device Names
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (optional for demo)'
        - name: q
          in: query
          type: string
          description: Query string (minimum 5 characters)
          required: true
        - name: limit
          in: query
          type: integer
          description: 'Maximum number of suggestions to return (default: 10, max: 30).'
    - name: demo-x7k9m2p4-devices-by-brand
      path: /demo-x7k9m2p4/devices/by-brand/
      operations:
      - name: demox7k9m2p4devicesbybrand
        method: GET
        description: '[Deprecated] List Devices by Brand - Use /by-Manufacturer/ Instead'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: brand
          in: query
          type: string
          description: 'Brand/Manufacturer name to filter devices (e.g., ''Apple'', ''Samsung''). DEPRECATED: Use ''manufacturer''
            parameter with /by-manufacturer/ endpoint instead.'
          required: true
        - name: limit
          in: query
          type: integer
          description: 'Maximum number of results to return (default: 10, max: 30).'
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (less secure)'
    - name: demo-x7k9m2p4-devices-by-manufacturer
      path: /demo-x7k9m2p4/devices/by-manufacturer/
      operations:
      - name: demox7k9m2p4devicesbymanufacturer
        method: GET
        description: List Devices by Manufacturer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: manufacturer
          in: query
          type: string
          description: Manufacturer name to filter devices (e.g., 'Apple', 'Samsung').
          required: true
        - name: page
          in: query
          type: integer
          description: 'Page number (default: 1). Each page contains 50 devices.'
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (less secure)'
    - name: demo-x7k9m2p4-devices-by-type
      path: /demo-x7k9m2p4/devices/by-type/
      operations:
      - name: demox7k9m2p4devicesbytype
        method: GET
        description: List Devices by Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: type
          in: query
          type: string
          description: 'Device type: phone, tablet, laptop, wearable, or other'
          required: true
        - name: page
          in: query
          type: integer
          description: 'Page number (default: 1). Each page contains 50 devices.'
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (less secure)'
    - name: demo-x7k9m2p4-devices-by-year
      path: /demo-x7k9m2p4/devices/by-year/
      operations:
      - name: demox7k9m2p4devicesbyyear
        method: GET
        description: List Devices by Launch Year
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: year
          in: query
          type: integer
          description: Launch year (4-digit format, e.g., 2023)
          required: true
        - name: page
          in: query
          type: integer
          description: 'Page number (default: 1). Each page contains 50 items.'
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (less secure)'
    - name: demo-x7k9m2p4-devices-search
      path: /demo-x7k9m2p4/devices/search/
      operations:
      - name: demox7k9m2p4devicessearch
        method: GET
        description: Search Device by Name or Model Number
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (optional for demo)'
        - name: name
          in: query
          type: string
          description: Name of the device to search for (e.g., 'iPhone 15 Pro'). Mutually exclusive with 'model_number'.
        - name: model_number
          in: query
          type: string
          description: Model number of the device to search for (e.g., 'A3520'). Mutually exclusive with 'name'.
        - name: manufacturer
          in: query
          type: string
          description: Optional. Filter search results to devices from this manufacturer only. If no devices match the manufacturer,
            returns empty results.
        - name: limit
          in: query
          type: integer
          description: 'Optional. Number of results to return per page (default: 10, max: 30). Use this to control how many
            devices are returned in the response. For example, limit=1 r'
        - name: page
          in: query
          type: integer
          description: 'Page number (default: 1). Each page contains 50 devices.'
        - name: exact
          in: query
          type: boolean
          description: 'Set to true for exact matching (default: false). When true, only returns devices with 100% match certainty
            (exact name or exact model number match).'
    - name: demo-x7k9m2p4-devices-id
      path: /demo-x7k9m2p4/devices/{id}/
      operations:
      - name: demox7k9m2p4devicesread
        method: GET
        description: Get Device by ID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
          description: 'Recommended: ''Token YOUR_API_KEY'' or ''Bearer YOUR_API_KEY'''
        - name: key
          in: query
          type: string
          description: 'Fallback: API key as query parameter (optional for demo)'
    - name: demo-x7k9m2p4-devices-id-battery
      path: /demo-x7k9m2p4/devices/{id}/battery/
      operations:
      - name: demox7k9m2p4devicesbattery
        method: GET
        description: Get Device Battery Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-body
      path: /demo-x7k9m2p4/devices/{id}/body/
      operations:
      - name: demox7k9m2p4devicesbody
        method: GET
        description: Get Device Body Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-comms
      path: /demo-x7k9m2p4/devices/{id}/comms/
      operations:
      - name: demox7k9m2p4devicescomms
        method: GET
        description: Get Device Communications Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-display
      path: /demo-x7k9m2p4/devices/{id}/display/
      operations:
      - name: demox7k9m2p4devicesdisplay
        method: GET
        description: Get Device Display Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-features
      path: /demo-x7k9m2p4/devices/{id}/features/
      operations:
      - name: demox7k9m2p4devicesfeatures
        method: GET
        description: Get Device Features Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-image
      path: /demo-x7k9m2p4/devices/{id}/image/
      operations:
      - name: demox7k9m2p4devicesimagelist
        method: GET
        description: Serve full-resolution device main image for demo purposes.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-images
      path: /demo-x7k9m2p4/devices/{id}/images/
      operations:
      - name: demox7k9m2p4devicesimages
        method: GET
        description: Get Device Images
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: 'Maximum number of images to return (default: 10, max: 30).'
    - name: demo-x7k9m2p4-devices-id-main-camera
      path: /demo-x7k9m2p4/devices/{id}/main-camera/
      operations:
      - name: demox7k9m2p4devicesmaincamera
        method: GET
        description: Get Device Main Camera Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-memory
      path: /demo-x7k9m2p4/devices/{id}/memory/
      operations:
      - name: demox7k9m2p4devicesmemory
        method: GET
        description: Get Device Memory Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-misc
      path: /demo-x7k9m2p4/devices/{id}/misc/
      operations:
      - name: demox7k9m2p4devicesmisc
        method: GET
        description: Get Device Miscellaneous Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-network
      path: /demo-x7k9m2p4/devices/{id}/network/
      operations:
      - name: demox7k9m2p4devicesnetwork
        method: GET
        description: Get Device Network Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-platform
      path: /demo-x7k9m2p4/devices/{id}/platform/
      operations:
      - name: demox7k9m2p4devicesplatform
        method: GET
        description: Get Device Platform Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-selfie-camera
      path: /demo-x7k9m2p4/devices/{id}/selfie-camera/
      operations:
      - name: demox7k9m2p4devicesselfiecamera
        method: GET
        description: Get Device Selfie Camera Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: demo-x7k9m2p4-devices-id-sound
      path: /demo-x7k9m2p4/devices/{id}/sound/
      operations:
      - name: demox7k9m2p4devicessound
        method: GET
        description: Get Device Sound Specifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.MOBILEAPI_DEV_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: mobileapi-demo-x7k9m2p4-rest
    port: 8080
    description: REST adapter for MobileAPI — demo-x7k9m2p4. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/demo-x7k9m2p4/devices
      name: demo-x7k9m2p4-devices
      description: REST surface for demo-x7k9m2p4-devices.
      operations:
      - method: GET
        name: demox7k9m2p4deviceslist
        description: List All Devices
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4deviceslist
        with:
          Authorization: rest.Authorization
          key: rest.key
          page: rest.page
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/ai-query
      name: demo-x7k9m2p4-devices-ai-query
      description: REST surface for demo-x7k9m2p4-devices-ai-query.
      operations:
      - method: GET
        name: demox7k9m2p4devicesaiquery
        description: Natural Language Device Query (AI-Powered) - Paid Users Only
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesaiquery
        with:
          query: rest.query
          Authorization: rest.Authorization
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/autocomplete
      name: demo-x7k9m2p4-devices-autocomplete
      description: REST surface for demo-x7k9m2p4-devices-autocomplete.
      operations:
      - method: GET
        name: demox7k9m2p4devicesautocomplete
        description: Autocomplete Device Names
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesautocomplete
        with:
          Authorization: rest.Authorization
          key: rest.key
          q: rest.q
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/by-brand
      name: demo-x7k9m2p4-devices-by-brand
      description: REST surface for demo-x7k9m2p4-devices-by-brand.
      operations:
      - method: GET
        name: demox7k9m2p4devicesbybrand
        description: '[Deprecated] List Devices by Brand - Use /by-Manufacturer/ Instead'
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbybrand
        with:
          brand: rest.brand
          limit: rest.limit
          Authorization: rest.Authorization
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/by-manufacturer
      name: demo-x7k9m2p4-devices-by-manufacturer
      description: REST surface for demo-x7k9m2p4-devices-by-manufacturer.
      operations:
      - method: GET
        name: demox7k9m2p4devicesbymanufacturer
        description: List Devices by Manufacturer
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbymanufacturer
        with:
          manufacturer: rest.manufacturer
          page: rest.page
          Authorization: rest.Authorization
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/by-type
      name: demo-x7k9m2p4-devices-by-type
      description: REST surface for demo-x7k9m2p4-devices-by-type.
      operations:
      - method: GET
        name: demox7k9m2p4devicesbytype
        description: List Devices by Type
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbytype
        with:
          type: rest.type
          page: rest.page
          Authorization: rest.Authorization
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/by-year
      name: demo-x7k9m2p4-devices-by-year
      description: REST surface for demo-x7k9m2p4-devices-by-year.
      operations:
      - method: GET
        name: demox7k9m2p4devicesbyyear
        description: List Devices by Launch Year
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbyyear
        with:
          year: rest.year
          page: rest.page
          Authorization: rest.Authorization
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/search
      name: demo-x7k9m2p4-devices-search
      description: REST surface for demo-x7k9m2p4-devices-search.
      operations:
      - method: GET
        name: demox7k9m2p4devicessearch
        description: Search Device by Name or Model Number
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicessearch
        with:
          Authorization: rest.Authorization
          key: rest.key
          name: rest.name
          model_number: rest.model_number
          manufacturer: rest.manufacturer
          limit: rest.limit
          page: rest.page
          exact: rest.exact
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}
      name: demo-x7k9m2p4-devices-id
      description: REST surface for demo-x7k9m2p4-devices-id.
      operations:
      - method: GET
        name: demox7k9m2p4devicesread
        description: Get Device by ID
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesread
        with:
          Authorization: rest.Authorization
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/battery
      name: demo-x7k9m2p4-devices-id-battery
      description: REST surface for demo-x7k9m2p4-devices-id-battery.
      operations:
      - method: GET
        name: demox7k9m2p4devicesbattery
        description: Get Device Battery Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbattery
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/body
      name: demo-x7k9m2p4-devices-id-body
      description: REST surface for demo-x7k9m2p4-devices-id-body.
      operations:
      - method: GET
        name: demox7k9m2p4devicesbody
        description: Get Device Body Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbody
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/comms
      name: demo-x7k9m2p4-devices-id-comms
      description: REST surface for demo-x7k9m2p4-devices-id-comms.
      operations:
      - method: GET
        name: demox7k9m2p4devicescomms
        description: Get Device Communications Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicescomms
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/display
      name: demo-x7k9m2p4-devices-id-display
      description: REST surface for demo-x7k9m2p4-devices-id-display.
      operations:
      - method: GET
        name: demox7k9m2p4devicesdisplay
        description: Get Device Display Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesdisplay
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/features
      name: demo-x7k9m2p4-devices-id-features
      description: REST surface for demo-x7k9m2p4-devices-id-features.
      operations:
      - method: GET
        name: demox7k9m2p4devicesfeatures
        description: Get Device Features Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesfeatures
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/image
      name: demo-x7k9m2p4-devices-id-image
      description: REST surface for demo-x7k9m2p4-devices-id-image.
      operations:
      - method: GET
        name: demox7k9m2p4devicesimagelist
        description: Serve full-resolution device main image for demo purposes.
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesimagelist
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/images
      name: demo-x7k9m2p4-devices-id-images
      description: REST surface for demo-x7k9m2p4-devices-id-images.
      operations:
      - method: GET
        name: demox7k9m2p4devicesimages
        description: Get Device Images
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesimages
        with:
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/main-camera
      name: demo-x7k9m2p4-devices-id-main-camera
      description: REST surface for demo-x7k9m2p4-devices-id-main-camera.
      operations:
      - method: GET
        name: demox7k9m2p4devicesmaincamera
        description: Get Device Main Camera Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesmaincamera
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/memory
      name: demo-x7k9m2p4-devices-id-memory
      description: REST surface for demo-x7k9m2p4-devices-id-memory.
      operations:
      - method: GET
        name: demox7k9m2p4devicesmemory
        description: Get Device Memory Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesmemory
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/misc
      name: demo-x7k9m2p4-devices-id-misc
      description: REST surface for demo-x7k9m2p4-devices-id-misc.
      operations:
      - method: GET
        name: demox7k9m2p4devicesmisc
        description: Get Device Miscellaneous Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesmisc
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/network
      name: demo-x7k9m2p4-devices-id-network
      description: REST surface for demo-x7k9m2p4-devices-id-network.
      operations:
      - method: GET
        name: demox7k9m2p4devicesnetwork
        description: Get Device Network Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesnetwork
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/platform
      name: demo-x7k9m2p4-devices-id-platform
      description: REST surface for demo-x7k9m2p4-devices-id-platform.
      operations:
      - method: GET
        name: demox7k9m2p4devicesplatform
        description: Get Device Platform Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesplatform
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/selfie-camera
      name: demo-x7k9m2p4-devices-id-selfie-camera
      description: REST surface for demo-x7k9m2p4-devices-id-selfie-camera.
      operations:
      - method: GET
        name: demox7k9m2p4devicesselfiecamera
        description: Get Device Selfie Camera Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesselfiecamera
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/demo-x7k9m2p4/devices/{id}/sound
      name: demo-x7k9m2p4-devices-id-sound
      description: REST surface for demo-x7k9m2p4-devices-id-sound.
      operations:
      - method: GET
        name: demox7k9m2p4devicessound
        description: Get Device Sound Specifications
        call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicessound
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: mobileapi-demo-x7k9m2p4-mcp
    port: 9090
    transport: http
    description: MCP adapter for MobileAPI — demo-x7k9m2p4. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: list-all-devices
      description: List All Devices
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4deviceslist
      with:
        Authorization: tools.Authorization
        key: tools.key
        page: tools.page
      outputParameters:
      - type: object
        mapping: $.
    - name: natural-language-device-query-ai
      description: Natural Language Device Query (AI-Powered) - Paid Users Only
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesaiquery
      with:
        query: tools.query
        Authorization: tools.Authorization
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: autocomplete-device-names
      description: Autocomplete Device Names
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesautocomplete
      with:
        Authorization: tools.Authorization
        key: tools.key
        q: tools.q
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.
    - name: deprecated-list-devices-brand-use
      description: '[Deprecated] List Devices by Brand - Use /by-Manufacturer/ Instead'
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbybrand
      with:
        brand: tools.brand
        limit: tools.limit
        Authorization: tools.Authorization
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: list-devices-manufacturer
      description: List Devices by Manufacturer
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbymanufacturer
      with:
        manufacturer: tools.manufacturer
        page: tools.page
        Authorization: tools.Authorization
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: list-devices-type
      description: List Devices by Type
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbytype
      with:
        type: tools.type
        page: tools.page
        Authorization: tools.Authorization
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: list-devices-launch-year
      description: List Devices by Launch Year
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbyyear
      with:
        year: tools.year
        page: tools.page
        Authorization: tools.Authorization
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: search-device-name-model-number
      description: Search Device by Name or Model Number
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicessearch
      with:
        Authorization: tools.Authorization
        key: tools.key
        name: tools.name
        model_number: tools.model_number
        manufacturer: tools.manufacturer
        limit: tools.limit
        page: tools.page
        exact: tools.exact
      outputParameters:
      - type: object
        mapping: $.
    - name: get-device-id
      description: Get Device by ID
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesread
      with:
        Authorization: tools.Authorization
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: get-device-battery-specifications
      description: Get Device Battery Specifications
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbattery
      outputParameters:
      - type: object
        mapping: $.
    - name: get-device-body-specifications
      description: Get Device Body Specifications
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesbody
      outputParameters:
      - type: object
        mapping: $.
    - name: get-device-communications-specifications
      description: Get Device Communications Specifications
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicescomms
      outputParameters:
      - type: object
        mapping: $.
    - name: get-device-display-specifications
      description: Get Device Display Specifications
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesdisplay
      outputParameters:
      - type: object
        mapping: $.
    - name: get-device-features-specifications
      description: Get Device Features Specifications
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: mobileapi-demo-x7k9m2p4.demox7k9m2p4devicesfeatures
      outputParameters:
      - type: object
        mapping: $.
    - name: serve-full-resolution-device-main
      description: Serve full-resolution device main image for demo purposes.
      hints:
        readOnly: true
        destructive: false
        i

# --- truncated at 32 KB (34 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mobileapi-dev/refs/heads/main/capabilities/mobileapi-demo-x7k9m2p4.yaml