Documentation
¶
Overview ¶
Package ffuserlists provides MCP tool handlers for GitLab feature flag user list operations.
Index ¶
- func DeleteUserList(ctx context.Context, client *gitlabclient.Client, input DeleteInput) error
- func FormatListUserListsMarkdown(out ListOutput) string
- func FormatUserListMarkdown(out Output) string
- func RegisterMeta(server *mcp.Server, client *gitlabclient.Client)
- func RegisterTools(server *mcp.Server, client *gitlabclient.Client)
- type CreateInput
- type DeleteInput
- type GetInput
- type ListInput
- type ListOutput
- type Output
- func CreateUserList(ctx context.Context, client *gitlabclient.Client, input CreateInput) (Output, error)
- func GetUserList(ctx context.Context, client *gitlabclient.Client, input GetInput) (Output, error)
- func UpdateUserList(ctx context.Context, client *gitlabclient.Client, input UpdateInput) (Output, error)
- type UpdateInput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeleteUserList ¶
func DeleteUserList(ctx context.Context, client *gitlabclient.Client, input DeleteInput) error
DeleteUserList deletes a feature flag user list.
func FormatListUserListsMarkdown ¶
func FormatListUserListsMarkdown(out ListOutput) string
FormatListUserListsMarkdown formats a list of feature flag user lists as markdown.
func FormatUserListMarkdown ¶
FormatUserListMarkdown formats a single feature flag user list as markdown.
func RegisterMeta ¶
func RegisterMeta(server *mcp.Server, client *gitlabclient.Client)
RegisterMeta registers the feature flag user list meta-tool.
func RegisterTools ¶
func RegisterTools(server *mcp.Server, client *gitlabclient.Client)
RegisterTools registers all feature flag user list individual tools.
Types ¶
type CreateInput ¶
type CreateInput struct {
ProjectID toolutil.StringOrInt `json:"project_id" jsonschema:"Project ID or path,required"`
Name string `json:"name" jsonschema:"User list name,required"`
UserXIDs string `json:"user_xids" jsonschema:"Comma-separated list of user external IDs,required"`
}
CreateInput contains parameters for creating a feature flag user list.
type DeleteInput ¶
type DeleteInput struct {
ProjectID toolutil.StringOrInt `json:"project_id" jsonschema:"Project ID or path,required"`
IID int64 `json:"iid" jsonschema:"Feature flag user list internal ID,required"`
}
DeleteInput contains parameters for deleting a feature flag user list.
type GetInput ¶
type GetInput struct {
ProjectID toolutil.StringOrInt `json:"project_id" jsonschema:"Project ID or path,required"`
IID int64 `json:"iid" jsonschema:"Feature flag user list internal ID,required"`
}
GetInput contains parameters for getting a feature flag user list.
type ListInput ¶
type ListInput struct {
ProjectID toolutil.StringOrInt `json:"project_id" jsonschema:"Project ID or path,required"`
Search string `json:"search,omitempty" jsonschema:"Search by name"`
toolutil.PaginationInput
}
ListInput contains parameters for listing feature flag user lists.
type ListOutput ¶
type ListOutput struct {
toolutil.HintableOutput
UserLists []Output `json:"user_lists"`
Pagination toolutil.PaginationOutput `json:"pagination"`
}
ListOutput represents a paginated list of feature flag user lists.
func ListUserLists ¶
func ListUserLists(ctx context.Context, client *gitlabclient.Client, input ListInput) (ListOutput, error)
ListUserLists lists feature flag user lists for a project.
type Output ¶
type Output struct {
toolutil.HintableOutput
ID int64 `json:"id"`
IID int64 `json:"iid"`
ProjectID int64 `json:"project_id"`
Name string `json:"name"`
UserXIDs string `json:"user_xids"`
CreatedAt string `json:"created_at,omitempty"`
UpdatedAt string `json:"updated_at,omitempty"`
}
Output represents a single feature flag user list.
func CreateUserList ¶
func CreateUserList(ctx context.Context, client *gitlabclient.Client, input CreateInput) (Output, error)
CreateUserList creates a new feature flag user list.
func GetUserList ¶
GetUserList gets a single feature flag user list by IID.
func UpdateUserList ¶
func UpdateUserList(ctx context.Context, client *gitlabclient.Client, input UpdateInput) (Output, error)
UpdateUserList updates an existing feature flag user list.
type UpdateInput ¶
type UpdateInput struct {
ProjectID toolutil.StringOrInt `json:"project_id" jsonschema:"Project ID or path,required"`
IID int64 `json:"iid" jsonschema:"Feature flag user list internal ID,required"`
Name string `json:"name,omitempty" jsonschema:"New user list name"`
UserXIDs string `json:"user_xids,omitempty" jsonschema:"Comma-separated list of user external IDs"`
}
UpdateInput contains parameters for updating a feature flag user list.