Documentation
¶
Overview ¶
Package tools provides MCP tool implementations for slidekit.
Index ¶
- func RegisterAll(srv *mcp.Server)
- type ApplyChangesInput
- type ApplyChangesOutput
- type CreateDeckInput
- type CreateDeckOutput
- type GetSlideInput
- type GetSlideOutput
- type ListSlidesInput
- type ListSlidesOutput
- type PlanChangesInput
- type PlanChangesInputJSON
- type PlanChangesOutput
- type ReadDeckInput
- type ReadDeckOutput
- type UpdateSlideInput
- type UpdateSlideOutput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterAll ¶
RegisterAll registers all slidekit tools with the MCP server.
Types ¶
type ApplyChangesInput ¶
type ApplyChangesInput struct {
Path string `json:"path" jsonschema:"description=path to the presentation file"`
Diff model.Diff `json:"diff" jsonschema:"description=the diff to apply"`
Confirm bool `json:"confirm" jsonschema:"description=must be true to actually apply changes"`
}
ApplyChangesInput is the input for the apply_changes tool.
type ApplyChangesOutput ¶
type ApplyChangesOutput struct {
Applied bool `json:"applied" jsonschema:"description=true if changes were applied"`
Message string `json:"message" jsonschema:"description=status message"`
}
ApplyChangesOutput is the output for the apply_changes tool.
type CreateDeckInput ¶
type CreateDeckInput struct {
Path string `json:"path" jsonschema:"description=path for the new presentation file"`
Deck model.Deck `json:"deck" jsonschema:"description=the deck definition"`
Backend string `json:"backend,omitempty" jsonschema:"description=backend to use (default: auto-detect from path)"`
}
CreateDeckInput is the input for the create_deck tool.
type CreateDeckOutput ¶
type CreateDeckOutput struct {
Path string `json:"path" jsonschema:"description=path to the created file"`
Message string `json:"message" jsonschema:"description=status message"`
}
CreateDeckOutput is the output for the create_deck tool.
type GetSlideInput ¶
type GetSlideInput struct {
Path string `json:"path" jsonschema:"description=path to the presentation file"`
SlideID string `json:"slide_id" jsonschema:"description=ID of the slide to retrieve"`
Format string `json:"format,omitempty" jsonschema:"description=output format: toon (default) or json"`
}
GetSlideInput is the input for the get_slide tool.
type GetSlideOutput ¶
type GetSlideOutput struct {
Content string `json:"content" jsonschema:"description=the slide content in the requested format"`
}
GetSlideOutput is the output for the get_slide tool.
type ListSlidesInput ¶
type ListSlidesInput struct {
Path string `json:"path" jsonschema:"description=path to the presentation file"`
Format string `json:"format,omitempty" jsonschema:"description=output format: toon (default) or json"`
}
ListSlidesInput is the input for the list_slides tool.
type ListSlidesOutput ¶
type ListSlidesOutput struct {
Content string `json:"content" jsonschema:"description=list of slides with IDs and titles"`
}
ListSlidesOutput is the output for the list_slides tool.
type PlanChangesInput ¶
type PlanChangesInput struct {
Path string `json:"path" jsonschema:"description=path to the presentation file"`
Desired model.Deck `json:"desired" jsonschema:"description=the desired state of the deck"`
Format string `json:"format,omitempty" jsonschema:"description=output format: toon (default) or json"`
}
PlanChangesInput is the input for the plan_changes tool.
type PlanChangesInputJSON ¶
type PlanChangesInputJSON struct {
Path string `json:"path" jsonschema:"description=path to the presentation file"`
DesiredJSON json.RawMessage `json:"desired_json" jsonschema:"description=the desired state as JSON"`
Format string `json:"format,omitempty" jsonschema:"description=output format: toon (default) or json"`
}
PlanChangesInputJSON is an alternative input that accepts JSON for desired state.
type PlanChangesOutput ¶
type PlanChangesOutput struct {
Content string `json:"content" jsonschema:"description=the diff between current and desired state"`
IsEmpty bool `json:"is_empty" jsonschema:"description=true if there are no changes"`
}
PlanChangesOutput is the output for the plan_changes tool.
type ReadDeckInput ¶
type ReadDeckInput struct {
Path string `json:"path" jsonschema:"description=path to the presentation file"`
Format string `json:"format,omitempty" jsonschema:"description=output format: toon (default) or json"`
}
ReadDeckInput is the input for the read_deck tool.
type ReadDeckOutput ¶
type ReadDeckOutput struct {
Content string `json:"content" jsonschema:"description=the presentation content in the requested format"`
}
ReadDeckOutput is the output for the read_deck tool.
type UpdateSlideInput ¶
type UpdateSlideInput struct {
Path string `json:"path" jsonschema:"description=path to the presentation file"`
SlideID string `json:"slide_id" jsonschema:"description=ID of the slide to update"`
Updates model.Slide `json:"updates" jsonschema:"description=fields to update (title, subtitle, body, notes)"`
Confirm bool `json:"confirm" jsonschema:"description=must be true to actually apply changes"`
}
UpdateSlideInput is the input for the update_slide tool.
type UpdateSlideOutput ¶
type UpdateSlideOutput struct {
Updated bool `json:"updated" jsonschema:"description=true if the slide was updated"`
Message string `json:"message" jsonschema:"description=status message"`
}
UpdateSlideOutput is the output for the update_slide tool.