Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR updates the README to improve its documentation and reorganization of usage instructions.
- The description now explains that the server provides seamless integration with GitHub’s APIs.
- Section headers have been updated (e.g., "Setup" to "Use Cases" and additions like "Usage with VS Code" and "Usage with Claude Desktop").
Tip: Copilot only keeps its highest confidence comments to reduce noise and keep you focused. Learn more
SamMorrowDrums
left a comment
There was a problem hiding this comment.
I think it reads a lot better now. A few comments, nothing strongly held other then making sure the config json file matches what's in the code.
README.md
Outdated
| When you start the server, VS Code will prompt for your token. On top of | ||
| `servers`, you should see a `Start` link to start the server. |
There was a problem hiding this comment.
This didn't quite track for me. Perhaps:
| When you start the server, VS Code will prompt for your token. On top of | |
| `servers`, you should see a `Start` link to start the server. | |
| VS Code is now configured to prompt for your token when you start the server. On top of | |
| `servers`, you should see a `Start` link to start the server. |
On top of
servers, you should see aStartlink to start the server.
Where? It is not clear to me what part of the UO this is referring to.
README.md
Outdated
|
|
||
| Create a new file `.vscode/mcp.json` and provide this configuration: | ||
| The descriptions of the tools can be overridden by creating a | ||
| github-mcp-server.json file in the same directory as the binary. |
There was a problem hiding this comment.
| github-mcp-server.json file in the same directory as the binary. | |
| github-mcp-server-config.json file in the same directory as the binary. |
Double check the name of the file, @williammartin changed it for us because it was otherwise trying to read the binary and reporting a warning on startup.
There was a problem hiding this comment.
good catch, it is indeed github-mcp-server-config.json
README.md
Outdated
| } | ||
| ```sh | ||
| ./github-mcp-server --export-translations | ||
| cat github-mcp-server.json |
There was a problem hiding this comment.
| cat github-mcp-server.json | |
| cat github-mcp-server-config.json |
I could be wrong on the name but it's specified in the code, I am on mobile and can't look, but this does need updating also.
README.md
Outdated
| with the permissions you want to give the MCP server. You can also install | ||
| [Docker](https://www.docker.com/) to run the server in a container or build the | ||
| binary from the repo. |
There was a problem hiding this comment.
| with the permissions you want to give the MCP server. You can also install | |
| [Docker](https://www.docker.com/) to run the server in a container or build the | |
| binary from the repo. | |
| with the permissions you want to give the MCP server. To run the server in a container, you will need to have | |
| [Docker](https://www.docker.com/) installed. | |
| Alternatively you can build the binary from the source code in your repo. |
There was a problem hiding this comment.
agree with breaking this out, the current sentence make it sound like you build the binary in docker.
do we have a preference? if so we should point users to it.
would also help to link to some docs for how to build with go
README.md
Outdated
| # GitHub MCP Server | ||
|
|
||
| GitHub MCP Server implemented in Go. | ||
| The GitHub MCP Server is a Model Context Protocol (MCP) server that provides |
There was a problem hiding this comment.
| The GitHub MCP Server is a Model Context Protocol (MCP) server that provides | |
| The GitHub MCP Server is a [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) server that provides |
README.md
Outdated
|
|
||
| GitHub MCP Server implemented in Go. | ||
| The GitHub MCP Server is a Model Context Protocol (MCP) server that provides | ||
| seamless integration with GitHub's APIs, enabling advanced automation and |
There was a problem hiding this comment.
| seamless integration with GitHub's APIs, enabling advanced automation and | |
| seamless integration with GitHub APIs, enabling advanced automation and |
README.md
Outdated
| ## Prerequisites | ||
|
|
||
| ### Requirements | ||
| [Create a GitHub Personal Access Token](https://github.com/settings/personal-access-tokens/new) |
There was a problem hiding this comment.
the current link doesn't give context to people who aren't familiar with PATs and won't work if a user isn't logged in. suggest pointing to our public docs instead
| [Create a GitHub Personal Access Token](https://github.com/settings/personal-access-tokens/new) | |
| [Create a GitHub Personal Access Token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens) |
README.md
Outdated
|
|
||
| ### Requirements | ||
| [Create a GitHub Personal Access Token](https://github.com/settings/personal-access-tokens/new) | ||
| with the permissions you want to give the MCP server. You can also install |
There was a problem hiding this comment.
which permissions do people need for their token? to avoid confusion it would help to list those out, possibly broken into readonly and and write sections.
README.md
Outdated
| with the permissions you want to give the MCP server. You can also install | ||
| [Docker](https://www.docker.com/) to run the server in a container or build the | ||
| binary from the repo. |
There was a problem hiding this comment.
agree with breaking this out, the current sentence make it sound like you build the binary in docker.
do we have a preference? if so we should point users to it.
would also help to link to some docs for how to build with go
| ### Build from source | ||
|
|
||
| Start VS Code Insiders and make sure you pass the `GITHUB_PERSONAL_ACCESS_TOKEN` environment variable to the process. | ||
| If you don't have Docker, you can use `go` to build the binary in the |
There was a problem hiding this comment.
this makes it sounds like docker is preferred over building from source. is that the case?
|
|
||
| Start VS Code Insiders and make sure you pass the `GITHUB_PERSONAL_ACCESS_TOKEN` environment variable to the process. | ||
| If you don't have Docker, you can use `go` to build the binary in the | ||
| `cmd/github-mcp-server` directory, and use the `github-mcp-server stdio` |
There was a problem hiding this comment.
this is hard to parse and will be harder for people who aren't used to building go projects
| ```bash | ||
| docker pull ghcr.io/github/github-mcp-server:main | ||
| ``` | ||
| code --add-mcp '{"name":"github","command":"docker","args":["run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server:main"], "env": {"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github-pat}"}, "inputs": [{ "id": "github-pat", "type": "promptString", "description": "Github Personal Access Token", "password": true}]}' |
There was a problem hiding this comment.
is GITHUB_PERSONAL_ACCESS_TOKEN required both as an env var to docker and as an env var for code? I'm not quite sure how to parse this one so maybe it's pulling it in from code and setting it as an env var in the docker 🤔
would be good to explain what this is doing
There was a problem hiding this comment.
It's part of the VS Code config. For this one, I modeled it on the Playwright readme: https://github.com/microsoft/playwright-mcp?tab=readme-ov-file#installation-in-vs-code
README.md
Outdated
|
|
||
| Create a new file `.vscode/mcp.json` and provide this configuration: | ||
| The descriptions of the tools can be overridden by creating a | ||
| github-mcp-server.json file in the same directory as the binary. |
There was a problem hiding this comment.
| github-mcp-server.json file in the same directory as the binary. | |
| `github-mcp-server.json` file in the same directory as the binary. |
| The flag `--gh-host` and the environment variable `GH_HOST` can be used to set the GitHub Enterprise Server hostname. | ||
|
|
||
|
|
||
| ## Tools |
There was a problem hiding this comment.
suggest breaking this out into a different file which we link to here. ideally one that is dynamically generated so this doesn't have to be kept up to date manually
No description provided.