projectpulse-mcp 1.0.0 → 1.0.2

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
@@ -13,6 +13,10 @@ This Model Context Protocol (MCP) server allows AI assistants to analyze the hea
13
13
  - **Code Scanning**: Retrieves CodeQL and other code scanning alerts.
14
14
  - **Ping**: Simple connectivity test tool.
15
15
 
16
+ ### Example Output
17
+
18
+ ![Code Scanning Example](https://raw.githubusercontent.com/alexbypa/projectpulse-mcp/main/docs/images/code-scanning-example.png)
19
+
16
20
  ## Quick Start
17
21
 
18
22
  ### Installation
@@ -59,14 +63,31 @@ To use this with Claude Desktop, add the following configuration to your `claude
59
63
 
60
64
  ### GITHUB_TOKEN setup
61
65
 
62
- To use the GitHub API without severe rate limits and to access private repositories or security alerts, you must provide a GitHub Personal Access Token (PAT).
66
+ To use the GitHub API without severe rate limits and to access protected data (like security alerts), you must provide a GitHub Personal Access Token (PAT).
67
+
68
+ **Option A: Fine-grained Personal Access Token (Recommended)**
69
+ 1. Go to **Settings** > **Developer settings** > **Personal access tokens** > **Fine-grained tokens**.
70
+ 2. Click **Generate new token**.
71
+ 3. Under **Repository access**, select the repositories you want to analyze.
72
+ 4. Under **Repository permissions**, grant **Read-only** access to:
73
+ - `Code scanning alerts`
74
+ - `Dependabot alerts`
75
+ - `Metadata` (mandatory default)
76
+
77
+ **Option B: Classic Token**
78
+ Generate a classic token with at least the `repo` and `security_events` scopes.
63
79
 
64
- 1. Go to your GitHub account settings: **Settings** > **Developer settings** > **Personal access tokens** > **Tokens (classic)**.
65
- 2. Click **Generate new token (classic)**.
66
- 3. Grant it at least the following scopes:
67
- - `repo` (Full control of private repositories)
68
- - `security_events` (Read and write security events)
69
- 4. Copy the token and set it as an environment variable named `GITHUB_TOKEN` in your MCP client configuration (e.g., Claude Desktop config).
80
+ #### Providing the token to the MCP server
81
+
82
+ **For Claude Desktop:**
83
+ Set the `GITHUB_TOKEN` environment variable in your `claude_desktop_config.json` as shown in the Quick Start section.
84
+
85
+ **For Claude Code (CLI) or Local Testing:**
86
+ Create a `.env` file in the root of this project (or your working directory) with the following content:
87
+ ```env
88
+ GITHUB_TOKEN=ghp_your_token_here
89
+ ```
90
+ The MCP server automatically loads environment variables from `.env` files on startup.
70
91
 
71
92
  ## License
72
93
 
@@ -1 +1 @@
1
- {"version":3,"file":"get-health-score.d.ts","sourceRoot":"","sources":["../../src/tools/get-health-score.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,wBAAsB,qBAAqB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;;;;;GAuC3F;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAS9D"}
1
+ {"version":3,"file":"get-health-score.d.ts","sourceRoot":"","sources":["../../src/tools/get-health-score.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,wBAAsB,qBAAqB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;;;;;GAyC3F;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAS9D"}
@@ -15,9 +15,11 @@ export async function executeGetHealthScore({ owner, repo }) {
15
15
  try {
16
16
  const { data: alerts } = await octokit.dependabot.listAlertsForRepo({ owner, repo });
17
17
  for (const alert of alerts) {
18
- const sev = alert.security_advisory.severity;
19
- if (sev in alertCounts)
20
- alertCounts[sev]++;
18
+ if (alert.state === "open") {
19
+ const sev = alert.security_advisory.severity;
20
+ if (sev in alertCounts)
21
+ alertCounts[sev]++;
22
+ }
21
23
  }
22
24
  }
23
25
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"get-health-score.js","sourceRoot":"","sources":["../../src/tools/get-health-score.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACH,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,GACvB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IACzB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACrD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACtD,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAmC;IACxF,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClC,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;KACzE,CAAC,CAAC;IAEH,IAAI,WAAW,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;IAC9D,IAAI,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACrF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,KAAK,CAAC,iBAAiB,CAAC,QAAoC,CAAC;YACzE,IAAI,GAAG,IAAI,WAAW;gBAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,mDAAmD;IACvD,CAAC;IAED,MAAM,UAAU,GAAG;QACf,EAAE,EAAE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAoB,CAAC;QACxD,SAAS,EAAE,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACvF,QAAQ,EAAE,sBAAsB,CAAC,WAAW,CAAC;QAC7C,SAAS,EAAE,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;QAC9F,WAAW,EAAE,yBAAyB,CAClC,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,IAAI,EAC9B,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,EAClC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CACzB;KACJ,CAAC;IAEF,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;IAEpE,OAAO;QACH,OAAO,EAAE,CAAC;gBACN,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;aACxC,CAAC;KACL,CAAC;AACN,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACpD,MAAM,CAAC,YAAY,CACf,kBAAkB,EAClB;QACI,WAAW,EAAE,0HAA0H;QACvI,WAAW;KACd,EACD,qBAAqB,CACxB,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"get-health-score.js","sourceRoot":"","sources":["../../src/tools/get-health-score.ts"],"names":[],"mappings":"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"}
@@ -24,8 +24,8 @@ describe('executeGetHealthScore', () => {
24
24
  });
25
25
  const mockListAlerts = vi.fn().mockResolvedValue({
26
26
  data: [
27
- { security_advisory: { severity: 'critical' } },
28
- { security_advisory: { severity: 'high' } }
27
+ { security_advisory: { severity: 'critical' }, state: 'open' },
28
+ { security_advisory: { severity: 'high' }, state: 'open' }
29
29
  ]
30
30
  });
31
31
  vi.mocked(getOctokit).mockReturnValue({
@@ -1 +1 @@
1
- {"version":3,"file":"get-health-score.test.js","sourceRoot":"","sources":["../../src/tools/get-health-score.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-health-score.test.js","sourceRoot":"","sources":["../../src/tools/get-health-score.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "projectpulse-mcp",
3
- "description": "MCP Server for GitHub repository health monitoring",
4
- "version": "1.0.0",
3
+ "description": "MCP Server for GitHub repository health monitoring.",
4
+ "version": "1.0.2",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
7
7
  "test": "vitest run",
@@ -18,6 +18,13 @@
18
18
  ],
19
19
  "author": "Alessandro Chiodo",
20
20
  "license": "MIT",
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "https://github.com/alexbypa/projectpulse-mcp.git"
24
+ },
25
+ "bugs": {
26
+ "url": "https://github.com/alexbypa/projectpulse-mcp/issues"
27
+ },
21
28
  "type": "module",
22
29
  "dependencies": {
23
30
  "@modelcontextprotocol/sdk": "^1.30.0",
@@ -38,4 +45,4 @@
38
45
  "dist",
39
46
  "bin"
40
47
  ]
41
- }
48
+ }