Completions
Completions provide real-time autocomplete suggestions for tool parameters. Instead of memorizing project IDs, branch names, or user logins, you type a few characters and GitLab MCP Server queries GitLab for matching values, returning them through the MCP completion/complete protocol method. This transforms a multi-step lookup into a single, interactive selection.
GitLab MCP Server supports 17 completion argument types, organized into global completers that work anywhere and per-project completers that search within a chosen project. Every suggestion is fetched live, so results always reflect the current state of the connected GitLab instance.
What problem do completions solve?
Section titled “What problem do completions solve?”Without completions, supplying an identifier means looking it up first — and that often costs an extra tool call. With completions, the assistant resolves the value inline as the user types, so a separate discovery step is no longer required.
Without completions: User: "Create issue in project..." → What's the ID? → Must call list_projects first
With completions: User types: "mcp" → Server suggests: "group/gitlab-mcp-server", "group/redmine-mcp-server"This collapses a multi-step lookup into a single, interactive selection.
How do completions work?
Section titled “How do completions work?”When the user starts typing an argument value, the MCP client sends a completion/complete request to the server. The server queries the matching GitLab endpoint, then returns the matches as suggestions the client renders in a dropdown. The whole round-trip happens as the user types.
sequenceDiagram
participant U as User
participant AI as AI Assistant
participant S as MCP Server
participant GL as GitLab API
U->>AI: Starts typing argument value
AI->>S: completion/complete (arg: "project_id", value: "mcp")
S->>GL: GET /projects?search=mcp
GL-->>S: Matching projects
S-->>AI: Completion suggestions
AI->>U: Shows dropdown with options
Which argument types support completion?
Section titled “Which argument types support completion?”GitLab MCP Server supports 17 completion argument types, organized into global and per-project completers. Global completers resolve values that exist instance-wide, while per-project completers require a project context and search only within that project.
Global completers
Section titled “Global completers”These work without a project context:
| Argument | Completes | Example |
|---|---|---|
project | Project names/paths | my-group/my-project |
group | Group names/paths | engineering |
user | User names/logins | john.doe |
namespace | Namespaces (groups + users) | my-group |
Per-project completers
Section titled “Per-project completers”These require a project context and search within that project:
| Argument | Completes | Example |
|---|---|---|
branch | Branch names | feature/login |
tag | Tag names | v1.2.0 |
milestone | Milestone titles | Sprint 14 |
label | Label names | priority::high |
merge_request | MR IIDs | 42 |
issue | Issue IIDs | 100 |
pipeline | Pipeline IDs | 12345 |
environment | Environment names | production |
release | Release tag names | v2.0.0 |
wiki_slug | Wiki page slugs | getting-started |
version | Version/milestone IDs | v1.0 |
runner | Runner descriptions | shared-runner-1 |
board | Board names | Development |
How do completions improve AI accuracy?
Section titled “How do completions improve AI accuracy?”Completions reduce errors in AI tool calls in several concrete ways. Together they cut the number of failed calls caused by invalid identifiers:
- Eliminates typos — The assistant selects from validated suggestions instead of typing exact values.
- Reduces round-trips — No need to call
list_projectsbeforecreate_issue. - Provides context — Suggestions include IDs alongside names, ensuring correct values.
- Real-time search — Results update as the user types, powered by GitLab’s search API.
Frequently asked questions
Section titled “Frequently asked questions”What are MCP completions?
Section titled “What are MCP completions?”Completions are real-time autocomplete suggestions for tool parameters. You type a few characters and GitLab MCP Server queries GitLab through the MCP completion/complete method, returning matching projects, branches, users, labels, and more. This turns a multi-step lookup — such as calling list_projects to find an ID before creating an issue — into a single interactive selection. GitLab MCP Server supports 17 completion argument types across global and per-project completers.
Which argument types support completion?
Section titled “Which argument types support completion?”GitLab MCP Server supports 17 completion argument types. The four global completers need no project context: project, group, user, and namespace. The remaining per-project completers search within a selected project: branch, tag, milestone, label, merge_request, issue, pipeline, environment, release, wiki_slug, version, runner, and board. Each suggestion is fetched live from GitLab’s search API, so results reflect the current state of the instance.
How do completions improve AI assistant accuracy?
Section titled “How do completions improve AI assistant accuracy?”Completions cut failed tool calls in four ways: they eliminate typos because the assistant picks from validated suggestions; they reduce round-trips by removing the need to call list_projects before create_issue; they provide context by pairing IDs with names; and they offer real-time search updated as characters are typed. The net effect is fewer errors caused by invalid identifiers.
What if my MCP client does not support completions?
Section titled “What if my MCP client does not support completions?”Completions require the MCP client to support the completion/complete protocol method. If your client lacks it, GitLab MCP Server simply does not offer suggestions and tool functionality is unaffected. You can still discover valid values by calling the list action on any meta-tool — for example, listing projects, branches, or labels — and then supply the chosen value directly.