Skip to content

Commit f2013d0

Browse files
its-mashMohammod Al Amin Ashik
andauthored
feat: add GitLab MCP server definition (#42)
* Add GitLab MCP server definition Reference GitLab MCP server from modelcontextprotocol/servers for managing repos, issues, merge requests, and files. Uses @modelcontextprotocol/server-gitlab npm package. https://claude.ai/code/session_013AxurW8hPAfnUNvik354Xx * fix: update server definition (input type 'password' -> 'text' for GITLAB_PERSONAL_ACCESS_TOKEN; icon updated) * fix: update GitLab documentation URL (servers repo archived) * fix: rename server files with transport suffix - community.gitlab.json -> community.gitlab-npx.json (id: community.gitlab-npx) Signed-off-by: Mohammod Al Amin Ashik <maa.ashik00@gmail.com> * Replace GitLab definition with zereight/gitlab-mcp + official HTTP - Remove community.gitlab-npx.json (archived @modelcontextprotocol/server-gitlab, 9 tools) - Add zereight.gitlab-mcp-npx.json (@zereight/mcp-gitlab, 107+ tools, PAT auth) - Add zereight.gitlab-mcp-docker.json (zereight050/gitlab-mcp image) - Add com.gitlab-mcp.json (official GitLab HTTP endpoint, OAuth, 15 tools) Signed-off-by: Mohammod Al Amin Ashik <maa.ashik00@gmail.com> --------- Signed-off-by: Mohammod Al Amin Ashik <maa.ashik00@gmail.com> Co-authored-by: Mohammod Al Amin Ashik <mohammod@mcpmux.com>
1 parent 489e62c commit f2013d0

3 files changed

Lines changed: 245 additions & 0 deletions

File tree

servers/com.gitlab-mcp.json

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
{
2+
"$schema": "../schemas/server-definition.schema.json",
3+
"id": "com.gitlab-mcp",
4+
"name": "GitLab",
5+
"alias": "gitlab-http",
6+
"description": "GitLab's built-in MCP server for managing issues, merge requests, pipelines, and semantic code search. Requires GitLab 18.6+ with Duo enabled. Connects directly to any GitLab instance via OAuth.",
7+
"icon": "https://avatars.githubusercontent.com/u/1086321?v=4",
8+
"schema_version": "2.1",
9+
"categories": [
10+
"version-control",
11+
"developer-tools"
12+
],
13+
"tags": [
14+
"gitlab",
15+
"git",
16+
"version-control",
17+
"merge-requests",
18+
"issues",
19+
"ci-cd",
20+
"pipelines",
21+
"code-search"
22+
],
23+
24+
"transport": {
25+
"type": "http",
26+
"url": "https://gitlab.com/api/v4/mcp",
27+
"metadata": {
28+
"inputs": []
29+
}
30+
},
31+
32+
"auth": {
33+
"type": "oauth",
34+
"instructions": "Connect via OAuth when prompted. Your browser will open to authorize access to your GitLab account. Requires GitLab 18.6+ with Duo enabled."
35+
},
36+
37+
"contributor": {
38+
"name": "GitLab",
39+
"github": "gitlabhq",
40+
"url": "https://about.gitlab.com"
41+
},
42+
43+
"links": {
44+
"repository": "https://gitlab.com/gitlab-org/gitlab",
45+
"homepage": "https://about.gitlab.com",
46+
"documentation": "https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_server"
47+
},
48+
49+
"platforms": [
50+
"all"
51+
],
52+
53+
"capabilities": {
54+
"tools": true,
55+
"resources": false,
56+
"prompts": false,
57+
"read_only_mode": false
58+
}
59+
}
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
{
2+
"$schema": "../schemas/server-definition.schema.json",
3+
"id": "zereight.gitlab-mcp-docker",
4+
"name": "GitLab (Docker)",
5+
"alias": "gitlab-docker",
6+
"description": "Manage GitLab repositories, issues, merge requests, pipelines, wikis, milestones, and releases via Docker. 107+ tools with configurable toolsets, read-only mode, and project scoping.",
7+
"icon": "https://avatars.githubusercontent.com/u/42544600?v=4",
8+
"schema_version": "2.1",
9+
"categories": [
10+
"version-control",
11+
"developer-tools"
12+
],
13+
"tags": [
14+
"gitlab",
15+
"git",
16+
"version-control",
17+
"merge-requests",
18+
"issues",
19+
"ci-cd",
20+
"docker"
21+
],
22+
23+
"transport": {
24+
"type": "stdio",
25+
"command": "docker",
26+
"args": [
27+
"run", "-i", "--rm",
28+
"-e", "GITLAB_PERSONAL_ACCESS_TOKEN",
29+
"-e", "GITLAB_API_URL",
30+
"zereight050/gitlab-mcp"
31+
],
32+
"env": {
33+
"GITLAB_PERSONAL_ACCESS_TOKEN": "${input:GITLAB_PERSONAL_ACCESS_TOKEN}",
34+
"GITLAB_API_URL": "${input:GITLAB_API_URL}"
35+
},
36+
"metadata": {
37+
"inputs": [
38+
{
39+
"id": "GITLAB_PERSONAL_ACCESS_TOKEN",
40+
"label": "GitLab Personal Access Token",
41+
"description": "Personal Access Token for the GitLab API. Requires 'api' scope for full access, or 'read_api' for read-only mode.",
42+
"type": "text",
43+
"required": true,
44+
"secret": true,
45+
"placeholder": "glpat-xxxxxxxxxxxxxxxxxxxx",
46+
"obtain": {
47+
"url": "https://gitlab.com/-/user_settings/personal_access_tokens",
48+
"instructions": "1. Go to GitLab > User Settings > Access Tokens\n2. Click 'Add new token'\n3. Select the 'api' scope (or 'read_api' for read-only)\n4. Click 'Create personal access token' and copy it",
49+
"button_label": "Create Token"
50+
}
51+
},
52+
{
53+
"id": "GITLAB_API_URL",
54+
"label": "GitLab API URL",
55+
"description": "GitLab API base URL. Defaults to https://gitlab.com/api/v4 for gitlab.com. Change for self-hosted instances.",
56+
"type": "url",
57+
"required": false,
58+
"secret": false,
59+
"default": "https://gitlab.com/api/v4",
60+
"placeholder": "https://gitlab.example.com/api/v4"
61+
}
62+
]
63+
}
64+
},
65+
66+
"auth": {
67+
"type": "api_key",
68+
"instructions": "Create a Personal Access Token with 'api' scope at https://gitlab.com/-/user_settings/personal_access_tokens"
69+
},
70+
71+
"contributor": {
72+
"name": "zereight",
73+
"github": "zereight",
74+
"url": "https://github.com/zereight/gitlab-mcp"
75+
},
76+
77+
"links": {
78+
"repository": "https://github.com/zereight/gitlab-mcp",
79+
"homepage": "https://gitlab.com",
80+
"documentation": "https://github.com/zereight/gitlab-mcp#readme"
81+
},
82+
83+
"platforms": [
84+
"all"
85+
],
86+
87+
"capabilities": {
88+
"tools": true,
89+
"resources": false,
90+
"prompts": false,
91+
"read_only_mode": true
92+
}
93+
}
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
{
2+
"$schema": "../schemas/server-definition.schema.json",
3+
"id": "zereight.gitlab-mcp-npx",
4+
"name": "GitLab (npx)",
5+
"alias": "gitlab",
6+
"description": "Manage GitLab repositories, issues, merge requests, pipelines, wikis, milestones, and releases. 107+ tools with configurable toolsets, read-only mode, and project scoping.",
7+
"icon": "https://avatars.githubusercontent.com/u/42544600?v=4",
8+
"schema_version": "2.1",
9+
"categories": [
10+
"version-control",
11+
"developer-tools"
12+
],
13+
"tags": [
14+
"gitlab",
15+
"git",
16+
"version-control",
17+
"merge-requests",
18+
"issues",
19+
"ci-cd",
20+
"pipelines"
21+
],
22+
23+
"transport": {
24+
"type": "stdio",
25+
"command": "npx",
26+
"args": [
27+
"-y",
28+
"@zereight/mcp-gitlab"
29+
],
30+
"env": {
31+
"GITLAB_PERSONAL_ACCESS_TOKEN": "${input:GITLAB_PERSONAL_ACCESS_TOKEN}",
32+
"GITLAB_API_URL": "${input:GITLAB_API_URL}"
33+
},
34+
"metadata": {
35+
"inputs": [
36+
{
37+
"id": "GITLAB_PERSONAL_ACCESS_TOKEN",
38+
"label": "GitLab Personal Access Token",
39+
"description": "Personal Access Token for the GitLab API. Requires 'api' scope for full access, or 'read_api' for read-only mode.",
40+
"type": "text",
41+
"required": true,
42+
"secret": true,
43+
"placeholder": "glpat-xxxxxxxxxxxxxxxxxxxx",
44+
"obtain": {
45+
"url": "https://gitlab.com/-/user_settings/personal_access_tokens",
46+
"instructions": "1. Go to GitLab > User Settings > Access Tokens\n2. Click 'Add new token'\n3. Select the 'api' scope (or 'read_api' for read-only)\n4. Click 'Create personal access token' and copy it",
47+
"button_label": "Create Token"
48+
}
49+
},
50+
{
51+
"id": "GITLAB_API_URL",
52+
"label": "GitLab API URL",
53+
"description": "GitLab API base URL. Defaults to https://gitlab.com/api/v4 for gitlab.com. Change for self-hosted instances.",
54+
"type": "url",
55+
"required": false,
56+
"secret": false,
57+
"default": "https://gitlab.com/api/v4",
58+
"placeholder": "https://gitlab.example.com/api/v4"
59+
}
60+
]
61+
}
62+
},
63+
64+
"auth": {
65+
"type": "api_key",
66+
"instructions": "Create a Personal Access Token with 'api' scope at https://gitlab.com/-/user_settings/personal_access_tokens"
67+
},
68+
69+
"contributor": {
70+
"name": "zereight",
71+
"github": "zereight",
72+
"url": "https://github.com/zereight/gitlab-mcp"
73+
},
74+
75+
"links": {
76+
"repository": "https://github.com/zereight/gitlab-mcp",
77+
"homepage": "https://gitlab.com",
78+
"documentation": "https://github.com/zereight/gitlab-mcp#readme"
79+
},
80+
81+
"platforms": [
82+
"all"
83+
],
84+
85+
"capabilities": {
86+
"tools": true,
87+
"resources": false,
88+
"prompts": false,
89+
"read_only_mode": true
90+
},
91+
92+
"changelog_url": "https://github.com/zereight/gitlab-mcp/releases"
93+
}

0 commit comments

Comments
 (0)