You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+36-7Lines changed: 36 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,7 @@ automation and interaction capabilities for developers and tools.
15
15
## Prerequisites
16
16
17
17
1. To run the server in a container, you will need to have [Docker](https://www.docker.com/) installed.
18
-
2. Once Docker is installed, you will also need to ensure Docker is running.
18
+
2. Once Docker is installed, you will also need to ensure Docker is running. The image is public; if you get errors on pull, you may have an expired token and need to `docker logout ghcr.io`.
19
19
3. Lastly you will need to [Create a GitHub Personal Access Token](https://github.com/settings/personal-access-tokens/new).
20
20
The MCP server can use many of the GitHub APIs, so enable the permissions that you feel comfortable granting your AI tools (to learn more about access tokens, please check out the [documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens)).
21
21
@@ -27,10 +27,6 @@ For quick installation, use one of the one-click install buttons at the top of t
27
27
28
28
For manual installation, add the following JSON block to your User Settings (JSON) file in VS Code. You can do this by pressing `Ctrl + Shift + P` and typing `Preferences: Open User Settings (JSON)`.
29
29
30
-
Optionally, you can add it to a file called `.vscode/mcp.json` in your workspace. This will allow you to share the configuration with others.
31
-
32
-
> Note that the `mcp` key is not needed in the `.vscode/mcp.json` file.
33
-
34
30
```json
35
31
{
36
32
"mcp": {
@@ -62,6 +58,39 @@ Optionally, you can add it to a file called `.vscode/mcp.json` in your workspace
62
58
}
63
59
```
64
60
61
+
Optionally, you can add a similar example (i.e. without the mcp key) to a file called `.vscode/mcp.json` in your workspace. This will allow you to share the configuration with others.
It is possible to provide `GITHUB_MCP_SERVER_E2E_DEBUG=true` to run the e2e tests with an in-process version of the MCP server. This has slightly reduced coverage as it doesn't integrate with Docker, or make use of the cobra/viper configuration parsing. However, it allows for placing breakpoints in the MCP Server internals, supporting much better debugging flows than the fully black-box tests.
83
+
84
+
One might argue that the lack of visibility into failures for the black box tests also indicates a product need, but this solves for the immediate pain point felt as a maintainer.
85
+
80
86
## Limitations
81
87
82
88
The current test suite is intentionally very limited in scope. This is because the maintenance costs on e2e tests tend to increase significantly over time. To read about some challenges with GitHub integration tests, see [go-github integration tests README](https://github.com/google/go-github/blob/5b75aa86dba5cf4af2923afa0938774f37fa0a67/test/README.md). We will expand this suite circumspectly!
83
89
84
-
Currently, visibility into failures is not particularly good.
90
+
The tests are quite repetitive and verbose. This is intentional as we want to see them develop more before committing to abstractions.
91
+
92
+
Currently, visibility into failures is not particularly good. We're hoping that we can pull apart the mcp-go client and have it hook into streams representing stdio without requiring an exec. This way we can get breakpoints in the debugger easily.
0 commit comments