create_assessment

package
v0.0.45 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 29, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package create_assessment implements the create_assessment MCP tool: a write tool that starts a new assessment from a template. Creating an assessment only requires a template — the returned assessment carries the template's questions (unanswered). The caller then fills those answers in via the separate edit_assessment tool; this tool never sets answers itself.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewTool

func NewTool(collibraClient *http.Client) *chip.Tool[Input, Output]

NewTool returns the registered tool.

Types

type AssessmentSummary

type AssessmentSummary struct {
	ID        string      `json:"id" jsonschema:"UUID of the created assessment."`
	Name      string      `json:"name,omitempty"`
	Status    string      `json:"status,omitempty"`
	Template  *RefSummary `json:"template,omitempty" jsonschema:"the template the assessment was created from."`
	Questions []Question  `` /* 148-byte string literal not displayed */
}

AssessmentSummary is the post-create snapshot of the assessment.

type Input

type Input struct {
	Template            string          `` /* 168-byte string literal not displayed */
	Name                string          `json:"name,omitempty" jsonschema:"Optional. Name for the new assessment."`
	AssetID             string          `json:"assetId,omitempty" jsonschema:"Optional. UUID of the asset to conduct the assessment on."`
	Assignees           []InputAssignee `json:"assignees,omitempty" jsonschema:"Optional. Users or groups assigned to the assessment."`
	OwnerID             string          `json:"ownerId,omitempty" jsonschema:"Optional. UUID of the assessment owner (a user)."`
	IsVisibleToEveryone *bool           `json:"isVisibleToEveryone,omitempty" jsonschema:"Optional. When true, the assessment is visible to everyone."`
	Status              string          `` /* 143-byte string literal not displayed */
}

Input is the tool's typed input.

type InputAssignee

type InputAssignee struct {
	ID   string `json:"id" jsonschema:"UUID of the user or group."`
	Type string `json:"type" jsonschema:"USER or GROUP."`
}

InputAssignee is one user or group assigned to the assessment.

type Output

type Output struct {
	Assessment *AssessmentSummary `` /* 144-byte string literal not displayed */
	Error      string             `json:"error,omitempty" jsonschema:"error message when creation failed."`
}

Output is the typed response.

type Question

type Question struct {
	ID          string `json:"id" jsonschema:"question id — pass this to edit_assessment to set the answer."`
	Name        string `json:"name,omitempty"`
	Description string `json:"description,omitempty"`
}

Question is one question the assessment expects an answer for.

type RefSummary

type RefSummary struct {
	ID   string `json:"id"`
	Name string `json:"name,omitempty"`
}

RefSummary is the {id, name} reference shape.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL