Skip to content

Commit 6dfb70d

Browse files
first commit
1 parent e258173 commit 6dfb70d

File tree

1 file changed

+113
-94
lines changed

1 file changed

+113
-94
lines changed

README.md

Lines changed: 113 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -7,144 +7,164 @@ GitHub MCP Server implemented in Go.
77
Create a GitHub Personal Access Token with the appropriate permissions
88
and set it as the GITHUB_PERSONAL_ACCESS_TOKEN environment variable.
99

10-
1110
## Tools
1211

1312
### Users
13+
1414
- **get_me** - Get details of the authenticated user
15-
- No parameters required
15+
- No parameters required
1616

1717
### Issues
18+
1819
- **get_issue** - Gets the contents of an issue within a repository
19-
- `owner`: Repository owner (string, required)
20-
- `repo`: Repository name (string, required)
21-
- `issue_number`: Issue number (number, required)
20+
21+
- `owner`: Repository owner (string, required)
22+
- `repo`: Repository name (string, required)
23+
- `issue_number`: Issue number (number, required)
2224

2325
- **add_issue_comment** - Add a comment to an issue
24-
- `owner`: Repository owner (string, required)
25-
- `repo`: Repository name (string, required)
26-
- `issue_number`: Issue number (number, required)
27-
- `body`: Comment text (string, required)
26+
27+
- `owner`: Repository owner (string, required)
28+
- `repo`: Repository name (string, required)
29+
- `issue_number`: Issue number (number, required)
30+
- `body`: Comment text (string, required)
2831

2932
- **search_issues** - Search for issues and pull requests
30-
- `query`: Search query (string, required)
31-
- `sort`: Sort field (string, optional)
32-
- `order`: Sort order (string, optional)
33-
- `page`: Page number (number, optional)
34-
- `per_page`: Results per page (number, optional)
33+
- `query`: Search query (string, required)
34+
- `sort`: Sort field (string, optional)
35+
- `order`: Sort order (string, optional)
36+
- `page`: Page number (number, optional)
37+
- `per_page`: Results per page (number, optional)
3538

3639
### Pull Requests
40+
3741
- **get_pull_request** - Get details of a specific pull request
38-
- `owner`: Repository owner (string, required)
39-
- `repo`: Repository name (string, required)
40-
- `pull_number`: Pull request number (number, required)
42+
43+
- `owner`: Repository owner (string, required)
44+
- `repo`: Repository name (string, required)
45+
- `pull_number`: Pull request number (number, required)
4146

4247
- **list_pull_requests** - List and filter repository pull requests
43-
- `owner`: Repository owner (string, required)
44-
- `repo`: Repository name (string, required)
45-
- `state`: PR state (string, optional)
46-
- `sort`: Sort field (string, optional)
47-
- `direction`: Sort direction (string, optional)
48-
- `per_page`: Results per page (number, optional)
49-
- `page`: Page number (number, optional)
48+
49+
- `owner`: Repository owner (string, required)
50+
- `repo`: Repository name (string, required)
51+
- `state`: PR state (string, optional)
52+
- `sort`: Sort field (string, optional)
53+
- `direction`: Sort direction (string, optional)
54+
- `per_page`: Results per page (number, optional)
55+
- `page`: Page number (number, optional)
5056

5157
- **merge_pull_request** - Merge a pull request
52-
- `owner`: Repository owner (string, required)
53-
- `repo`: Repository name (string, required)
54-
- `pull_number`: Pull request number (number, required)
55-
- `commit_title`: Title for the merge commit (string, optional)
56-
- `commit_message`: Message for the merge commit (string, optional)
57-
- `merge_method`: Merge method (string, optional)
58+
59+
- `owner`: Repository owner (string, required)
60+
- `repo`: Repository name (string, required)
61+
- `pull_number`: Pull request number (number, required)
62+
- `commit_title`: Title for the merge commit (string, optional)
63+
- `commit_message`: Message for the merge commit (string, optional)
64+
- `merge_method`: Merge method (string, optional)
5865

5966
- **get_pull_request_files** - Get the list of files changed in a pull request
60-
- `owner`: Repository owner (string, required)
61-
- `repo`: Repository name (string, required)
62-
- `pull_number`: Pull request number (number, required)
67+
68+
- `owner`: Repository owner (string, required)
69+
- `repo`: Repository name (string, required)
70+
- `pull_number`: Pull request number (number, required)
6371

6472
- **get_pull_request_status** - Get the combined status of all status checks for a pull request
65-
- `owner`: Repository owner (string, required)
66-
- `repo`: Repository name (string, required)
67-
- `pull_number`: Pull request number (number, required)
73+
74+
- `owner`: Repository owner (string, required)
75+
- `repo`: Repository name (string, required)
76+
- `pull_number`: Pull request number (number, required)
6877

6978
- **update_pull_request_branch** - Update a pull request branch with the latest changes from the base branch
70-
- `owner`: Repository owner (string, required)
71-
- `repo`: Repository name (string, required)
72-
- `pull_number`: Pull request number (number, required)
73-
- `expected_head_sha`: The expected SHA of the pull request's HEAD ref (string, optional)
79+
80+
- `owner`: Repository owner (string, required)
81+
- `repo`: Repository name (string, required)
82+
- `pull_number`: Pull request number (number, required)
83+
- `expected_head_sha`: The expected SHA of the pull request's HEAD ref (string, optional)
7484

7585
- **get_pull_request_comments** - Get the review comments on a pull request
76-
- `owner`: Repository owner (string, required)
77-
- `repo`: Repository name (string, required)
78-
- `pull_number`: Pull request number (number, required)
86+
87+
- `owner`: Repository owner (string, required)
88+
- `repo`: Repository name (string, required)
89+
- `pull_number`: Pull request number (number, required)
7990

8091
- **get_pull_request_reviews** - Get the reviews on a pull request
81-
- `owner`: Repository owner (string, required)
82-
- `repo`: Repository name (string, required)
83-
- `pull_number`: Pull request number (number, required)
92+
- `owner`: Repository owner (string, required)
93+
- `repo`: Repository name (string, required)
94+
- `pull_number`: Pull request number (number, required)
8495

8596
### Repositories
97+
8698
- **create_or_update_file** - Create or update a single file in a repository
87-
- `owner`: Repository owner (string, required)
88-
- `repo`: Repository name (string, required)
89-
- `path`: File path (string, required)
90-
- `message`: Commit message (string, required)
91-
- `content`: File content (string, required)
92-
- `branch`: Branch name (string, optional)
93-
- `sha`: File SHA if updating (string, optional)
99+
100+
- `owner`: Repository owner (string, required)
101+
- `repo`: Repository name (string, required)
102+
- `path`: File path (string, required)
103+
- `message`: Commit message (string, required)
104+
- `content`: File content (string, required)
105+
- `branch`: Branch name (string, optional)
106+
- `sha`: File SHA if updating (string, optional)
94107

95108
- **search_repositories** - Search for GitHub repositories
96-
- `query`: Search query (string, required)
97-
- `sort`: Sort field (string, optional)
98-
- `order`: Sort order (string, optional)
99-
- `page`: Page number (number, optional)
100-
- `per_page`: Results per page (number, optional)
109+
110+
- `query`: Search query (string, required)
111+
- `sort`: Sort field (string, optional)
112+
- `order`: Sort order (string, optional)
113+
- `page`: Page number (number, optional)
114+
- `per_page`: Results per page (number, optional)
101115

102116
- **create_repository** - Create a new GitHub repository
103-
- `name`: Repository name (string, required)
104-
- `description`: Repository description (string, optional)
105-
- `private`: Whether the repository is private (boolean, optional)
106-
- `auto_init`: Auto-initialize with README (boolean, optional)
107-
- `gitignore_template`: Gitignore template name (string, optional)
117+
118+
- `name`: Repository name (string, required)
119+
- `description`: Repository description (string, optional)
120+
- `private`: Whether the repository is private (boolean, optional)
121+
- `auto_init`: Auto-initialize with README (boolean, optional)
122+
- `gitignore_template`: Gitignore template name (string, optional)
108123

109124
- **get_file_contents** - Get contents of a file or directory
110-
- `owner`: Repository owner (string, required)
111-
- `repo`: Repository name (string, required)
112-
- `path`: File path (string, required)
113-
- `ref`: Git reference (string, optional)
125+
126+
- `owner`: Repository owner (string, required)
127+
- `repo`: Repository name (string, required)
128+
- `path`: File path (string, required)
129+
- `ref`: Git reference (string, optional)
114130

115131
- **fork_repository** - Fork a repository
116-
- `owner`: Repository owner (string, required)
117-
- `repo`: Repository name (string, required)
118-
- `organization`: Target organization name (string, optional)
132+
133+
- `owner`: Repository owner (string, required)
134+
- `repo`: Repository name (string, required)
135+
- `organization`: Target organization name (string, optional)
119136

120137
- **create_branch** - Create a new branch
121-
- `owner`: Repository owner (string, required)
122-
- `repo`: Repository name (string, required)
123-
- `branch`: New branch name (string, required)
124-
- `sha`: SHA to create branch from (string, required)
138+
139+
- `owner`: Repository owner (string, required)
140+
- `repo`: Repository name (string, required)
141+
- `branch`: New branch name (string, required)
142+
- `sha`: SHA to create branch from (string, required)
125143

126144
- **list_commits** - Gets commits of a branch in a repository
127-
- `owner`: Repository owner (string, required)
128-
- `repo`: Repository name (string, required)
129-
- `sha`: Branch name, tag, or commit SHA (string, optional)
130-
- `path`: Only commits containing this file path (string, optional)
131-
- `page`: Page number (number, optional)
132-
- `per_page`: Results per page (number, optional)
145+
- `owner`: Repository owner (string, required)
146+
- `repo`: Repository name (string, required)
147+
- `sha`: Branch name, tag, or commit SHA (string, optional)
148+
- `path`: Only commits containing this file path (string, optional)
149+
- `page`: Page number (number, optional)
150+
- `per_page`: Results per page (number, optional)
133151

134152
### Search
153+
135154
- **search_code** - Search for code across GitHub repositories
136-
- `query`: Search query (string, required)
137-
- `sort`: Sort field (string, optional)
138-
- `order`: Sort order (string, optional)
139-
- `page`: Page number (number, optional)
140-
- `per_page`: Results per page (number, optional)
155+
156+
- `query`: Search query (string, required)
157+
- `sort`: Sort field (string, optional)
158+
- `order`: Sort order (string, optional)
159+
- `page`: Page number (number, optional)
160+
- `per_page`: Results per page (number, optional)
141161

142162
- **search_users** - Search for GitHub users
143-
- `query`: Search query (string, required)
144-
- `sort`: Sort field (string, optional)
145-
- `order`: Sort order (string, optional)
146-
- `page`: Page number (number, optional)
147-
- `per_page`: Results per page (number, optional)
163+
- `query`: Search query (string, required)
164+
- `sort`: Sort field (string, optional)
165+
- `order`: Sort order (string, optional)
166+
- `page`: Page number (number, optional)
167+
- `per_page`: Results per page (number, optional)
148168

149169
## Standard input/output server
150170

@@ -178,6 +198,7 @@ GitHub MCP Server running on stdio
178198
}
179199
180200
```
201+
181202
## TODO
182203
183204
Lots of things!
@@ -190,14 +211,12 @@ Missing tools:
190211
- update_issue (labels and assignees arrays)
191212
- create_pull_request_review (comments array)
192213
193-
194-
Testing
214+
Testing
195215
196216
- Unit tests
197217
- Integration tests
198218
- Blackbox testing: ideally comparing output to Anthromorphic's server to make sure that this is a fully compatible drop-in replacement.
199219
200220
And some other stuff:
201-
- ...
202-
203221
222+
- ...

0 commit comments

Comments
 (0)