Ubuntu · Capability
Launchpad REST API — Bugs
Launchpad REST API — Bugs. 3 operations. Lead operation: List Bugs. Self-contained Naftiko capability covering one Ubuntu business surface.
What You Can Do
GET
Listbugs
— List Bugs
/v1/bugs
GET
Getbug
— Get Bug
/v1/bugs/{bug-id}
PATCH
Updatebug
— Update Bug
/v1/bugs/{bug-id}
MCP Tools
list-bugs
List Bugs
read-only
idempotent
get-bug
Get Bug
read-only
idempotent
update-bug
Update Bug
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Launchpad REST API — Bugs
description: 'Launchpad REST API — Bugs. 3 operations. Lead operation: List Bugs. Self-contained Naftiko capability covering
one Ubuntu business surface.'
tags:
- Ubuntu
- Bugs
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
UBUNTU_API_KEY: UBUNTU_API_KEY
capability:
consumes:
- type: http
namespace: launchpad-bugs
baseUri: https://api.launchpad.net/1.0
description: Launchpad REST API — Bugs business capability. Self-contained, no shared references.
resources:
- name: bugs
path: /bugs
operations:
- name: listbugs
method: GET
description: List Bugs
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: ws.op
in: query
type: string
description: Named operation to perform.
- name: status
in: query
type: string
description: Filter bugs by status.
- name: ws.start
in: query
type: integer
description: Starting offset for pagination.
- name: ws.size
in: query
type: integer
description: Number of items per page.
- name: bugs-bug_id
path: /bugs/{bug_id}
operations:
- name: getbug
method: GET
description: Get Bug
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: bug_id
in: path
type: integer
description: Unique bug identifier.
required: true
- name: updatebug
method: PATCH
description: Update Bug
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: bug_id
in: path
type: integer
description: Unique bug identifier.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
exposes:
- type: rest
namespace: launchpad-bugs-rest
port: 8080
description: REST adapter for Launchpad REST API — Bugs. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/bugs
name: bugs
description: REST surface for bugs.
operations:
- method: GET
name: listbugs
description: List Bugs
call: launchpad-bugs.listbugs
with:
ws.op: rest.ws.op
status: rest.status
ws.start: rest.ws.start
ws.size: rest.ws.size
outputParameters:
- type: object
mapping: $.
- path: /v1/bugs/{bug-id}
name: bugs-bug-id
description: REST surface for bugs-bug_id.
operations:
- method: GET
name: getbug
description: Get Bug
call: launchpad-bugs.getbug
with:
bug_id: rest.bug_id
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: updatebug
description: Update Bug
call: launchpad-bugs.updatebug
with:
bug_id: rest.bug_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: launchpad-bugs-mcp
port: 9090
transport: http
description: MCP adapter for Launchpad REST API — Bugs. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: list-bugs
description: List Bugs
hints:
readOnly: true
destructive: false
idempotent: true
call: launchpad-bugs.listbugs
with:
ws.op: tools.ws.op
status: tools.status
ws.start: tools.ws.start
ws.size: tools.ws.size
outputParameters:
- type: object
mapping: $.
- name: get-bug
description: Get Bug
hints:
readOnly: true
destructive: false
idempotent: true
call: launchpad-bugs.getbug
with:
bug_id: tools.bug_id
outputParameters:
- type: object
mapping: $.
- name: update-bug
description: Update Bug
hints:
readOnly: false
destructive: false
idempotent: true
call: launchpad-bugs.updatebug
with:
bug_id: tools.bug_id
body: tools.body
outputParameters:
- type: object
mapping: $.