Documentation
¶
Overview ¶
Package groupscim implements GitLab SCIM identity operations for groups including list, get, update, and delete.
Index ¶
- func Delete(ctx context.Context, client *gitlabclient.Client, in DeleteInput) error
- func FormatListMarkdown(out ListOutput) string
- func FormatOutputMarkdown(o Output) string
- func RegisterTools(server *mcp.Server, client *gitlabclient.Client)
- func Update(ctx context.Context, client *gitlabclient.Client, in UpdateInput) error
- type DeleteInput
- type GetInput
- type ListInput
- type ListOutput
- type Output
- type UpdateInput
- type UpdateOutput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Delete ¶
func Delete(ctx context.Context, client *gitlabclient.Client, in DeleteInput) error
Delete removes a SCIM identity.
func FormatListMarkdown ¶
func FormatListMarkdown(out ListOutput) string
FormatListMarkdown renders a list of SCIM identities as Markdown.
func FormatOutputMarkdown ¶
FormatOutputMarkdown renders a single SCIM identity as Markdown.
func RegisterTools ¶
func RegisterTools(server *mcp.Server, client *gitlabclient.Client)
RegisterTools registers MCP tools for GitLab group SCIM identity operations.
func Update ¶
func Update(ctx context.Context, client *gitlabclient.Client, in UpdateInput) error
Update modifies a SCIM identity.
Types ¶
type DeleteInput ¶
type DeleteInput struct {
GroupID toolutil.StringOrInt `json:"group_id" jsonschema:"Group ID or URL-encoded path,required"`
UID string `json:"uid" jsonschema:"SCIM external UID of the user,required"`
}
DeleteInput holds parameters for deleting a SCIM identity.
type GetInput ¶
type GetInput struct {
GroupID toolutil.StringOrInt `json:"group_id" jsonschema:"Group ID or URL-encoded path,required"`
UID string `json:"uid" jsonschema:"SCIM external UID of the user,required"`
}
GetInput holds parameters for getting a single SCIM identity.
type ListInput ¶
type ListInput struct {
GroupID toolutil.StringOrInt `json:"group_id" jsonschema:"Group ID or URL-encoded path,required"`
}
ListInput holds parameters for listing SCIM identities for a group.
type ListOutput ¶
type ListOutput struct {
toolutil.HintableOutput
Identities []Output `json:"identities"`
}
ListOutput holds the list response.
func List ¶
func List(ctx context.Context, client *gitlabclient.Client, in ListInput) (ListOutput, error)
List returns all SCIM identities for a group.
type Output ¶
type Output struct {
toolutil.HintableOutput
ExternalUID string `json:"external_uid"`
UserID int64 `json:"user_id"`
Active bool `json:"active"`
}
Output represents a SCIM identity.
type UpdateInput ¶
type UpdateInput struct {
GroupID toolutil.StringOrInt `json:"group_id" jsonschema:"Group ID or URL-encoded path,required"`
UID string `json:"uid" jsonschema:"SCIM external UID of the user,required"`
ExternUID string `json:"extern_uid" jsonschema:"New external UID value,required"`
}
UpdateInput holds parameters for updating a SCIM identity.
type UpdateOutput ¶
type UpdateOutput struct {
toolutil.HintableOutput
Updated bool `json:"updated"`
Message string `json:"message"`
}
UpdateOutput holds the update confirmation.