Versions in this module Expand all Collapse all v1 v1.2.2 Apr 26, 2026 v1.2.1 Apr 25, 2026 v1.2.0 Apr 24, 2026 v1.1.0 Apr 23, 2026 v1.0.6 Apr 23, 2026 v1.0.5 Apr 22, 2026 v1.0.4 Apr 22, 2026 v1.0.3 Apr 22, 2026 v1.0.2 Apr 21, 2026 v1.0.1 Apr 21, 2026 v1.0.0 Apr 21, 2026 Changes in this version + func DeleteApprovalRule(ctx context.Context, client *gitlabclient.Client, ...) error + func DeleteCustomHeader(ctx context.Context, client *gitlabclient.Client, ...) error + func DeleteForkRelation(ctx context.Context, client *gitlabclient.Client, ...) error + func DeleteHook(ctx context.Context, client *gitlabclient.Client, input DeleteHookInput) error + func DeletePushRule(ctx context.Context, client *gitlabclient.Client, input DeletePushRuleInput) error + func DeleteSharedProjectFromGroup(ctx context.Context, client *gitlabclient.Client, input DeleteSharedGroupInput) error + func DeleteWebhookURLVariable(ctx context.Context, client *gitlabclient.Client, ...) error + func FormatApprovalConfigMarkdown(out ApprovalConfigOutput) string + func FormatApprovalRuleMarkdown(out ApprovalRuleOutput) string + func FormatDeleteMarkdown(out DeleteOutput) string + func FormatDownloadAvatarMarkdown(out DownloadAvatarOutput) string + func FormatForkRelationMarkdown(out ForkRelationOutput) string + func FormatHookMarkdown(out HookOutput) string + func FormatLanguagesMarkdown(out LanguagesOutput) string + func FormatListApprovalRulesMarkdown(out ListApprovalRulesOutput) string + func FormatListForksMarkdown(out ListForksOutput) string + func FormatListHooksMarkdown(out ListHooksOutput) string + func FormatListMarkdown(out ListOutput) string + func FormatListProjectGroupsMarkdown(out ListProjectGroupsOutput) string + func FormatListProjectUsersMarkdown(out ListProjectUsersOutput) string + func FormatListStarrersMarkdown(out ListProjectStarrersOutput) string + func FormatMarkdown(p Output) string + func FormatPullMirrorMarkdown(out PullMirrorOutput) string + func FormatPushRuleMarkdown(out PushRuleOutput) string + func FormatRepositoryStorageMarkdown(out RepositoryStorageOutput) string + func FormatShareProjectMarkdown(out ShareProjectOutput) string + func RegisterPushRuleTools(server *mcp.Server, client *gitlabclient.Client) + func RegisterTools(server *mcp.Server, client *gitlabclient.Client) + func SetCustomHeader(ctx context.Context, client *gitlabclient.Client, input SetCustomHeaderInput) error + func SetWebhookURLVariable(ctx context.Context, client *gitlabclient.Client, ...) error + func StartHousekeeping(ctx context.Context, client *gitlabclient.Client, input StartHousekeepingInput) error + func StartMirroring(ctx context.Context, client *gitlabclient.Client, input StartMirroringInput) error + type AddHookInput struct + BranchFilterStrategy string + ConfidentialIssuesEvents *bool + ConfidentialNoteEvents *bool + CustomWebhookTemplate string + DeploymentEvents *bool + Description string + EmojiEvents *bool + EnableSSLVerification *bool + IssuesEvents *bool + JobEvents *bool + MergeRequestsEvents *bool + Name string + NoteEvents *bool + PipelineEvents *bool + ProjectID toolutil.StringOrInt + PushEvents *bool + PushEventsBranchFilter string + ReleasesEvents *bool + ResourceAccessTokenEvents *bool + TagPushEvents *bool + Token string + URL string + WikiPageEvents *bool + type AddPushRuleInput struct + AuthorEmailRegex string + BranchNameRegex string + CommitCommitterCheck *bool + CommitCommitterNameCheck *bool + CommitMessageNegativeRegex string + CommitMessageRegex string + DenyDeleteTag *bool + FileNameRegex string + MaxFileSize *int64 + MemberCheck *bool + PreventSecrets *bool + ProjectID toolutil.StringOrInt + RejectNonDCOCommits *bool + RejectUnsignedCommits *bool + type ApprovalConfigOutput struct + ApprovalsBeforeMerge int64 + DisableOverridingApproversPerMergeRequest bool + MergeRequestsAuthorApproval bool + MergeRequestsDisableCommittersApproval bool + RequireReauthenticationToApprove bool + ResetApprovalsOnPush bool + SelectiveCodeOwnerRemovals bool + func ChangeApprovalConfig(ctx context.Context, client *gitlabclient.Client, ...) (ApprovalConfigOutput, error) + func GetApprovalConfig(ctx context.Context, client *gitlabclient.Client, input GetApprovalConfigInput) (ApprovalConfigOutput, error) + type ApprovalRuleOutput struct + AppliesToAllProtectedBranches bool + ApprovalsRequired int64 + ContainsHiddenGroups bool + EligibleApprovers []string + Groups []string + ID int64 + Name string + ReportType string + RuleType string + Users []string + func CreateApprovalRule(ctx context.Context, client *gitlabclient.Client, ...) (ApprovalRuleOutput, error) + func GetApprovalRule(ctx context.Context, client *gitlabclient.Client, input GetApprovalRuleInput) (ApprovalRuleOutput, error) + func UpdateApprovalRule(ctx context.Context, client *gitlabclient.Client, ...) (ApprovalRuleOutput, error) + type ArchiveInput struct + ProjectID toolutil.StringOrInt + type ChangeApprovalConfigInput struct + ApprovalsBeforeMerge *int64 + DisableOverridingApproversPerMergeRequest *bool + MergeRequestsAuthorApproval *bool + MergeRequestsDisableCommittersApproval *bool + ProjectID toolutil.StringOrInt + RequireReauthenticationToApprove *bool + ResetApprovalsOnPush *bool + SelectiveCodeOwnerRemovals *bool + type ConfigurePullMirrorInput struct + AuthPassword string + AuthUser string + Enabled *bool + MirrorBranchRegex string + MirrorOverwritesDivergedBranches *bool + MirrorTriggerBuilds *bool + OnlyMirrorProtectedBranches *bool + ProjectID toolutil.StringOrInt + URL string + type CreateApprovalRuleInput struct + AppliesToAllProtectedBranches *bool + ApprovalsRequired int64 + GroupIDs []int64 + Name string + ProjectID toolutil.StringOrInt + ProtectedBranchIDs []int64 + RuleType string + UserIDs []int64 + Usernames []string + type CreateForUserInput struct + DefaultBranch string + Description string + InitializeWithReadme bool + IssuesEnabled *bool + JobsEnabled *bool + MergeRequestsEnabled *bool + Name string + NamespaceID int + Path string + Topics []string + UserID int64 + Visibility string + WikiEnabled *bool + type CreateForkRelationInput struct + ForkedFromID int64 + ProjectID toolutil.StringOrInt + type CreateInput struct + AllowMergeOnSkippedPipeline *bool + AutocloseReferencedIssues *bool + BuildTimeout int64 + CIConfigPath string + CIForwardDeploymentEnabled *bool + ContainerRegistryAccessLevel string + DefaultBranch string + Description string + ImportURL string + InitializeWithReadme bool + IssuesEnabled *bool + JobsEnabled *bool + LFSEnabled *bool + MergeMethod string + MergeRequestsEnabled *bool + Name string + NamespaceID int + OnlyAllowMergeIfAllDiscussionsAreResolved bool + OnlyAllowMergeIfPipelineSucceeds bool + PackageRegistryAccessLevel string + PackagesEnabled *bool + PagesAccessLevel string + Path string + PublicBuilds *bool + RemoveSourceBranchAfterMerge *bool + RequestAccessEnabled *bool + SharedRunnersEnabled *bool + SnippetsAccessLevel string + SquashOption string + SuggestionCommitMessage string + Topics []string + Visibility string + WikiEnabled *bool + type DeleteApprovalRuleInput struct + ProjectID toolutil.StringOrInt + RuleID int64 + type DeleteCustomHeaderInput struct + HookID int64 + Key string + ProjectID toolutil.StringOrInt + type DeleteForkRelationInput struct + ProjectID toolutil.StringOrInt + type DeleteHookInput struct + HookID int64 + ProjectID toolutil.StringOrInt + type DeleteInput struct + FullPath string + PermanentlyRemove bool + ProjectID toolutil.StringOrInt + type DeleteOutput struct + MarkedForDeletionOn string + Message string + PermanentlyRemoved bool + Status string + func Delete(ctx context.Context, client *gitlabclient.Client, input DeleteInput) (DeleteOutput, error) + type DeletePushRuleInput struct + ProjectID toolutil.StringOrInt + type DeleteSharedGroupInput struct + GroupID int64 + ProjectID toolutil.StringOrInt + type DeleteWebhookURLVariableInput struct + HookID int64 + Key string + ProjectID toolutil.StringOrInt + type DownloadAvatarInput struct + ProjectID toolutil.StringOrInt + type DownloadAvatarOutput struct + ContentBase64 string + SizeBytes int + func DownloadAvatar(ctx context.Context, client *gitlabclient.Client, input DownloadAvatarInput) (DownloadAvatarOutput, error) + type EditHookInput struct + BranchFilterStrategy string + ConfidentialIssuesEvents *bool + ConfidentialNoteEvents *bool + CustomWebhookTemplate string + DeploymentEvents *bool + Description string + EmojiEvents *bool + EnableSSLVerification *bool + HookID int64 + IssuesEvents *bool + JobEvents *bool + MergeRequestsEvents *bool + Name string + NoteEvents *bool + PipelineEvents *bool + ProjectID toolutil.StringOrInt + PushEvents *bool + PushEventsBranchFilter string + ReleasesEvents *bool + ResourceAccessTokenEvents *bool + TagPushEvents *bool + Token string + URL string + WikiPageEvents *bool + type EditPushRuleInput struct + AuthorEmailRegex *string + BranchNameRegex *string + CommitCommitterCheck *bool + CommitCommitterNameCheck *bool + CommitMessageNegativeRegex *string + CommitMessageRegex *string + DenyDeleteTag *bool + FileNameRegex *string + MaxFileSize *int64 + MemberCheck *bool + PreventSecrets *bool + ProjectID toolutil.StringOrInt + RejectNonDCOCommits *bool + RejectUnsignedCommits *bool + type ForkInput struct + Branches string + Description string + MergeRequestDefaultTargetSelf *bool + Name string + NamespaceID int64 + NamespacePath string + Path string + ProjectID toolutil.StringOrInt + Visibility string + type ForkRelationOutput struct + CreatedAt string + ForkedFromProjectID int64 + ForkedToProjectID int64 + ID int64 + UpdatedAt string + func CreateForkRelation(ctx context.Context, client *gitlabclient.Client, ...) (ForkRelationOutput, error) + type GetApprovalConfigInput struct + ProjectID toolutil.StringOrInt + type GetApprovalRuleInput struct + ProjectID toolutil.StringOrInt + RuleID int64 + type GetHookInput struct + HookID int64 + ProjectID toolutil.StringOrInt + type GetInput struct + License *bool + ProjectID toolutil.StringOrInt + Statistics *bool + WithCustomAttributes *bool + type GetLanguagesInput struct + ProjectID toolutil.StringOrInt + type GetPullMirrorInput struct + ProjectID toolutil.StringOrInt + type GetPushRulesInput struct + ProjectID toolutil.StringOrInt + type GetRepositoryStorageInput struct + ProjectID toolutil.StringOrInt + type HookOutput struct + AlertStatus string + BranchFilterStrategy string + ConfidentialIssuesEvents bool + ConfidentialNoteEvents bool + CreatedAt time.Time + CustomWebhookTemplate string + DeploymentEvents bool + Description string + EmojiEvents bool + EnableSSLVerification bool + FeatureFlagEvents bool + ID int64 + IssuesEvents bool + JobEvents bool + MergeRequestsEvents bool + MilestoneEvents bool + Name string + NoteEvents bool + PipelineEvents bool + ProjectID int64 + PushEvents bool + PushEventsBranchFilter string + ReleasesEvents bool + RepositoryUpdateEvents bool + ResourceAccessTokenEvents bool + TagPushEvents bool + URL string + WikiPageEvents bool + func AddHook(ctx context.Context, client *gitlabclient.Client, input AddHookInput) (HookOutput, error) + func EditHook(ctx context.Context, client *gitlabclient.Client, input EditHookInput) (HookOutput, error) + func GetHook(ctx context.Context, client *gitlabclient.Client, input GetHookInput) (HookOutput, error) + type LanguageEntry struct + Name string + Percentage float32 + type LanguagesOutput struct + Languages []LanguageEntry + func GetLanguages(ctx context.Context, client *gitlabclient.Client, input GetLanguagesInput) (LanguagesOutput, error) + type ListApprovalRulesInput struct + ProjectID toolutil.StringOrInt + type ListApprovalRulesOutput struct + Pagination toolutil.PaginationOutput + Rules []ApprovalRuleOutput + func ListApprovalRules(ctx context.Context, client *gitlabclient.Client, input ListApprovalRulesInput) (ListApprovalRulesOutput, error) + type ListForksInput struct + OrderBy string + Owned bool + ProjectID toolutil.StringOrInt + Search string + Sort string + Visibility string + type ListForksOutput struct + Forks []Output + Pagination toolutil.PaginationOutput + func ListForks(ctx context.Context, client *gitlabclient.Client, input ListForksInput) (ListForksOutput, error) + type ListHooksInput struct + ProjectID toolutil.StringOrInt + type ListHooksOutput struct + Hooks []HookOutput + Pagination toolutil.PaginationOutput + func ListHooks(ctx context.Context, client *gitlabclient.Client, input ListHooksInput) (ListHooksOutput, error) + type ListInput struct + Archived *bool + IDAfter int64 + IDBefore int64 + IncludeHidden *bool + IncludePendingDelete *bool + LastActivityAfter string + LastActivityBefore string + Membership *bool + MinAccessLevel int + OrderBy string + Owned bool + Search string + SearchNamespaces *bool + Simple bool + Sort string + Starred *bool + Statistics *bool + Topic string + Visibility string + WithIssuesEnabled *bool + WithMergeRequestsEnabled *bool + WithProgrammingLanguage string + type ListInvitedGroupsInput struct + MinAccessLevel int + ProjectID toolutil.StringOrInt + Search string + type ListOutput struct + Pagination toolutil.PaginationOutput + Projects []Output + func List(ctx context.Context, client *gitlabclient.Client, input ListInput) (ListOutput, error) + func ListUserContributedProjects(ctx context.Context, client *gitlabclient.Client, ...) (ListOutput, error) + func ListUserProjects(ctx context.Context, client *gitlabclient.Client, input ListUserProjectsInput) (ListOutput, error) + func ListUserStarredProjects(ctx context.Context, client *gitlabclient.Client, ...) (ListOutput, error) + type ListProjectGroupsInput struct + ProjectID toolutil.StringOrInt + Search string + SharedMinAccessLevel int + SharedVisibleOnly *bool + SkipGroups []int64 + WithShared *bool + type ListProjectGroupsOutput struct + Groups []ProjectGroupOutput + Pagination toolutil.PaginationOutput + func ListInvitedGroups(ctx context.Context, client *gitlabclient.Client, input ListInvitedGroupsInput) (ListProjectGroupsOutput, error) + func ListProjectGroups(ctx context.Context, client *gitlabclient.Client, input ListProjectGroupsInput) (ListProjectGroupsOutput, error) + type ListProjectStarrersInput struct + ProjectID toolutil.StringOrInt + Search string + type ListProjectStarrersOutput struct + Pagination toolutil.PaginationOutput + Starrers []StarrerOutput + func ListProjectStarrers(ctx context.Context, client *gitlabclient.Client, ...) (ListProjectStarrersOutput, error) + type ListProjectUsersInput struct + ProjectID toolutil.StringOrInt + Search string + type ListProjectUsersOutput struct + Pagination toolutil.PaginationOutput + Users []ProjectUserOutput + func ListProjectUsers(ctx context.Context, client *gitlabclient.Client, input ListProjectUsersInput) (ListProjectUsersOutput, error) + type ListUserContributedProjectsInput struct + Archived *bool + OrderBy string + Search string + Simple bool + Sort string + UserID toolutil.StringOrInt + Visibility string + type ListUserProjectsInput struct + Archived *bool + OrderBy string + Search string + Simple bool + Sort string + UserID toolutil.StringOrInt + Visibility string + type ListUserStarredProjectsInput struct + Archived *bool + OrderBy string + Search string + Simple bool + Sort string + UserID toolutil.StringOrInt + Visibility string + type Output struct + AllowMergeOnSkippedPipeline bool + ApprovalsBeforeMerge int64 + Archived bool + AutocloseReferencedIssues bool + AvatarURL string + BuildTimeout int64 + CIConfigPath string + ComplianceFrameworks []string + ContainerRegistryEnabled bool + CreatedAt string + CreatorID int64 + DefaultBranch string + Description string + EmptyRepo bool + ForkedFromProject string + ForksCount int64 + HTTPURLToRepo string + ID int64 + ImportURL string + IssuesEnabled bool + JobsEnabled bool + LFSEnabled bool + LastActivityAt string + MarkedForDeletionOn string + MergeCommitTemplate string + MergeMethod string + MergePipelinesEnabled bool + MergeRequestTitleRegex string + MergeRequestTitleRegexDescription string + MergeRequestsEnabled bool + MergeTrainsEnabled bool + Name string + NameWithNamespace string + Namespace string + OnlyAllowMergeIfAllDiscussionsAreResolved bool + OnlyAllowMergeIfPipelineSucceeds bool + OpenIssuesCount int64 + PackageRegistryAccessLevel string + PackagesEnabled bool + Path string + PathWithNamespace string + PublicBuilds bool + ReadmeURL string + RemoveSourceBranchAfterMerge bool + RequestAccessEnabled bool + ResolveOutdatedDiffDiscussions bool + SSHURLToRepo string + SharedRunnersEnabled bool + SnippetsEnabled bool + SquashCommitTemplate string + SquashOption string + StarCount int64 + SuggestionCommitMessage string + Topics []string + UpdatedAt string + Visibility string + WebURL string + WikiEnabled bool + func Archive(ctx context.Context, client *gitlabclient.Client, input ArchiveInput) (Output, error) + func Create(ctx context.Context, client *gitlabclient.Client, input CreateInput) (Output, error) + func CreateForUser(ctx context.Context, client *gitlabclient.Client, input CreateForUserInput) (Output, error) + func Fork(ctx context.Context, client *gitlabclient.Client, input ForkInput) (Output, error) + func Get(ctx context.Context, client *gitlabclient.Client, input GetInput) (Output, error) + func Restore(ctx context.Context, client *gitlabclient.Client, input RestoreInput) (Output, error) + func Star(ctx context.Context, client *gitlabclient.Client, input StarInput) (Output, error) + func ToOutput(p *gl.Project) Output + func Transfer(ctx context.Context, client *gitlabclient.Client, input TransferInput) (Output, error) + func Unarchive(ctx context.Context, client *gitlabclient.Client, input UnarchiveInput) (Output, error) + func Unstar(ctx context.Context, client *gitlabclient.Client, input UnstarInput) (Output, error) + func Update(ctx context.Context, client *gitlabclient.Client, input UpdateInput) (Output, error) + func UploadAvatar(ctx context.Context, client *gitlabclient.Client, input UploadAvatarInput) (Output, error) + type ProjectGroupOutput struct + AvatarURL string + FullName string + FullPath string + ID int64 + Name string + WebURL string + type ProjectUserOutput struct + AvatarURL string + ID int64 + Name string + State string + Username string + WebURL string + type PullMirrorOutput struct + Enabled bool + ID int64 + LastError string + LastSuccessfulUpdateAt string + LastUpdateAt string + LastUpdateStartedAt string + MirrorBranchRegex string + MirrorOverwritesDivergedBranches bool + MirrorTriggerBuilds bool + OnlyMirrorProtectedBranches bool + URL string + UpdateStatus string + func ConfigurePullMirror(ctx context.Context, client *gitlabclient.Client, ...) (PullMirrorOutput, error) + func GetPullMirror(ctx context.Context, client *gitlabclient.Client, input GetPullMirrorInput) (PullMirrorOutput, error) + type PushRuleOutput struct + AuthorEmailRegex string + BranchNameRegex string + CommitCommitterCheck bool + CommitCommitterNameCheck bool + CommitMessageNegativeRegex string + CommitMessageRegex string + CreatedAt string + DenyDeleteTag bool + FileNameRegex string + ID int64 + MaxFileSize int64 + MemberCheck bool + PreventSecrets bool + ProjectID int64 + RejectNonDCOCommits bool + RejectUnsignedCommits bool + func AddPushRule(ctx context.Context, client *gitlabclient.Client, input AddPushRuleInput) (PushRuleOutput, error) + func EditPushRule(ctx context.Context, client *gitlabclient.Client, input EditPushRuleInput) (PushRuleOutput, error) + func GetPushRules(ctx context.Context, client *gitlabclient.Client, input GetPushRulesInput) (PushRuleOutput, error) + type RepositoryStorageOutput struct + CreatedAt string + DiskPath string + ProjectID int64 + RepositoryStorage string + func GetRepositoryStorage(ctx context.Context, client *gitlabclient.Client, ...) (RepositoryStorageOutput, error) + type RestoreInput struct + ProjectID toolutil.StringOrInt + type SetCustomHeaderInput struct + HookID int64 + Key string + ProjectID toolutil.StringOrInt + Value string + type SetWebhookURLVariableInput struct + HookID int64 + Key string + ProjectID toolutil.StringOrInt + Value string + type ShareProjectInput struct + ExpiresAt string + GroupAccess int + GroupID int64 + ProjectID toolutil.StringOrInt + type ShareProjectOutput struct + AccessRole string + GroupAccess int + GroupID int64 + Message string + func ShareProjectWithGroup(ctx context.Context, client *gitlabclient.Client, input ShareProjectInput) (ShareProjectOutput, error) + type StarInput struct + ProjectID toolutil.StringOrInt + type StarrerOutput struct + StarredSince string + User ProjectUserOutput + type StartHousekeepingInput struct + ProjectID toolutil.StringOrInt + type StartMirroringInput struct + ProjectID toolutil.StringOrInt + type TransferInput struct + Namespace string + ProjectID toolutil.StringOrInt + type TriggerTestHookInput struct + Event string + HookID int64 + ProjectID toolutil.StringOrInt + type TriggerTestHookOutput struct + Message string + func TriggerTestHook(ctx context.Context, client *gitlabclient.Client, input TriggerTestHookInput) (TriggerTestHookOutput, error) + type UnarchiveInput struct + ProjectID toolutil.StringOrInt + type UnstarInput struct + ProjectID toolutil.StringOrInt + type UpdateApprovalRuleInput struct + AppliesToAllProtectedBranches *bool + ApprovalsRequired *int64 + GroupIDs []int64 + Name string + ProjectID toolutil.StringOrInt + ProtectedBranchIDs []int64 + RuleID int64 + UserIDs []int64 + Usernames []string + type UpdateInput struct + AllowMergeOnSkippedPipeline *bool + ApprovalsBeforeMerge int64 + AutocloseReferencedIssues *bool + CIConfigPath string + ContainerRegistryAccessLevel string + DefaultBranch string + Description string + IssuesEnabled *bool + JobsEnabled *bool + LFSEnabled *bool + MergeCommitTemplate string + MergeMethod string + MergePipelinesEnabled *bool + MergeRequestTitleRegex string + MergeRequestTitleRegexDescription string + MergeRequestsEnabled *bool + MergeTrainsEnabled *bool + Name string + OnlyAllowMergeIfAllDiscussionsAreResolved *bool + OnlyAllowMergeIfPipelineSucceeds *bool + PackageRegistryAccessLevel string + PackagesEnabled *bool + PagesAccessLevel string + ProjectID toolutil.StringOrInt + PublicBuilds *bool + RemoveSourceBranchAfterMerge *bool + RequestAccessEnabled *bool + ResolveOutdatedDiffDiscussions *bool + SharedRunnersEnabled *bool + SnippetsAccessLevel string + SquashCommitTemplate string + SquashOption string + Topics []string + Visibility string + WikiEnabled *bool + type UploadAvatarInput struct + ContentBase64 string + FilePath string + Filename string + ProjectID toolutil.StringOrInt