GitLab API MCP vs Github
A side-by-side look at the GitLab API MCP and Github MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose GitLab API MCP for version control work over a hosted endpoint; choose Github for version control as a local process. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose GitLab API MCP when
- You need dedicated capabilities in the Version Control domain.
- You prefer a remote HTTP/SSE transport.
Choose Github when
- You need dedicated capabilities in the Version Control domain.
- You prefer a local stdio subprocess transport.
- You want tools like
search_repos, get_repo, list_repo_issues.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Version Control | Version Control |
| Quality signal | 40/100 · Fair | 63/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Remote HTTP/SSE | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Free | Not declared |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 10 | 0 |
| Directory activity | 1 views 0 installs 0 upvotes | 5 views 0 installs 0 upvotes |
| Tools | Not listed | 9 |
| Full listing | View GitLab API MCP | View Github |
Tools & capabilities
GitLab API MCP tools
No tool names declared yet. Check the project README from the listing page.
Github tools 9
search_reposSearch GitHub repositories by keyword. Returns repo name, description, star count, forks, primary language, and URL. Use when exploring projects or finding code implementations.get_repoLook up ONE named repository by its owner/repo slug — "facebook/react", "torvalds/linux", "vercel/next.js". Use this whenever the repository is named in the question. Answers how many stars / forks / watchers a repo has, what license and language it uses, its topics, description, open issue count, its default branch, and when it was last pushed (pushed_at).list_repo_issuesList issues for a GitHub repository by owner and repo name; filters pull requests out automatically. Returns issue number, title, state, labels, author, comment count, URL, and timestamps. Defaults to open issues.get_userGet a GitHub user's public profile info. Returns name, bio, company, location, public repo count, followers, and social links. Specify username (e.g., username="torvalds").get_file_contentsRead a file from a PUBLIC GitHub repository (or list a directory) by path. PREFER OVER WEB SEARCH for "show me the README / package.json / <file> of <repo>", "read <path> from <owner/repo>", inspecting source or config files. Pass owner + repo + path (omit path or "" for the repo root listing). Optional ref = branch/tag/commit SHA. Returns decoded text for files (capped ~60k), or a directory listing of {name, path, type, size}.search_codeSearch CODE across public GitHub repositories — find where a function/symbol/string is defined or used. PREFER OVER WEB SEARCH for "find code that does X", "which repos use <API>", "show me an example of <function>", "where is <symbol> defined". Supports GitHub code-search qualifiers right in the query: repo:owner/name, org:name, user:name, language:go, filename:Dockerfile, path:src, extension:ts, in:file. Returns matching files with repo, path, and URL. Note: indexes the default branch only, ignores very common terms, and is capped at ~10 searches/minute.get_releasesGet the latest release and recent release history for a repository — the canonical way to answer "what is the latest version of <project>", "when was <repo> last released", "what changed in the newest release". Returns the latest published stable release (tag, name, date, prerelease flag, release notes, downloadable assets with download counts) plus recent releases. Falls back to git tags for repos that tag but do not cut formal releases.list_commitsList recent commits on a repository to see latest activity, what changed, and who is committing. PREFER OVER WEB SEARCH for "what are the recent commits to <repo>", "when was <owner/repo> last updated", "latest changes in <repo>". Optional sha (branch/tag/commit to start history from), path (only commits touching that file/dir), and since/until ISO timestamps. Returns sha, message, author, and date per commit.github_trending_reposTrending GitHub repositories — what is hot, popular, and taking off on GitHub right now. Answers "what are the top trending GitHub repos this week", "what is hot on GitHub today", "popular new repositories this month", "trending Rust / Python / AI projects", "which GitHub projects blew up recently". Two modes: mode="new" (default) ranks repositories CREATED inside the time window by star count — the projects that blew up this week — and mode="active" ranks repositories PUSHED inside the window by star count, surfacing established projects under heavy development. Set the window with since (day, week, or month), filter with language, add free-text query keywords such as "llm" or "agent", and raise a min_stars floor. Returns full_name, description, language, stars, forks, created and pushed dates, topics, and URL per repo. Computed live from the GitHub Search API; github.com/trending ranks by stars GAINED during the period using an unpublished algorithm that the public API keeps private, so ordering differs and every response says so in its caveat field.
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
GitLab API MCP
{
"mcpServers": {
"gitlab-api": {
"url": "http://localhost:8000/gitlab-mcp/mcp"
}
}
}
Github
{
"mcpServers": {
"github-3": {
"command": "npx",
"args": [
"-y",
"@pipeworx/mcp-github"
]
}
}
}
Frequently asked questions
GitLab API MCP is categorized under Version Control and uses a remote HTTP/SSE transport. Github belongs to Version Control and uses a local stdio subprocess. Pick GitLab API MCP for version control work and Github for version control.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
GitLab API MCP is listed as free. Github has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add gitlab-api and github-3 as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, GitLab API MCP has a quality signal of 40/100 (Fair) with 1 views, 0 installs and 10 GitHub stars. Github has 63/100 (Good) with 5 views, 0 installs and 0 GitHub stars.