- Notifications
You must be signed in to change notification settings - Fork2.7k
docs: Add Google Gemini CLI installation guide and integration#757
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
- Add comprehensive installation guide for Google Gemini CLI- Include Docker and binary configuration options- Add authentication setup for Gemini API and Vertex AI- Update main README.md to include Gemini CLI in installation guides- Update installation guides index with Gemini CLI entry and support matrix- Follow established documentation patterns and security best practices
soisyourface left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
This is awesome. For agemini-cli
user that is just trying to get this MCP to work, this is very helpful.
Left a few thoughts on the command use and things.
# Install GitHub MCP Server in Google Gemini CLI | ||
## Prerequisites | ||
1. Google Gemini CLI installed (see [Installation Options](#installation-options)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
question: should a guide on installinggemini-cli
be in here? or just a link to thegemini-cli
github page for instructions?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Good question! I've kept a brief installation section for user convenience (just the basic commands for npm, npx, and Homebrew) but added a link to thehttps://github.com/google-gemini/gemini-cli for more detailed installation options. This way users get the essentials quickly but can dive deeper if needed. What do you think of this approach?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
mostly just worried that this information falls behind and perhaps a link to gemini-cli's installation is more robust.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Makes sense, I have made a few changes to emphasize the official documentation link first - making it clear users should go there for up-to-date instructions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I don't think the information for how to install Gemini CLI belongs here. AFAIK the analogous information is not in the README files for other tools. Eg for Windsurf, the install guide talks about how to install github-mcp-server for Windsurf, not how to install windsurf.
1. **Check MCP server status**: | ||
```bash | ||
gemini-cli mcp status |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
fix: i think the command isgemini
and notgemini-cli
.
also, there is nogemini mcp status
command. the closest isgemini --prompt /mcp list
.
for the tools agemini --prompt /tools
this is true for examples below. you'll need the--prompt
flag.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Oups, this was my mistake. I am sorry for this and thank you for catching it. I will fix it below with a new commit.
✅ Changed all gemini-cli commands to gemini
✅ Fixedgemini mcp status
togemini --prompt /mcp list
✅ Fixedgemini mcp list-tools
togemini --prompt /tools
✅ Added--prompt
flags where needed throughout the examples
- Replace all 'gemini-cli' commands with correct 'gemini' syntax- Fix verification commands to use '/mcp list' and '/tools' prompts- Add httpUrl remote server method as primary configuration option- Update config file paths from settings.json to config.json- Correct npx installation command syntax- Add link to official Gemini CLI documentationAddresses feedback from soisyourface in PR review.
rica19ro commentedAug 2, 2025
|
Reduce detailed installation steps and direct users to official docs forup-to-date instructions, addressing reviewer feedback about maintainability.
Gemini CLI uses a settings JSON file to configure MCP servers: | ||
- **Global configuration**: `~/.gemini/config.json` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
is it not settings.json ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Oups my mistake, I have fixed it:a6e2426
## Installation Options | ||
Install Google Gemini CLI using your preferred method. For the most up-to-date installation instructions and troubleshooting, see the [official Gemini CLI documentation](https://github.com/google-gemini/gemini-cli). | ||
DinoChiesaAug 8, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Probably lines 11 through 41 are best left out of this README., which pertains to github-mcp-server. Install instructions for Germini CLI should remain in the README for Gemini CLI.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Good point about lines 11-41. I removed the Gemini CLI installation and authentication sections to keep this focused on GitHub MCP Server setup. This is also consistent with our other installation guides.
Uh oh!
There was an error while loading.Please reload this page.
### Method 2: Local Docker Setup (Alternative) | ||
**Important**: The npm package `@modelcontextprotocol/server-github` is no longer supported as of April 2025. Use the official Docker image `ghcr.io/github/github-mcp-server` instead. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
omit "Important: The npm package@modelcontextprotocol/server-github
is no longer supported as of April 2025."
This doc page is being added in August 2025. No need to reference old stuff.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Done:6bfae0d
## Prerequisites | ||
1. Google Gemini CLI installed (see [Installation Options](#installation-options)) | ||
2. [GitHub Personal Access Token](https://github.com/settings/personal-access-tokens/new) with appropriate scopes | ||
3. For local installation: [Docker](https://www.docker.com/) installed and running |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Or Podman. (https://podman.io)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I have not used Podman but based on my quick check it has Docker command compatibility, so I have added it:79e0782
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
In case there is any doubt.... I use podman with this server and with gemini-cli, and it works great - no surprise here.
Uh oh!
There was an error while loading.Please reload this page.
- **Official repository**: [github/github-mcp-server](https://github.com/github/github-mcp-server) | ||
- **Docker image**: `ghcr.io/github/github-mcp-server` (official and supported) | ||
- **npm package**: `@modelcontextprotocol/server-github` (deprecated as of April 2025 - no longer functional) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
omit
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Done, I have removed the deprecatednpm package
in this commit6bfae0d
DinoChiesa left a comment• edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Thanks for doing this.
I left a bunch of comments.
The correct configuration file for Gemini CLI is settings.json, not config.json.This applies to both global (~/.gemini/settings.json) and project-specific(.gemini/settings.json) configurations as confirmed by official documentation.
Removed lines 11-41 containing Gemini CLI installation commands andauthentication setup instructions.
Added Podman as container engine option alongside Docker.
DinoChiesa commentedAug 8, 2025
looking good |
Environment variable substitution in headers is not yet supportedby Gemini CLI (seegoogle-gemini/gemini-cli#5282).
@DinoChiesa I have addressed the comments above. Thank you so much for the amazing feedback, it helped a lot. Let me know if there is anything else that you might find useful. Otherwise, feel free to "approve" as a reviewer. |
@soisyourface is there any feedback that has not been addressed? Please let me if you approve for this work to finalize. Thank you! |
* add sliding window for actions logs* refactor: fix sliding* remove trim content* only use up to 1mb of memory for logs* update to tail lines in second pass* add better memory usage calculation* increase window size to 5MB* update test* update vers* undo vers change* add incremental memory tracking* use ring buffer* remove unused ctx param* remove manual GC clear* fix cca feedback* extract ring buffer logic to new package* handle log content processing errors and use correct param for maxjobloglines* fix tailing* account for if tailLines exceeds window size* add profiling thats reusable* remove profiler testing* refactor profiler: introduce safeMemoryDelta for accurate memory delta calculations* linter fixes* Update pkg/buffer/buffer.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* use flag for maxJobLogLines* add param passing for context window size* refactor: rename contextWindowSize to contentWindowSize for consistency* fix: use tailLines if bigger but only if <= 5000* fix: limit tailLines to a maximum of 500 for log content download* Update cmd/github-mcp-server/main.goCo-authored-by: Adam Holt <omgitsads@github.com>* Update cmd/github-mcp-server/main.goCo-authored-by: Adam Holt <omgitsads@github.com>* move profiler to internal/* update actions test with new profiler location* fix: adjust buffer size limits* make line buffer 1028kb* fix mod path* change test to use same buffer size as normal use* improve test for non-sliding window implementation to not count empty lines* make test memory measurement more accurate* remove impossible conditional---------Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>Co-authored-by: Adam Holt <omgitsads@github.com>
* add get_release_by_tag tool* add tool* add tests* autogen* remove comment
…ndex (github#892)* docs(readme): Update readme to point to correct installation guides index* feat(contributors): add list_repository_contributors tool* Revert "feat(contributors): add list_repository_contributors tool"This reverts commitece480e.---------Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
* Add support for listing repo level security advisories* Add support for listing repo security advisories at the org level
* use new link* update local install link
…ingAgentPrompt` and `IssueToFixWorkflowPrompt`. Role "system" is not allowed by Claude Code in MCP provided prompt (allowed only role "user" and "assistant") (github#941)Co-authored-by: 0xGosu <0xGosu@gmail.com>
soisyourface commentedAug 28, 2025
upstream in gemini-cli the bug was fixed concerning the LGTM |
LuluBeatson commentedAug 29, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Thank you@ipapapa for contributing this installation guide :) I've made a few changes such as:
|
"httpUrl": "https://api.githubcopilot.com/mcp/", | ||
"trust": true, | ||
"headers": { | ||
"Authorization": "Bearer $GITHUB_PAT" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
remove "Bearer"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Oups good catch. I fixed it:f2e5ad7
rmedranollamas commentedAug 29, 2025
chiming in from#742 here -- i think this one will do (and includes the .env mechanism, which i don't). i am happily closing my PR, so we this one merged in. |
</details> | ||
## GitHub MCP Server Configuration |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
The installation could be outdated with the main README.md file
We should inform the user to see the README.md of this project for the latest config
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Added the note as requested:26d9139
…ets (github#988)* add comprehensive minimal response where appropriate* remove unneeded comments* remove incorrect diff param* update docs* rm comment* Update pkg/github/repositories.goCo-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>* update toolsnaps and docs* change minimal_output to use new OptionalBoolParamWithDefault* Update pkg/github/repositories.goCo-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>* refactor minimal conversion funcs to minimal_types.go* consolidate response structs and remove unneeded message field* consolidate response further* remove CloneURL field* Update pkg/github/repositories.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* Update pkg/github/server.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* fix undefined* change incorrect comment* remove old err var declaration* Update pkg/github/repositories.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* fix syntax issue* update toolsnaps---------Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
c345e9b
intogithub:mainUh oh!
There was an error while loading.Please reload this page.
…b#757)* docs: Add Google Gemini CLI installation guide and integration- Add comprehensive installation guide for Google Gemini CLI- Include Docker and binary configuration options- Add authentication setup for Gemini API and Vertex AI- Update main README.md to include Gemini CLI in installation guides- Update installation guides index with Gemini CLI entry and support matrix- Follow established documentation patterns and security best practices* Fix Gemini CLI command syntax and add remote server method- Replace all 'gemini-cli' commands with correct 'gemini' syntax- Fix verification commands to use '/mcp list' and '/tools' prompts- Add httpUrl remote server method as primary configuration option- Update config file paths from settings.json to config.json- Correct npx installation command syntax- Add link to official Gemini CLI documentationAddresses feedback from soisyourface in PR review.* Emphasize official Gemini CLI documentation linkReduce detailed installation steps and direct users to official docs forup-to-date instructions, addressing reviewer feedback about maintainability.* Fix Gemini CLI configuration file name: config.json -> settings.jsonThe correct configuration file for Gemini CLI is settings.json, not config.json.This applies to both global (~/.gemini/settings.json) and project-specific(.gemini/settings.json) configurations as confirmed by official documentation.* Remove Gemini CLI installation and authentication sectionsRemoved lines 11-41 containing Gemini CLI installation commands andauthentication setup instructions.* Add Podman as Docker alternative in prerequisitesAdded Podman as container engine option alongside Docker.* Remove references to deprecated npm package* Add comprehensive ~/.gemini/.env file example* Fix authorization header to use literal token placeholderEnvironment variable substitution in headers is not yet supportedby Gemini CLI (seegoogle-gemini/gemini-cli#5282).* Add issue types (github#869)* feat: add type to issues* test: add `type` test for create and update issues* Generate docs and toolsnaps* Update pkg/github/issues.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* Use github ptr---------Co-authored-by: Pranav RK <pranavrk7@gmail.com>Co-authored-by: Pranav RK <39577726+radar07@users.noreply.github.com>Co-authored-by: Alon Kenneth <11458012+akenneth@users.noreply.github.com>Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* Enable Dependabot (github#654)* Create/Update dependabot.yaml* Apply suggestion from @CopilotCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>---------Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* Bump SDK version to 0.36.0 (github#863)* Use server.ServerResourceTemplate and server.ServerPrompt wrappers (github#886)* Update "Close inactive issues" workflow to close issues after 180 days of inactivity (github#909)* update PR_DAYS_BEFORE_STALE* update to mark as stale after 60 days* Update Claude MCP install guide after testing (github#706)* Revise Claude installation guide- Verified Claude Code installation steps- Identified and documented issues with Claude Desktop setup- Updated installation documentation based on testing* Revise instructions for opening Claude CodeUpdated recommendations for opening Claude Code.* Update docs/installation-guides/install-claude.mdCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* Update docs/installation-guides/install-claude.mdCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* Update installation guide for Claude setupAdded installation option for using Claude Code using a release binary.* Change section title for Go Binary installationUpdated section title for clarity regarding installation without Docker.* Close double quote in bash command---------Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>Co-authored-by: LuluBeatson <lulubeatson@github.com>Co-authored-by: Matt Holloway <mattdholloway@github.com>Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>* Add actions job log buffer and profiler (github#866)* add sliding window for actions logs* refactor: fix sliding* remove trim content* only use up to 1mb of memory for logs* update to tail lines in second pass* add better memory usage calculation* increase window size to 5MB* update test* update vers* undo vers change* add incremental memory tracking* use ring buffer* remove unused ctx param* remove manual GC clear* fix cca feedback* extract ring buffer logic to new package* handle log content processing errors and use correct param for maxjobloglines* fix tailing* account for if tailLines exceeds window size* add profiling thats reusable* remove profiler testing* refactor profiler: introduce safeMemoryDelta for accurate memory delta calculations* linter fixes* Update pkg/buffer/buffer.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* use flag for maxJobLogLines* add param passing for context window size* refactor: rename contextWindowSize to contentWindowSize for consistency* fix: use tailLines if bigger but only if <= 5000* fix: limit tailLines to a maximum of 500 for log content download* Update cmd/github-mcp-server/main.goCo-authored-by: Adam Holt <omgitsads@github.com>* Update cmd/github-mcp-server/main.goCo-authored-by: Adam Holt <omgitsads@github.com>* move profiler to internal/* update actions test with new profiler location* fix: adjust buffer size limits* make line buffer 1028kb* fix mod path* change test to use same buffer size as normal use* improve test for non-sliding window implementation to not count empty lines* make test memory measurement more accurate* remove impossible conditional---------Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>Co-authored-by: Adam Holt <omgitsads@github.com>* Add get_release_by_tag tool (github#938)* add get_release_by_tag tool* add tool* add tests* autogen* remove comment* docs(readme): Update readme to point to correct installation guides index (github#892)* docs(readme): Update readme to point to correct installation guides index* feat(contributors): add list_repository_contributors tool* Revert "feat(contributors): add list_repository_contributors tool"This reverts commitece480e.---------Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>* Add Global Security Advisories Toolset (github#919)* Repository security advisories (github#925)* Add support for listing repo level security advisories* Add support for listing repo security advisories at the org level* Update Cursor installation link (github#940)* use new link* update local install link* Change role from "system" to "user" in prompt messages for `AssignCodingAgentPrompt` and `IssueToFixWorkflowPrompt`. Role "system" is not allowed by Claude Code in MCP provided prompt (allowed only role "user" and "assistant") (github#941)Co-authored-by: 0xGosu <0xGosu@gmail.com>* Local MCP is supported* Refactor Gemini CLI install guide* Remove Bearer from Authorization header* Add reference to main README for latest config* Bearer needed for headers, add references* Add minimal response to CRUD tools, `repositories` and `search` toolsets (github#988)* add comprehensive minimal response where appropriate* remove unneeded comments* remove incorrect diff param* update docs* rm comment* Update pkg/github/repositories.goCo-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>* update toolsnaps and docs* change minimal_output to use new OptionalBoolParamWithDefault* Update pkg/github/repositories.goCo-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>* refactor minimal conversion funcs to minimal_types.go* consolidate response structs and remove unneeded message field* consolidate response further* remove CloneURL field* Update pkg/github/repositories.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* Update pkg/github/server.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* fix undefined* change incorrect comment* remove old err var declaration* Update pkg/github/repositories.goCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* fix syntax issue* update toolsnaps---------Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>* initial org repo create support (github#1023)---------Co-authored-by: JoannaaKL <joannaakl@github.com>Co-authored-by: Pranav RK <pranavrk7@gmail.com>Co-authored-by: Pranav RK <39577726+radar07@users.noreply.github.com>Co-authored-by: Alon Kenneth <11458012+akenneth@users.noreply.github.com>Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>Co-authored-by: Zack Koppert <zkoppert@github.com>Co-authored-by: Ksenia Bobrova <almaleksia@github.com>Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>Co-authored-by: Dimitrios Philliou <d1m1tr10s@github.com>Co-authored-by: LuluBeatson <lulubeatson@github.com>Co-authored-by: Matt Holloway <mattdholloway@github.com>Co-authored-by: Adam Holt <omgitsads@github.com>Co-authored-by: Rebecca Biju <113070179+beccccaboo@users.noreply.github.com>Co-authored-by: Jurre <jurre@github.com>Co-authored-by: 0xGosu <0xGosu@gmail.com>Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
Closes:
#756