1135 lines
28 KiB
YAML
1135 lines
28 KiB
YAML
info:
|
|
title: Probo MCP Server
|
|
version: 1.0.0
|
|
description: Probo MCP Server API
|
|
|
|
components:
|
|
schemas:
|
|
OrderDirection:
|
|
type: string
|
|
enum:
|
|
- asc
|
|
- desc
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/page.OrderDirection
|
|
|
|
VendorOrderField:
|
|
type: string
|
|
enum:
|
|
- CREATED_AT
|
|
- UPDATED_AT
|
|
- NAME
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.VendorOrderField
|
|
|
|
VendorOrderBy:
|
|
type: object
|
|
required:
|
|
- field
|
|
- direction
|
|
properties:
|
|
field:
|
|
$ref: "#/components/schemas/VendorOrderField"
|
|
description: Vendor order field
|
|
direction:
|
|
$ref: "#/components/schemas/OrderDirection"
|
|
description: Vendor order direction
|
|
|
|
PeopleOrderBy:
|
|
type: object
|
|
required:
|
|
- field
|
|
- direction
|
|
properties:
|
|
field:
|
|
$ref: "#/components/schemas/PeopleOrderField"
|
|
description: People order field
|
|
direction:
|
|
$ref: "#/components/schemas/OrderDirection"
|
|
description: People order direction
|
|
|
|
PeopleOrderField:
|
|
type: string
|
|
enum:
|
|
- CREATED_AT
|
|
- FULL_NAME
|
|
- KIND
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.PeopleOrderField
|
|
|
|
PeopleKind:
|
|
type: string
|
|
enum:
|
|
- EMPLOYEE
|
|
- CONTRACTOR
|
|
- SERVICE_ACCOUNT
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.PeopleKind
|
|
|
|
People:
|
|
type: object
|
|
required:
|
|
- id
|
|
- organization_id
|
|
- full_name
|
|
- primary_email_address
|
|
- additional_email_addresses
|
|
- kind
|
|
- created_at
|
|
- updated_at
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: People ID
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
full_name:
|
|
type: string
|
|
description: Full name
|
|
primary_email_address:
|
|
type: string
|
|
description: Primary email address
|
|
additional_email_addresses:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Additional email addresses
|
|
kind:
|
|
$ref: "#/components/schemas/PeopleKind"
|
|
description: People kind
|
|
position:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Position
|
|
contract_start_date:
|
|
type:
|
|
- string
|
|
- "null"
|
|
format: date-time
|
|
description: Contract start date
|
|
contract_end_date:
|
|
type:
|
|
- string
|
|
- "null"
|
|
format: date-time
|
|
description: Contract end date
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Creation timestamp
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Update timestamp
|
|
|
|
ListPeopleInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
order_by:
|
|
$ref: "#/components/schemas/PeopleOrderBy"
|
|
description: People order by
|
|
size:
|
|
type: integer
|
|
description: Page size
|
|
cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Page cursor
|
|
filter:
|
|
type: object
|
|
properties:
|
|
exclude_contract_ended:
|
|
type: boolean
|
|
description: Exclude people with ended contracts
|
|
|
|
ListPeopleOutput:
|
|
type: object
|
|
required:
|
|
- people
|
|
properties:
|
|
next_cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Next cursor
|
|
people:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/People"
|
|
|
|
GID:
|
|
type: string
|
|
format: string
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/gid.GID
|
|
|
|
CursorKey:
|
|
type: string
|
|
format: string
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/page.CursorKey
|
|
|
|
ListOrganizationsInput:
|
|
type: object
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
|
|
ListOrganizationsOutput:
|
|
type: object
|
|
properties:
|
|
organizations:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Organization"
|
|
|
|
Organization:
|
|
type: object
|
|
required:
|
|
- id
|
|
- name
|
|
- description
|
|
- created_at
|
|
- updated_at
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
name:
|
|
type: string
|
|
description: Organization name
|
|
description:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Organization description
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Creation timestamp
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Update timestamp
|
|
|
|
ListVendorsInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
order_by:
|
|
$ref: "#/components/schemas/VendorOrderBy"
|
|
description: Vendor order by
|
|
size:
|
|
type: integer
|
|
description: Page size
|
|
cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Page cursor
|
|
filter:
|
|
type: object
|
|
properties:
|
|
snapshot_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Snapshot ID
|
|
|
|
ListVendorsOutput:
|
|
type: object
|
|
required:
|
|
- vendors
|
|
properties:
|
|
next_cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Next cursor
|
|
vendors:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Vendor"
|
|
|
|
Vendor:
|
|
type: object
|
|
required:
|
|
- id
|
|
- name
|
|
- organization_id
|
|
- created_at
|
|
- updated_at
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Vendor ID
|
|
name:
|
|
type: string
|
|
description: Vendor name
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
description:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Vendor description
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Creation timestamp
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Update timestamp
|
|
|
|
AddVendorInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
- name
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
name:
|
|
type: string
|
|
description: Vendor name
|
|
description:
|
|
type: string
|
|
description: Vendor description
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Creation timestamp
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Update timestamp
|
|
|
|
AddVendorOutput:
|
|
type: object
|
|
required:
|
|
- vendor
|
|
properties:
|
|
vendor:
|
|
$ref: "#/components/schemas/Vendor"
|
|
|
|
UpdateVendorInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Vendor ID
|
|
name:
|
|
type: string
|
|
description: Vendor name
|
|
description:
|
|
type: string
|
|
description: Vendor description
|
|
|
|
UpdateVendorOutput:
|
|
type: object
|
|
required:
|
|
- vendor
|
|
properties:
|
|
vendor:
|
|
$ref: "#/components/schemas/Vendor"
|
|
|
|
GetPeopleInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: People ID
|
|
|
|
GetPeopleOutput:
|
|
type: object
|
|
required:
|
|
- people
|
|
properties:
|
|
people:
|
|
$ref: "#/components/schemas/People"
|
|
|
|
AddPeopleInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
- full_name
|
|
- primary_email_address
|
|
- kind
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
full_name:
|
|
type: string
|
|
description: Full name
|
|
primary_email_address:
|
|
type: string
|
|
description: Primary email address
|
|
additional_email_addresses:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Additional email addresses
|
|
kind:
|
|
$ref: "#/components/schemas/PeopleKind"
|
|
description: People kind
|
|
position:
|
|
type: string
|
|
description: Position
|
|
contract_start_date:
|
|
type: string
|
|
format: date-time
|
|
description: Contract start date
|
|
contract_end_date:
|
|
type: string
|
|
format: date-time
|
|
description: Contract end date
|
|
|
|
AddPeopleOutput:
|
|
type: object
|
|
required:
|
|
- people
|
|
properties:
|
|
people:
|
|
$ref: "#/components/schemas/People"
|
|
|
|
RiskOrderField:
|
|
type: string
|
|
enum:
|
|
- CREATED_AT
|
|
- UPDATED_AT
|
|
- NAME
|
|
- CATEGORY
|
|
- TREATMENT
|
|
- INHERENT_RISK_SCORE
|
|
- RESIDUAL_RISK_SCORE
|
|
- OWNER_FULL_NAME
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.RiskOrderField
|
|
|
|
RiskOrderBy:
|
|
type: object
|
|
required:
|
|
- field
|
|
- direction
|
|
properties:
|
|
field:
|
|
$ref: "#/components/schemas/RiskOrderField"
|
|
description: Risk order field
|
|
direction:
|
|
$ref: "#/components/schemas/OrderDirection"
|
|
description: Risk order direction
|
|
|
|
RiskTreatment:
|
|
type: string
|
|
enum:
|
|
- MITIGATED
|
|
- ACCEPTED
|
|
- AVOIDED
|
|
- TRANSFERRED
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.RiskTreatment
|
|
|
|
Risk:
|
|
type: object
|
|
required:
|
|
- id
|
|
- organization_id
|
|
- name
|
|
- category
|
|
- treatment
|
|
- inherent_likelihood
|
|
- inherent_impact
|
|
- inherent_risk_score
|
|
- residual_likelihood
|
|
- residual_impact
|
|
- residual_risk_score
|
|
- note
|
|
- created_at
|
|
- updated_at
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Risk ID
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
snapshot_id:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Snapshot ID
|
|
name:
|
|
type: string
|
|
description: Risk name
|
|
description:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Risk description
|
|
category:
|
|
type: string
|
|
description: Risk category
|
|
treatment:
|
|
$ref: "#/components/schemas/RiskTreatment"
|
|
description: Risk treatment
|
|
inherent_likelihood:
|
|
type: integer
|
|
description: Inherent likelihood
|
|
inherent_impact:
|
|
type: integer
|
|
description: Inherent impact
|
|
inherent_risk_score:
|
|
type: integer
|
|
description: Inherent risk score
|
|
residual_likelihood:
|
|
type: integer
|
|
description: Residual likelihood
|
|
residual_impact:
|
|
type: integer
|
|
description: Residual impact
|
|
residual_risk_score:
|
|
type: integer
|
|
description: Residual risk score
|
|
note:
|
|
type: string
|
|
description: Risk note
|
|
owner_id:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Owner ID
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Creation timestamp
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Update timestamp
|
|
|
|
ListRisksInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
order_by:
|
|
$ref: "#/components/schemas/RiskOrderBy"
|
|
description: Risk order by
|
|
size:
|
|
type: integer
|
|
description: Page size
|
|
cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Page cursor
|
|
filter:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
description: Search query
|
|
snapshot_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Snapshot ID
|
|
|
|
ListRisksOutput:
|
|
type: object
|
|
required:
|
|
- risks
|
|
properties:
|
|
next_cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Next cursor
|
|
risks:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Risk"
|
|
|
|
GetRiskInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Risk ID
|
|
|
|
GetRiskOutput:
|
|
type: object
|
|
required:
|
|
- risk
|
|
properties:
|
|
risk:
|
|
$ref: "#/components/schemas/Risk"
|
|
|
|
AddRiskInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
- name
|
|
- category
|
|
- treatment
|
|
- inherent_likelihood
|
|
- inherent_impact
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
name:
|
|
type: string
|
|
description: Risk name
|
|
description:
|
|
type: string
|
|
description: Risk description
|
|
category:
|
|
type: string
|
|
description: Risk category
|
|
owner_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Owner ID
|
|
treatment:
|
|
$ref: "#/components/schemas/RiskTreatment"
|
|
description: Risk treatment
|
|
inherent_likelihood:
|
|
type: integer
|
|
description: Inherent likelihood
|
|
inherent_impact:
|
|
type: integer
|
|
description: Inherent impact
|
|
residual_likelihood:
|
|
type: integer
|
|
description: Residual likelihood
|
|
residual_impact:
|
|
type: integer
|
|
description: Residual impact
|
|
note:
|
|
type: string
|
|
description: Risk note
|
|
|
|
AddRiskOutput:
|
|
type: object
|
|
required:
|
|
- risk
|
|
properties:
|
|
risk:
|
|
$ref: "#/components/schemas/Risk"
|
|
|
|
UpdateRiskInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Risk ID
|
|
name:
|
|
type: string
|
|
description: Risk name
|
|
description:
|
|
type: ["string", "null"]
|
|
description: Risk description
|
|
go.probo.inc/mcpgen/omittable: true
|
|
category:
|
|
type: string
|
|
description: Risk category
|
|
owner_id:
|
|
anyOf:
|
|
- type: string
|
|
$ref: "#/components/schemas/GID"
|
|
- type: "null"
|
|
description: Owner ID
|
|
go.probo.inc/mcpgen/omittable: true
|
|
treatment:
|
|
$ref: "#/components/schemas/RiskTreatment"
|
|
description: Risk treatment
|
|
inherent_likelihood:
|
|
type: integer
|
|
description: Inherent likelihood
|
|
inherent_impact:
|
|
type: integer
|
|
description: Inherent impact
|
|
residual_likelihood:
|
|
type: integer
|
|
description: Residual likelihood
|
|
residual_impact:
|
|
type: integer
|
|
description: Residual impact
|
|
note:
|
|
type: string
|
|
description: Risk note
|
|
|
|
UpdateRiskOutput:
|
|
type: object
|
|
required:
|
|
- risk
|
|
properties:
|
|
risk:
|
|
$ref: "#/components/schemas/Risk"
|
|
|
|
MeasureState:
|
|
type: string
|
|
enum:
|
|
- NOT_STARTED
|
|
- IN_PROGRESS
|
|
- NOT_APPLICABLE
|
|
- IMPLEMENTED
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.MeasureState
|
|
|
|
MeasureOrderField:
|
|
type: string
|
|
enum:
|
|
- CREATED_AT
|
|
- NAME
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.MeasureOrderField
|
|
|
|
MeasureOrderBy:
|
|
type: object
|
|
required:
|
|
- field
|
|
- direction
|
|
properties:
|
|
field:
|
|
$ref: "#/components/schemas/MeasureOrderField"
|
|
description: Measure order field
|
|
direction:
|
|
$ref: "#/components/schemas/OrderDirection"
|
|
description: Measure order direction
|
|
|
|
Measure:
|
|
type: object
|
|
required:
|
|
- id
|
|
- category
|
|
- name
|
|
- state
|
|
- created_at
|
|
- updated_at
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Measure ID
|
|
category:
|
|
type: string
|
|
description: Measure category
|
|
name:
|
|
type: string
|
|
description: Measure name
|
|
description:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Measure description
|
|
state:
|
|
$ref: "#/components/schemas/MeasureState"
|
|
description: Measure state
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Creation timestamp
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Update timestamp
|
|
|
|
ListMeasuresInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
order_by:
|
|
$ref: "#/components/schemas/MeasureOrderBy"
|
|
description: Measure order by
|
|
size:
|
|
type: integer
|
|
description: Page size
|
|
cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Page cursor
|
|
filter:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
description: Search query
|
|
state:
|
|
$ref: "#/components/schemas/MeasureState"
|
|
description: Measure state filter
|
|
|
|
ListMeasuresOutput:
|
|
type: object
|
|
required:
|
|
- measures
|
|
properties:
|
|
next_cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Next cursor
|
|
measures:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Measure"
|
|
|
|
GetMeasureInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Measure ID
|
|
|
|
GetMeasureOutput:
|
|
type: object
|
|
required:
|
|
- measure
|
|
properties:
|
|
measure:
|
|
$ref: "#/components/schemas/Measure"
|
|
|
|
AddMeasureInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
- name
|
|
- category
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
name:
|
|
type: string
|
|
description: Measure name
|
|
description:
|
|
type: string
|
|
description: Measure description
|
|
category:
|
|
type: string
|
|
description: Measure category
|
|
|
|
AddMeasureOutput:
|
|
type: object
|
|
required:
|
|
- measure
|
|
properties:
|
|
measure:
|
|
$ref: "#/components/schemas/Measure"
|
|
|
|
UpdateMeasureInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Measure ID
|
|
name:
|
|
type: string
|
|
description: Measure name
|
|
description:
|
|
type: ["string", "null"]
|
|
description: Measure description
|
|
go.probo.inc/mcpgen/omittable: true
|
|
category:
|
|
type: string
|
|
description: Measure category
|
|
state:
|
|
$ref: "#/components/schemas/MeasureState"
|
|
description: Measure state
|
|
|
|
UpdateMeasureOutput:
|
|
type: object
|
|
required:
|
|
- measure
|
|
properties:
|
|
measure:
|
|
$ref: "#/components/schemas/Measure"
|
|
|
|
FrameworkOrderField:
|
|
type: string
|
|
enum:
|
|
- CREATED_AT
|
|
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.FrameworkOrderField
|
|
|
|
FrameworkOrderBy:
|
|
type: object
|
|
required:
|
|
- field
|
|
- direction
|
|
properties:
|
|
field:
|
|
$ref: "#/components/schemas/FrameworkOrderField"
|
|
description: Framework order field
|
|
direction:
|
|
$ref: "#/components/schemas/OrderDirection"
|
|
description: Framework order direction
|
|
|
|
Framework:
|
|
type: object
|
|
required:
|
|
- id
|
|
- organization_id
|
|
- name
|
|
- created_at
|
|
- updated_at
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Framework ID
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
name:
|
|
type: string
|
|
description: Framework name
|
|
description:
|
|
type:
|
|
- string
|
|
- "null"
|
|
description: Framework description
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Creation timestamp
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Update timestamp
|
|
|
|
ListFrameworksInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
order_by:
|
|
$ref: "#/components/schemas/FrameworkOrderBy"
|
|
description: Framework order by
|
|
size:
|
|
type: integer
|
|
description: Page size
|
|
cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Page cursor
|
|
|
|
ListFrameworksOutput:
|
|
type: object
|
|
required:
|
|
- frameworks
|
|
properties:
|
|
next_cursor:
|
|
$ref: "#/components/schemas/CursorKey"
|
|
description: Next cursor
|
|
frameworks:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Framework"
|
|
|
|
GetFrameworkInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Framework ID
|
|
|
|
GetFrameworkOutput:
|
|
type: object
|
|
required:
|
|
- framework
|
|
properties:
|
|
framework:
|
|
$ref: "#/components/schemas/Framework"
|
|
|
|
AddFrameworkInput:
|
|
type: object
|
|
required:
|
|
- organization_id
|
|
- name
|
|
properties:
|
|
organization_id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Organization ID
|
|
name:
|
|
type: string
|
|
description: Framework name
|
|
description:
|
|
type: string
|
|
description: Framework description
|
|
|
|
AddFrameworkOutput:
|
|
type: object
|
|
required:
|
|
- framework
|
|
properties:
|
|
framework:
|
|
$ref: "#/components/schemas/Framework"
|
|
|
|
UpdateFrameworkInput:
|
|
type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
$ref: "#/components/schemas/GID"
|
|
description: Framework ID
|
|
name:
|
|
type: string
|
|
description: Framework name
|
|
description:
|
|
type: ["string", "null"]
|
|
description: Framework description
|
|
go.probo.inc/mcpgen/omittable: true
|
|
|
|
UpdateFrameworkOutput:
|
|
type: object
|
|
required:
|
|
- framework
|
|
properties:
|
|
framework:
|
|
$ref: "#/components/schemas/Framework"
|
|
|
|
tools:
|
|
- name: listOrganizations
|
|
description: List all organizations the user has access to
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/ListOrganizationsInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/ListOrganizationsOutput"
|
|
- name: listVendors
|
|
description: List all vendors for the organization
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/ListVendorsInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/ListVendorsOutput"
|
|
- name: listPeople
|
|
description: List all people for the organization
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/ListPeopleInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/ListPeopleOutput"
|
|
- name: addVendor
|
|
description: Add a new vendor to the organization
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/AddVendorInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/AddVendorOutput"
|
|
- name: updateVendor
|
|
description: Update an existing vendor
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/UpdateVendorInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/UpdateVendorOutput"
|
|
- name: getPeople
|
|
description: Get a people by ID
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/GetPeopleInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/GetPeopleOutput"
|
|
- name: addPeople
|
|
description: Add a new people to the organization
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/AddPeopleInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/AddPeopleOutput"
|
|
- name: listRisks
|
|
description: List all risks for the organization
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/ListRisksInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/ListRisksOutput"
|
|
- name: getRisk
|
|
description: Get a risk by ID
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/GetRiskInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/GetRiskOutput"
|
|
- name: addRisk
|
|
description: Add a new risk to the organization
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/AddRiskInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/AddRiskOutput"
|
|
- name: updateRisk
|
|
description: Update an existing risk
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/UpdateRiskInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/UpdateRiskOutput"
|
|
- name: listMeasures
|
|
description: List all measures for the organization
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/ListMeasuresInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/ListMeasuresOutput"
|
|
- name: getMeasure
|
|
description: Get a measure by ID
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/GetMeasureInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/GetMeasureOutput"
|
|
- name: addMeasure
|
|
description: Add a new measure to the organization
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/AddMeasureInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/AddMeasureOutput"
|
|
- name: updateMeasure
|
|
description: Update an existing measure
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/UpdateMeasureInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/UpdateMeasureOutput"
|
|
- name: listFrameworks
|
|
description: List all frameworks for the organization
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/ListFrameworksInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/ListFrameworksOutput"
|
|
- name: getFramework
|
|
description: Get a framework by ID
|
|
readonly: true
|
|
inputSchema:
|
|
$ref: "#/components/schemas/GetFrameworkInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/GetFrameworkOutput"
|
|
- name: addFramework
|
|
description: Add a new framework to the organization
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/AddFrameworkInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/AddFrameworkOutput"
|
|
- name: updateFramework
|
|
description: Update an existing framework
|
|
readonly: false
|
|
inputSchema:
|
|
$ref: "#/components/schemas/UpdateFrameworkInput"
|
|
outputSchema:
|
|
$ref: "#/components/schemas/UpdateFrameworkOutput"
|