@feedmob/github-issues 0.0.6 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,86 +1,135 @@
1
1
  # FeedMob GitHub Issues MCP Server
2
2
 
3
- A GitHub Issues MCP server customized for the FeedMob team
3
+ A GitHub Issues MCP server customized for the FeedMob team.
4
+
5
+ ## Prerequisites
6
+ - Node.js 18+
7
+ - npm 9+
8
+
9
+ ## Installation
10
+ Run inside `src/github-issues/`:
11
+
12
+ ```bash
13
+ npm install
14
+ npm run build
15
+ ```
16
+
17
+ ## MCP Server Configuration Guide
18
+
19
+ ### Environment Variables
20
+
21
+ - `GITHUB_PERSONAL_ACCESS_TOKEN`:
22
+ - Recommended for all GitHub operations.
23
+ - Required for private repositories and write actions (`create_issue`, `update_issue`, `add_issue_comment`).
24
+ - `GITHUB_DEFAULT_OWNER`:
25
+ - Optional default owner for issue create/update flows.
26
+ - Can be omitted if you always pass `owner` explicitly in tool input.
27
+ - `AI_API_URL`:
28
+ - Required by FeedMob API-backed features:
29
+ - `search_issues`
30
+ - `get_issues`
31
+ - `sync_latest_issues`
32
+ - resource `issues/search_schema`
33
+ - `AI_API_TOKEN`:
34
+ - Bearer token for the FeedMob API above.
35
+
36
+ ### Example MCP Client Config (stdio)
37
+
38
+ Use the built artifact (`dist/index.js`) after `npm run build`:
39
+
40
+ ```json
41
+ {
42
+ "mcpServers": {
43
+ "feedmob-github-issues": {
44
+ "command": "npx",
45
+ "args": [
46
+ "-y",
47
+ "@feedmob/github-issues"
48
+ ],
49
+ "env": {
50
+ "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxx",
51
+ "GITHUB_DEFAULT_OWNER": "feedmob",
52
+ "AI_API_URL": "https://your-feedmob-api.example.com",
53
+ "AI_API_TOKEN": "your-feedmob-api-token"
54
+ }
55
+ }
56
+ }
57
+ }
58
+ ```
59
+
60
+ ### Local Development Run (without build)
61
+
62
+ From repo root:
63
+
64
+ ```bash
65
+ npx tsx src/github-issues/index.ts
66
+ ```
67
+
68
+ Or from `src/github-issues`:
69
+
70
+ ```bash
71
+ npx tsx index.ts
72
+ ```
4
73
 
5
74
  ## Tools
6
75
 
7
76
  ### `search_issues`
8
- - Search GitHub Issues through FeedMob API
77
+ - Search GitHub issues through FeedMob API.
9
78
  - Input parameters:
10
- - `scheam` (string, required): Get from system resource `issues/search_schema`
11
- - `start_date` (string): Issue creation start date, defaults to 6 days ago
12
- - `end_date` (string): Issue creation end date, defaults to today
13
- - `status` (optional string): Issue status, e.g., 'open', 'closed'
79
+ - `scheam` (string, required): Get from resource `issues/search_schema`.
80
+ - `start_date` (string): Issue creation start date.
81
+ - `end_date` (string): Issue creation end date.
82
+ - `status` (optional string): For example `open`, `closed`.
14
83
  - `repo` (optional string)
15
- - `users` (optional string[]): List of users
16
- - `team` (optional string): Team name, e.g., 'Star', 'Mighty'
17
- - Returns: Search results
84
+ - `users` (optional string[]): User list.
85
+ - `team` (optional string): For example `Star`, `Mighty`.
86
+ - `title` (optional string): Fuzzy title match.
87
+ - `labels` (optional string[]): Labels filter.
88
+ - `score_status` (optional string)
89
+ - `fields` (string[], required): Response fields to return.
18
90
 
19
91
  ### `create_issue`
20
- - Create a new Issue in a GitHub repository
92
+ - Create a new issue in a GitHub repository.
21
93
  - Input parameters:
22
- - `owner` (optional string): Repository owner, can use environment variable default
23
- - `repo` (string, required): Repository name
24
- - `title` (string, required): Issue title
25
- - `body` (optional string): Issue description
26
- - `assignees` (optional string[]): Usernames to assign to
27
- - `labels` (optional string[]): Labels to add
28
- - `milestone` (optional number): Milestone number
29
- - Returns: Created Issue details
94
+ - `owner` (optional string): Repository owner. Falls back to `GITHUB_DEFAULT_OWNER`.
95
+ - `repo` (string, required): Repository name.
96
+ - `title` (string, required): Issue title.
97
+ - `body` (optional string): Issue description.
98
+ - `assignees` (optional string[]): Usernames to assign.
99
+ - `labels` (optional string[]): Labels to add.
100
+ - `milestone` (optional number): Milestone number.
30
101
 
31
102
  ### `update_issue`
32
- - Update an existing Issue
103
+ - Update an existing issue in a GitHub repository.
33
104
  - Input parameters:
34
- - `owner` (string, required): Repository owner
35
- - `repo` (string, required): Repository name
36
- - `issue_number` (number, required): Issue number to update
37
- - `title` (optional string): New title
38
- - `body` (optional string): New description
39
- - `state` (optional string): New state ('open' or 'closed')
40
- - `labels` (optional string[]): New labels
41
- - `assignees` (optional string[]): New assignees
42
- - `milestone` (optional number): New milestone number
43
- - Returns: Updated Issue details
44
-
45
- ### `get_issue`
46
- - Get details of a specific Issue in a repository
105
+ - `owner` (string, required): Repository owner.
106
+ - `repo` (string, required): Repository name.
107
+ - `issue_number` (number, required): Issue number to update.
108
+ - `title` (optional string): New title.
109
+ - `body` (optional string): New description.
110
+ - `state` (optional string): `open` or `closed`.
111
+ - `labels` (optional string[]): New labels.
112
+ - `assignees` (optional string[]): New assignees.
113
+ - `milestone` (optional number): New milestone number.
114
+
115
+ ### `get_issues`
116
+ - Fetch comments for multiple issues in bulk through FeedMob API.
47
117
  - Input parameters:
48
- - `owner` (string, required): Repository owner
49
- - `repo` (string, required):
50
- - `issue_number` (number, required): Issue number to retrieve
51
- - Returns: GitHub Issue object and details
118
+ - `repo_issues` (array, required): Each item includes `repo` and `issue_number`.
119
+ - `comment_count` (string, optional): `all` or a specific count.
52
120
 
53
121
  ### `add_issue_comment`
54
- - Add a comment to an existing Issue
122
+ - Add a comment to an existing issue.
55
123
  - Input parameters:
56
- - `owner` (string, required): Repository owner
57
- - `repo` (string, required):
58
- - `issue_number` (number, required): Issue number
59
- - `body` (string, required): Comment content
60
- - Returns: Created comment details
124
+ - `owner` (string, required): Repository owner.
125
+ - `repo` (string, required): Repository name.
126
+ - `issue_number` (number, required): Issue number.
127
+ - `body` (string, required): Comment content.
61
128
 
62
129
  ### `sync_latest_issues`
63
- - Sync GitHub Issues Latest Data By FeedMob API
130
+ - Sync latest issues data from FeedMob API.
64
131
 
65
132
  ## Resources
66
133
 
67
134
  ### `issues/search_schema`
68
- - Provides schema definition for Issues search
69
-
70
- ### Local Development
71
- For local development, you can run the server using the following commands:
72
-
73
- ```bash
74
- # Install dependencies
75
- npm install
76
-
77
- # Build project
78
- npm run build
79
-
80
- # Run server
81
- npx tsx src/github-issues/index.ts
82
- ```
83
-
84
- ## License
85
-
86
- This MCP server is licensed under the MIT License. This means you can freely use, modify, and distribute this software, but must comply with the terms and conditions of the MIT License. For more details, please refer to the LICENSE file in the project repository.
135
+ - Provides the schema definition for `search_issues`.
@@ -1,3 +1,3 @@
1
1
  // If the format of this file changes, so it doesn't simply export a VERSION constant,
2
2
  // this will break .github/workflows/version-check.yml.
3
- export const VERSION = "0.0.6";
3
+ export const VERSION = "0.0.8";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@feedmob/github-issues",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "description": "MCP server for using the GitHub API",
5
5
  "license": "MIT",
6
6
  "author": "FeedMob",
@@ -19,11 +19,10 @@
19
19
  "watch": "tsc --watch"
20
20
  },
21
21
  "dependencies": {
22
- "date-fns": "^4.1.0",
23
- "fastmcp": "2.1.0",
24
- "@modelcontextprotocol/sdk": "1.0.1",
25
22
  "@types/node": "^22",
26
23
  "@types/node-fetch": "^2.6.12",
24
+ "date-fns": "^4.1.0",
25
+ "fastmcp": "2.1.0",
27
26
  "node-fetch": "^3.3.2",
28
27
  "universal-user-agent": "^7.0.2",
29
28
  "zod": "^3.22.4",