Vonage · Capability
Vonage Communications API — Numbers
Vonage Communications API — Numbers. 5 operations. Lead operation: List Owned Numbers. Self-contained Naftiko capability covering one Vonage business surface.
What You Can Do
GET
Listownednumbers
— List Owned Numbers
/v1/account/numbers
POST
Buynumber
— Buy a Number
/v1/number/buy
POST
Cancelnumber
— Cancel a Number
/v1/number/cancel
GET
Searchavailablenumbers
— Search Available Numbers
/v1/number/search
POST
Updatenumber
— Update a Number
/v1/number/update
MCP Tools
list-owned-numbers
List Owned Numbers
read-only
idempotent
buy-number
Buy a Number
cancel-number
Cancel a Number
search-available-numbers
Search Available Numbers
read-only
idempotent
update-number
Update a Number
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Vonage Communications API — Numbers
description: 'Vonage Communications API — Numbers. 5 operations. Lead operation: List Owned Numbers. Self-contained Naftiko
capability covering one Vonage business surface.'
tags:
- Vonage
- Numbers
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
VONAGE_API_KEY: VONAGE_API_KEY
capability:
consumes:
- type: http
namespace: vonage-numbers
baseUri: https://api.nexmo.com
description: Vonage Communications API — Numbers business capability. Self-contained, no shared references.
resources:
- name: account-numbers
path: /account/numbers
operations:
- name: listownednumbers
method: GET
description: List Owned Numbers
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: api_key
in: query
type: string
required: true
- name: api_secret
in: query
type: string
required: true
- name: country
in: query
type: string
description: The two-character country code in ISO 3166-1 alpha-2 format.
- name: pattern
in: query
type: string
description: A pattern to filter the results.
- name: index
in: query
type: integer
- name: size
in: query
type: integer
- name: number-buy
path: /number/buy
operations:
- name: buynumber
method: POST
description: Buy a Number
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: number-cancel
path: /number/cancel
operations:
- name: cancelnumber
method: POST
description: Cancel a Number
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: number-search
path: /number/search
operations:
- name: searchavailablenumbers
method: GET
description: Search Available Numbers
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: api_key
in: query
type: string
required: true
- name: api_secret
in: query
type: string
required: true
- name: country
in: query
type: string
description: Two-character country code (ISO 3166-1 alpha-2).
required: true
- name: type
in: query
type: string
description: Filter by number type.
- name: pattern
in: query
type: string
description: A pattern to filter results.
- name: features
in: query
type: string
description: Available features (SMS, VOICE, MMS).
- name: size
in: query
type: integer
- name: index
in: query
type: integer
- name: number-update
path: /number/update
operations:
- name: updatenumber
method: POST
description: Update a Number
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: bearer
token: '{{env.VONAGE_API_KEY}}'
exposes:
- type: rest
namespace: vonage-numbers-rest
port: 8080
description: REST adapter for Vonage Communications API — Numbers. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/account/numbers
name: account-numbers
description: REST surface for account-numbers.
operations:
- method: GET
name: listownednumbers
description: List Owned Numbers
call: vonage-numbers.listownednumbers
with:
api_key: rest.api_key
api_secret: rest.api_secret
country: rest.country
pattern: rest.pattern
index: rest.index
size: rest.size
outputParameters:
- type: object
mapping: $.
- path: /v1/number/buy
name: number-buy
description: REST surface for number-buy.
operations:
- method: POST
name: buynumber
description: Buy a Number
call: vonage-numbers.buynumber
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/number/cancel
name: number-cancel
description: REST surface for number-cancel.
operations:
- method: POST
name: cancelnumber
description: Cancel a Number
call: vonage-numbers.cancelnumber
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/number/search
name: number-search
description: REST surface for number-search.
operations:
- method: GET
name: searchavailablenumbers
description: Search Available Numbers
call: vonage-numbers.searchavailablenumbers
with:
api_key: rest.api_key
api_secret: rest.api_secret
country: rest.country
type: rest.type
pattern: rest.pattern
features: rest.features
size: rest.size
index: rest.index
outputParameters:
- type: object
mapping: $.
- path: /v1/number/update
name: number-update
description: REST surface for number-update.
operations:
- method: POST
name: updatenumber
description: Update a Number
call: vonage-numbers.updatenumber
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: vonage-numbers-mcp
port: 9090
transport: http
description: MCP adapter for Vonage Communications API — Numbers. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: list-owned-numbers
description: List Owned Numbers
hints:
readOnly: true
destructive: false
idempotent: true
call: vonage-numbers.listownednumbers
with:
api_key: tools.api_key
api_secret: tools.api_secret
country: tools.country
pattern: tools.pattern
index: tools.index
size: tools.size
outputParameters:
- type: object
mapping: $.
- name: buy-number
description: Buy a Number
hints:
readOnly: false
destructive: false
idempotent: false
call: vonage-numbers.buynumber
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: cancel-number
description: Cancel a Number
hints:
readOnly: false
destructive: false
idempotent: false
call: vonage-numbers.cancelnumber
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: search-available-numbers
description: Search Available Numbers
hints:
readOnly: true
destructive: false
idempotent: true
call: vonage-numbers.searchavailablenumbers
with:
api_key: tools.api_key
api_secret: tools.api_secret
country: tools.country
type: tools.type
pattern: tools.pattern
features: tools.features
size: tools.size
index: tools.index
outputParameters:
- type: object
mapping: $.
- name: update-number
description: Update a Number
hints:
readOnly: false
destructive: false
idempotent: false
call: vonage-numbers.updatenumber
with:
body: tools.body
outputParameters:
- type: object
mapping: $.