@@ -10,6 +10,32 @@ A Model Context Protocol (MCP) server implementation that provides GitHub Projec
1010
1111This server implements the [ Model Context Protocol] ( https://modelcontextprotocol.io ) to expose GitHub Projects functionality to LLM clients and applications. It provides tools for managing projects, milestones, sprints, and metrics through GitHub's GraphQL API while maintaining state and handling errors according to MCP specifications.
1212
13+ ## Table of Contents
14+
15+ - [ Overview] ( #overview )
16+ - [ Quick Start] ( #quick-start )
17+ - [ Key Features] ( #key-features )
18+ - [ Installation] ( #installation )
19+ - [ Configuration] ( #configuration )
20+ - [ Usage] ( #usage )
21+ - [ As a command-line tool] ( #as-a-command-line-tool )
22+ - [ Running from source with TypeScript] ( #running-from-source-with-typescript )
23+ - [ As a Node.js module] ( #as-a-nodejs-module )
24+ - [ Integration with MCP clients] ( #integration-with-mcp-clients )
25+ - [ Installing in AI Assistants] ( #installing-in-ai-assistants )
26+ - [ Claude] ( #install-in-claude )
27+ - [ Roocode] ( #install-in-roocode )
28+ - [ Windsurf] ( #install-in-windsurf )
29+ - [ VS Code] ( #install-in-vs-code )
30+ - [ Cursor] ( #install-in-cursor )
31+ - [ Using Docker] ( #using-docker )
32+ - [ Troubleshooting] ( #troubleshooting )
33+ - [ Architecture] ( #architecture )
34+ - [ Contributing] ( #contributing )
35+ - [ License] ( #license )
36+ - [ References] ( #references )
37+ - [ Current Status] ( #current-status )
38+
1339## Quick Start
1440
1541### Using NPM
@@ -130,8 +156,52 @@ mcp-github-project-manager
130156
131157# Start with environment variables
132158GITHUB_TOKEN=your_token mcp-github-project-manager
159+
160+ # Start with command line arguments
161+ mcp-github-project-manager --token=your_token --owner=your_username --repo=your_repo
162+
163+ # Use a specific .env file
164+ mcp-github-project-manager --env-file=.env.production
165+
166+ # Show verbose output
167+ mcp-github-project-manager --verbose
168+
169+ # Display help information
170+ mcp-github-project-manager --help
133171```
134172
173+ ### Running from source with TypeScript
174+
175+ If you're developing or running from source:
176+
177+ ``` bash
178+ # Run directly with ts-node
179+ node --loader ts-node/esm src/index.ts
180+
181+ # Run with command line arguments
182+ node --loader ts-node/esm src/index.ts --token=your_token --owner=your_username --repo=your_repo
183+
184+ # Use the npm dev script (watches for changes)
185+ npm run dev
186+
187+ # Display help information
188+ node --loader ts-node/esm src/index.ts --help
189+ ```
190+
191+ #### Command Line Options
192+
193+ | Option | Short | Description |
194+ | --------| -------| -------------|
195+ | ` --token <token> ` | ` -t ` | GitHub personal access token |
196+ | ` --owner <owner> ` | ` -o ` | GitHub repository owner (username or organization) |
197+ | ` --repo <repo> ` | ` -r ` | GitHub repository name |
198+ | ` --env-file <path> ` | ` -e ` | Path to .env file (default: .env in project root) |
199+ | ` --verbose ` | ` -v ` | Enable verbose logging |
200+ | ` --help ` | ` -h ` | Display help information |
201+ | ` --version ` | | Display version information |
202+
203+ Command line arguments take precedence over environment variables.
204+
135205### As a Node.js module
136206
137207``` javascript
@@ -179,6 +249,210 @@ const result = await client.callTool("create_project", {
179249
180250For more examples, see the [ User Guide] ( docs/user-guide.md ) and the [ examples/] ( examples/ ) directory.
181251
252+ ### Installing in AI Assistants
253+
254+ #### Install in Claude
255+
256+ To install the MCP server in Claude Desktop:
257+
258+ ``` json
259+ {
260+ "mcpServers" : {
261+ "github-project-manager" : {
262+ "command" : " npx" ,
263+ "args" : [" -y" , " mcp-github-project-manager" ],
264+ "env" : {
265+ "GITHUB_TOKEN" : " your_github_token" ,
266+ "GITHUB_OWNER" : " your_username" ,
267+ "GITHUB_REPO" : " your_repo"
268+ }
269+ }
270+ }
271+ }
272+ ```
273+
274+ For Claude Code CLI, run:
275+
276+ ``` bash
277+ claude mcp add github-project-manager -- npx -y mcp-github-project-manager
278+ ```
279+
280+ #### Install in Roocode
281+
282+ Add this to your Roocode configuration:
283+
284+ ``` json
285+ {
286+ "mcpServers" : {
287+ "github-project-manager" : {
288+ "command" : " npx" ,
289+ "args" : [" -y" , " mcp-github-project-manager" ],
290+ "env" : {
291+ "GITHUB_TOKEN" : " your_github_token" ,
292+ "GITHUB_OWNER" : " your_username" ,
293+ "GITHUB_REPO" : " your_repo"
294+ }
295+ }
296+ }
297+ }
298+ ```
299+
300+ #### Install in Windsurf
301+
302+ Add this to your Windsurf MCP config file:
303+
304+ ``` json
305+ {
306+ "mcpServers" : {
307+ "github-project-manager" : {
308+ "command" : " npx" ,
309+ "args" : [" -y" , " mcp-github-project-manager" ],
310+ "env" : {
311+ "GITHUB_TOKEN" : " your_github_token" ,
312+ "GITHUB_OWNER" : " your_username" ,
313+ "GITHUB_REPO" : " your_repo"
314+ }
315+ }
316+ }
317+ }
318+ ```
319+
320+ See [ Windsurf MCP docs] ( https://docs.windsurf.com/windsurf/mcp ) for more information.
321+
322+ #### Install in VS Code
323+
324+ Add this to your VS Code MCP config file:
325+
326+ ``` json
327+ {
328+ "servers" : {
329+ "github-project-manager" : {
330+ "type" : " stdio" ,
331+ "command" : " npx" ,
332+ "args" : [" -y" , " mcp-github-project-manager" ],
333+ "env" : {
334+ "GITHUB_TOKEN" : " your_github_token" ,
335+ "GITHUB_OWNER" : " your_username" ,
336+ "GITHUB_REPO" : " your_repo"
337+ }
338+ }
339+ }
340+ }
341+ ```
342+
343+ See [ VS Code MCP docs] ( https://code.visualstudio.com/docs/copilot/chat/mcp-servers ) for more information.
344+
345+ #### Install in Cursor
346+
347+ Add this to your Cursor MCP config file:
348+
349+ ``` json
350+ {
351+ "mcpServers" : {
352+ "github-project-manager" : {
353+ "command" : " npx" ,
354+ "args" : [" -y" , " mcp-github-project-manager" ],
355+ "env" : {
356+ "GITHUB_TOKEN" : " your_github_token" ,
357+ "GITHUB_OWNER" : " your_username" ,
358+ "GITHUB_REPO" : " your_repo"
359+ }
360+ }
361+ }
362+ }
363+ ```
364+
365+ See [ Cursor MCP docs] ( https://docs.cursor.com/context/model-context-protocol ) for more information.
366+
367+ #### Using Docker
368+
369+ If you prefer to run the MCP server in a Docker container:
370+
371+ 1 . ** Build the Docker Image:**
372+
373+ Create a ` Dockerfile ` in your project directory:
374+
375+ ``` dockerfile
376+ FROM node:18-alpine
377+
378+ WORKDIR /app
379+
380+ # Install the package globally
381+ RUN npm install -g mcp-github-project-manager
382+
383+ # Default command to run the server
384+ CMD ["mcp-github-project-manager" ]
385+ ```
386+
387+ Build the image:
388+
389+ ``` bash
390+ docker build -t github-project-manager-mcp .
391+ ```
392+
393+ 2 . ** Configure Your MCP Client:**
394+
395+ Update your MCP client's configuration to use the Docker command:
396+
397+ ``` json
398+ {
399+ "mcpServers" : {
400+ "github-project-manager" : {
401+ "command" : " docker" ,
402+ "args" : [" run" , " -i" , " --rm" , " github-project-manager-mcp" ],
403+ "env" : {
404+ "GITHUB_TOKEN" : " your_github_token" ,
405+ "GITHUB_OWNER" : " your_username" ,
406+ "GITHUB_REPO" : " your_repo"
407+ }
408+ }
409+ }
410+ }
411+ ```
412+
413+ ### Troubleshooting
414+
415+ #### Common Issues
416+
417+ 1 . ** Module Not Found Errors**
418+
419+ If you encounter module resolution issues, try using ` bunx ` instead of ` npx ` :
420+
421+ ``` json
422+ {
423+ "mcpServers" : {
424+ "github-project-manager" : {
425+ "command" : " bunx" ,
426+ "args" : [" -y" , " mcp-github-project-manager" ]
427+ }
428+ }
429+ }
430+ ```
431+
432+ 2 . ** Windows-Specific Configuration**
433+
434+ On Windows, you may need to use ` cmd ` to run the command:
435+
436+ ``` json
437+ {
438+ "mcpServers" : {
439+ "github-project-manager" : {
440+ "command" : " cmd" ,
441+ "args" : [
442+ " /c" ,
443+ " npx" ,
444+ " -y" ,
445+ " mcp-github-project-manager"
446+ ]
447+ }
448+ }
449+ }
450+ ```
451+
452+ 3 . ** Permission Issues**
453+
454+ If you encounter permission issues, make sure your GitHub token has the required permissions listed in the Configuration section.
455+
182456## Architecture
183457
184458The server follows Clean Architecture principles with distinct layers:
0 commit comments