Action domain
discover_project
Every action this domain exposes through gitlab_execute_action, from the gitlab://tools manifest. Each entry folds out to its full upstream description and required parameters.
1 · actions0 · destructive1 · read-only
Counted with a Free-tier token against gitlab.com, which is the only host this endpoint talks to: to use it against a self-managed instance, run the server yourself — its documentation covers that. The catalog is scoped to the token that asks, so the count moves with both its tier and its permissions: higher tiers expose more actions, and administration domains only appear to tokens allowed to use them. That is why the figures differ elsewhere: the upstream project counts 868 operations on Community Edition and up to 1,094 on GitLab.com's top tier, while this deployment publishes 768 because it is OAuth-only and acts with your token, so the administration domains a non-admin account cannot call never appear. All three describe the same catalog, counted from three vantage points.
Each entry also says what a GitLab fine-grained personal access token needs to run it, as GitLab 19.4.1 declares it: every permission of one line, at one of the boundaries named. Where there are alternatives, any one is enough.
Discover Projectread-onlydiscover_project.resolveResolve a full git remote URL to a GitLab project and return its project_id and metadata. Read-only. Performs a lookup against the GitLab Projects API. No side effects.
When to use: only when the user or workspace provides a complete git remote URL from .git/config ([remote "origin"] url = ...) or from 'git remote -v'. If the prompt already provides a project path such as group/project or a numeric project ID, pass that value directly as params.project_id to the requested GitLab tool instead of calling discovery. Do not synthesize, guess, or add .git to a project path to create a remote URL.
NOT for: searching projects by name (usesearch.projects), listing a user's projects (useproject.list_user_projects), verifying GitLab connectivity or authentication (useserver.status), or pre-checking workflows where project_id is already known.IMPORTANT: pass the complete URL exactly as it appears. Do NOT strip the git@ prefix from SSH URLs. Supported formats (a URL scheme or git@ user prefix is required):
- HTTPS: https://gitlab.example.com/group/project.git
- SSH shorthand: git@gitlab.example.com:group/project.git
- SSH protocol: ssh://git@gitlab.example.com/group/project.gitReturns: {id, name, path, path_with_namespace, web_url, description, default_branch, visibility, http_url_to_repo, ssh_url_to_repo, extracted_path}. Errors: 404 not found (hint: project may be private, so verify token permissions), 403 forbidden (hint: token lacks read_api scope).
See also:
project.get,server.status,search.projects.Required parameters:
remote_url (string)Fine-grained token:
Project: Readat project