restricted-github-mcp 1.1.8 → 1.1.10
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 +25 -3
- package/dist/index.js +140 -29
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/public/index.html +8 -3
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ Un serveur MCP (Model Context Protocol) spécialisé pour automatiser le workflo
|
|
|
4
4
|
|
|
5
5
|
## 🚀 Fonctionnalités Automatisées
|
|
6
6
|
|
|
7
|
-
Contrairement aux serveurs GitHub classiques, celui-ci
|
|
7
|
+
Contrairement aux serveurs GitHub classiques, celui-ci propose des outils hautement automatisés et une interface de configuration simplifiée :
|
|
8
8
|
|
|
9
9
|
- **`push`** :
|
|
10
10
|
1. Exécute `git add .` (ajoute tous les fichiers modifiés et nouveaux).
|
|
@@ -15,13 +15,35 @@ Contrairement aux serveurs GitHub classiques, celui-ci ne propose que deux outil
|
|
|
15
15
|
1. Crée une Pull Request sur GitHub.
|
|
16
16
|
2. Utilise automatiquement la branche de destination (`TARGET_BRANCH`) et la branche de base (`BASE_BRANCH`) configurées.
|
|
17
17
|
- **`get_info`** :
|
|
18
|
-
1. Renvoie la configuration actuelle (dépôt, branches, chemin local).
|
|
18
|
+
1. Renvoie la configuration actuelle (dépôt, branches, chemin local, répertoire de travail).
|
|
19
19
|
2. Utile pour vérifier que l'agent est sur le bon contexte sans exposer de secrets.
|
|
20
20
|
- **`clone`** :
|
|
21
21
|
1. Clone le dépôt défini dans `TARGET_REPO` dans le dossier défini par `REPO_PATH`.
|
|
22
22
|
2. Crée et bascule sur la branche définie par `TARGET_BRANCH`.
|
|
23
23
|
3. Utilise le token GitHub configuré pour l'authentification.
|
|
24
|
-
|
|
24
|
+
- **`get_logs`** :
|
|
25
|
+
1. Récupère les dernières lignes du fichier de log du serveur.
|
|
26
|
+
*Argument optionnel : `lines` (nombre de lignes à récupérer, défaut 50).*
|
|
27
|
+
|
|
28
|
+
## 🖥️ Interface de Configuration (GUI)
|
|
29
|
+
|
|
30
|
+
Le serveur lance automatiquement une interface graphique sur le port **3000** au démarrage. Cette interface permet de :
|
|
31
|
+
- Visualiser la configuration actuelle.
|
|
32
|
+
- Modifier dynamiquement le token GitHub, le dépôt cible, les branches et le chemin local.
|
|
33
|
+
- Sauvegarder les modifications dans un fichier `.env` local.
|
|
34
|
+
- Consulter les erreurs de configuration en temps réel.
|
|
35
|
+
|
|
36
|
+
Accès : [http://localhost:3000](http://localhost:3000)
|
|
37
|
+
|
|
38
|
+
## 📝 Journalisation (Logs)
|
|
39
|
+
|
|
40
|
+
Pour garantir la stabilité et faciliter le débogage, le serveur enregistre ses activités et ses erreurs dans un fichier de log persistant.
|
|
41
|
+
|
|
42
|
+
- **Emplacement (Windows)** : `C:\var\log\restricted-github-mcp\server.log`
|
|
43
|
+
- **Emplacement (Linux/macOS)** : `/var/log/restricted-github-mcp/server.log`
|
|
44
|
+
- **Contenu** : Horodatage, dossier de travail au démarrage, exécution des outils, succès et erreurs détaillées.
|
|
45
|
+
|
|
46
|
+
Le serveur vérifie et crée automatiquement le dossier de log s'il n'existe pas. Les erreurs critiques sont également redirigées vers `stderr` pour être visibles dans les consoles des clients MCP.
|
|
25
47
|
|
|
26
48
|
## 🛠️ Installation & Utilisation via npx
|
|
27
49
|
|
package/dist/index.js
CHANGED
|
@@ -16,6 +16,36 @@ const __dirname = path.dirname(__filename);
|
|
|
16
16
|
// We redirect all console.log to console.error to avoid polluting stdout.
|
|
17
17
|
console.log = console.error;
|
|
18
18
|
dotenv.config();
|
|
19
|
+
/**
|
|
20
|
+
* Log a message to a file at the root of the disk.
|
|
21
|
+
* @param message The message to log
|
|
22
|
+
*/
|
|
23
|
+
function logToFile(message) {
|
|
24
|
+
const logDir = process.platform === 'win32'
|
|
25
|
+
? 'C:\\var\\log\\restricted-github-mcp'
|
|
26
|
+
: '/var/log/restricted-github-mcp';
|
|
27
|
+
const logFile = path.join(logDir, 'server.log');
|
|
28
|
+
const now = new Date().toLocaleString('fr-FR', {
|
|
29
|
+
year: 'numeric',
|
|
30
|
+
month: '2-digit',
|
|
31
|
+
day: '2-digit',
|
|
32
|
+
hour: '2-digit',
|
|
33
|
+
minute: '2-digit',
|
|
34
|
+
second: '2-digit',
|
|
35
|
+
});
|
|
36
|
+
const logEntry = `[${now}] ${message}\n`;
|
|
37
|
+
try {
|
|
38
|
+
if (!fs.existsSync(logDir)) {
|
|
39
|
+
fs.mkdirSync(logDir, { recursive: true });
|
|
40
|
+
}
|
|
41
|
+
fs.appendFileSync(logFile, logEntry);
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
console.error("Critical: Failed to write to log file:", error);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
logToFile(`--- Server starting ---`);
|
|
48
|
+
logToFile(`Working directory: ${process.cwd()}`);
|
|
19
49
|
const GITHUB_TOKEN = process.env.GITHUB_TOKEN;
|
|
20
50
|
const TARGET_BRANCH = process.env.TARGET_BRANCH;
|
|
21
51
|
const BASE_BRANCH = process.env.BASE_BRANCH || "main";
|
|
@@ -23,10 +53,16 @@ const TARGET_REPO = process.env.TARGET_REPO;
|
|
|
23
53
|
const REPO_PATH = process.env.REPO_PATH || process.cwd();
|
|
24
54
|
const READ_ONLY = process.env.READ_ONLY === "true";
|
|
25
55
|
// On déplace le lancement de la GUI ici pour qu'il soit prioritaire
|
|
26
|
-
startConfigServer().catch(err =>
|
|
56
|
+
startConfigServer().catch(err => {
|
|
57
|
+
const msg = `Failed to start config server: ${err.message}`;
|
|
58
|
+
console.error(msg);
|
|
59
|
+
logToFile(msg);
|
|
60
|
+
});
|
|
27
61
|
// On ne bloque plus le démarrage si le token est manquant
|
|
28
62
|
if (!GITHUB_TOKEN) {
|
|
29
|
-
|
|
63
|
+
const msg = "⚠️ GITHUB_TOKEN manquant. Le serveur MCP est en attente de configuration via http://localhost:3000";
|
|
64
|
+
console.error(msg);
|
|
65
|
+
logToFile(msg);
|
|
30
66
|
}
|
|
31
67
|
const octokit = GITHUB_TOKEN ? new Octokit({ auth: GITHUB_TOKEN }) : null;
|
|
32
68
|
const server = new Server({
|
|
@@ -78,16 +114,24 @@ const TOOLS = [
|
|
|
78
114
|
properties: {},
|
|
79
115
|
},
|
|
80
116
|
},
|
|
117
|
+
{
|
|
118
|
+
name: "get_logs",
|
|
119
|
+
description: "Retrieve the last N lines from the server log file",
|
|
120
|
+
inputSchema: {
|
|
121
|
+
type: "object",
|
|
122
|
+
properties: {
|
|
123
|
+
lines: { type: "number", description: "Number of lines to retrieve (default: 50)", default: 50 },
|
|
124
|
+
},
|
|
125
|
+
},
|
|
126
|
+
},
|
|
81
127
|
];
|
|
82
128
|
server.setRequestHandler(ListToolsRequestSchema, async () => ({
|
|
83
129
|
tools: TOOLS,
|
|
84
130
|
}));
|
|
85
131
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
86
132
|
const { name, arguments: args } = request.params;
|
|
87
|
-
if (!GITHUB_TOKEN && name !== "get_info") {
|
|
88
|
-
throw new Error("GITHUB_TOKEN est manquant. Veuillez configurer le MCP via http://localhost:3000 et redémarrer.");
|
|
89
|
-
}
|
|
90
133
|
try {
|
|
134
|
+
logToFile(`Executing tool: ${name}`);
|
|
91
135
|
switch (name) {
|
|
92
136
|
case "push": {
|
|
93
137
|
if (READ_ONLY)
|
|
@@ -116,21 +160,26 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
116
160
|
throw e;
|
|
117
161
|
}
|
|
118
162
|
// 3. Push to target branch
|
|
119
|
-
// If TARGET_REPO is defined (e.g. "user/repo"), we push to that remote
|
|
120
|
-
// Otherwise we push to 'origin'
|
|
121
163
|
const remote = TARGET_REPO && GITHUB_TOKEN
|
|
122
164
|
? `https://x-access-token:${GITHUB_TOKEN}@github.com/${TARGET_REPO}.git`
|
|
123
165
|
: "origin";
|
|
124
166
|
execSync(`git push ${remote} HEAD:${TARGET_BRANCH}`, execOptions);
|
|
167
|
+
const successMsg = `Successfully committed and pushed all changes to branch ${TARGET_BRANCH} from ${finalRepoPath}`;
|
|
168
|
+
logToFile(successMsg);
|
|
125
169
|
return {
|
|
126
|
-
content: [{ type: "text", text:
|
|
170
|
+
content: [{ type: "text", text: successMsg }],
|
|
127
171
|
};
|
|
128
172
|
}
|
|
129
173
|
catch (error) {
|
|
130
|
-
|
|
174
|
+
const msg = `Git operation failed at ${finalRepoPath}: ${error.message}`;
|
|
175
|
+
logToFile(msg);
|
|
176
|
+
throw new Error(msg);
|
|
131
177
|
}
|
|
132
178
|
}
|
|
133
179
|
case "pull_request": {
|
|
180
|
+
if (!GITHUB_TOKEN) {
|
|
181
|
+
throw new Error("GITHUB_TOKEN est manquant. Veuillez le configurer via l'interface graphique.");
|
|
182
|
+
}
|
|
134
183
|
if (READ_ONLY)
|
|
135
184
|
throw new Error("Server is in read-only mode");
|
|
136
185
|
const { title, body } = args;
|
|
@@ -155,12 +204,16 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
155
204
|
head: TARGET_BRANCH,
|
|
156
205
|
base: BASE_BRANCH,
|
|
157
206
|
});
|
|
207
|
+
const successMsg = `Pull request created successfully: ${response.data.html_url}`;
|
|
208
|
+
logToFile(successMsg);
|
|
158
209
|
return {
|
|
159
|
-
content: [{ type: "text", text:
|
|
210
|
+
content: [{ type: "text", text: successMsg }],
|
|
160
211
|
};
|
|
161
212
|
}
|
|
162
213
|
catch (error) {
|
|
163
|
-
|
|
214
|
+
const msg = `Failed to create pull request: ${error.message}`;
|
|
215
|
+
logToFile(msg);
|
|
216
|
+
throw new Error(msg);
|
|
164
217
|
}
|
|
165
218
|
}
|
|
166
219
|
case "get_info": {
|
|
@@ -181,7 +234,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
181
234
|
}
|
|
182
235
|
case "clone": {
|
|
183
236
|
if (!GITHUB_TOKEN) {
|
|
184
|
-
throw new Error("GITHUB_TOKEN
|
|
237
|
+
throw new Error("GITHUB_TOKEN est manquant. Le clonage nécessite une authentification.");
|
|
185
238
|
}
|
|
186
239
|
if (!TARGET_REPO) {
|
|
187
240
|
throw new Error("TARGET_REPO environment variable is not defined");
|
|
@@ -195,12 +248,41 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
195
248
|
execSync(`git clone ${remote} "${REPO_PATH}"`);
|
|
196
249
|
// 2. Create and checkout the target branch
|
|
197
250
|
execSync(`git checkout -b ${TARGET_BRANCH}`, { cwd: REPO_PATH });
|
|
251
|
+
const successMsg = `Successfully cloned ${TARGET_REPO} into ${REPO_PATH} and switched to new branch ${TARGET_BRANCH}`;
|
|
252
|
+
logToFile(successMsg);
|
|
198
253
|
return {
|
|
199
|
-
content: [{ type: "text", text:
|
|
254
|
+
content: [{ type: "text", text: successMsg }],
|
|
200
255
|
};
|
|
201
256
|
}
|
|
202
257
|
catch (error) {
|
|
203
|
-
|
|
258
|
+
const msg = `Clone or branch creation failed: ${error.message}`;
|
|
259
|
+
logToFile(msg);
|
|
260
|
+
throw new Error(msg);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
case "get_logs": {
|
|
264
|
+
const { lines = 50 } = args;
|
|
265
|
+
const logDir = process.platform === 'win32'
|
|
266
|
+
? 'C:\\var\\log\\restricted-github-mcp'
|
|
267
|
+
: '/var/log/restricted-github-mcp';
|
|
268
|
+
const logFile = path.join(logDir, 'server.log');
|
|
269
|
+
if (!fs.existsSync(logFile)) {
|
|
270
|
+
return {
|
|
271
|
+
content: [{ type: "text", text: "Log file does not exist yet." }],
|
|
272
|
+
};
|
|
273
|
+
}
|
|
274
|
+
try {
|
|
275
|
+
const content = fs.readFileSync(logFile, 'utf8');
|
|
276
|
+
const allLines = content.split('\n');
|
|
277
|
+
const lastLines = allLines.slice(-Math.abs(lines)).join('\n');
|
|
278
|
+
return {
|
|
279
|
+
content: [{ type: "text", text: `Last ${lines} lines of logs:\n\n${lastLines}` }],
|
|
280
|
+
};
|
|
281
|
+
}
|
|
282
|
+
catch (error) {
|
|
283
|
+
const msg = `Failed to read logs: ${error.message}`;
|
|
284
|
+
logToFile(msg);
|
|
285
|
+
throw new Error(msg);
|
|
204
286
|
}
|
|
205
287
|
}
|
|
206
288
|
default:
|
|
@@ -208,6 +290,8 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
208
290
|
}
|
|
209
291
|
}
|
|
210
292
|
catch (error) {
|
|
293
|
+
const msg = `Error in tool ${name}: ${error.message}`;
|
|
294
|
+
logToFile(msg);
|
|
211
295
|
return {
|
|
212
296
|
content: [{ type: "text", text: `Error: ${error.message}` }],
|
|
213
297
|
isError: true,
|
|
@@ -222,14 +306,21 @@ async function startConfigServer() {
|
|
|
222
306
|
const publicPath = path.join(__dirname, "..", "public");
|
|
223
307
|
app.use(express.static(publicPath));
|
|
224
308
|
app.get("/api/config", (req, res) => {
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
309
|
+
try {
|
|
310
|
+
res.json({
|
|
311
|
+
GITHUB_TOKEN: process.env.GITHUB_TOKEN,
|
|
312
|
+
TARGET_REPO: process.env.TARGET_REPO,
|
|
313
|
+
TARGET_BRANCH: process.env.TARGET_BRANCH,
|
|
314
|
+
BASE_BRANCH: process.env.BASE_BRANCH || "main",
|
|
315
|
+
REPO_PATH: process.env.REPO_PATH || process.cwd(),
|
|
316
|
+
READ_ONLY: process.env.READ_ONLY === "true",
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
catch (error) {
|
|
320
|
+
const msg = `Failed to get configuration: ${error.message}`;
|
|
321
|
+
logToFile(msg);
|
|
322
|
+
res.status(500).json({ error: msg });
|
|
323
|
+
}
|
|
233
324
|
});
|
|
234
325
|
app.post("/api/config", (req, res) => {
|
|
235
326
|
const newConfig = req.body;
|
|
@@ -241,24 +332,44 @@ async function startConfigServer() {
|
|
|
241
332
|
fs.writeFileSync(path.join(process.cwd(), ".env"), envContent);
|
|
242
333
|
// Update current process env as well
|
|
243
334
|
Object.assign(process.env, newConfig);
|
|
335
|
+
logToFile("Configuration updated via GUI");
|
|
244
336
|
res.sendStatus(200);
|
|
245
337
|
}
|
|
246
338
|
catch (error) {
|
|
247
|
-
|
|
248
|
-
|
|
339
|
+
const msg = `Failed to save .env: ${error.message}`;
|
|
340
|
+
console.error(msg);
|
|
341
|
+
logToFile(msg);
|
|
342
|
+
res.status(500).json({ error: msg });
|
|
249
343
|
}
|
|
250
344
|
});
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
345
|
+
try {
|
|
346
|
+
app.listen(port, () => {
|
|
347
|
+
const msg = `Config GUI available at http://localhost:${port}`;
|
|
348
|
+
console.error(msg);
|
|
349
|
+
logToFile(msg);
|
|
350
|
+
}).on('error', (err) => {
|
|
351
|
+
const msg = `Express server error on port ${port}: ${err.message}`;
|
|
352
|
+
console.error(msg);
|
|
353
|
+
logToFile(msg);
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
catch (error) {
|
|
357
|
+
const msg = `Failed to start Express listener: ${error.message}`;
|
|
358
|
+
console.error(msg);
|
|
359
|
+
logToFile(msg);
|
|
360
|
+
}
|
|
254
361
|
}
|
|
255
362
|
async function main() {
|
|
256
363
|
const transport = new StdioServerTransport();
|
|
257
364
|
await server.connect(transport);
|
|
258
|
-
|
|
365
|
+
const msg = `GitHub MCP Server running on stdio (CWD: ${process.cwd()})`;
|
|
366
|
+
console.error(msg);
|
|
367
|
+
logToFile(msg);
|
|
259
368
|
}
|
|
260
369
|
main().catch((error) => {
|
|
261
|
-
|
|
370
|
+
const msg = `Fatal error in main(): ${error.message}`;
|
|
371
|
+
console.error(msg);
|
|
372
|
+
logToFile(msg);
|
|
262
373
|
process.exit(1);
|
|
263
374
|
});
|
|
264
375
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/public/index.html
CHANGED
|
@@ -62,6 +62,10 @@
|
|
|
62
62
|
async function fetchConfig() {
|
|
63
63
|
try {
|
|
64
64
|
const response = await fetch('/api/config');
|
|
65
|
+
if (!response.ok) {
|
|
66
|
+
const data = await response.json().catch(() => ({ error: 'Erreur lors du chargement' }));
|
|
67
|
+
throw new Error(data.error || 'Erreur lors du chargement');
|
|
68
|
+
}
|
|
65
69
|
const config = await response.json();
|
|
66
70
|
|
|
67
71
|
inputsContainer.innerHTML = fields.map(field => {
|
|
@@ -81,7 +85,7 @@
|
|
|
81
85
|
`;
|
|
82
86
|
}).join('');
|
|
83
87
|
} catch (error) {
|
|
84
|
-
showStatus('Erreur lors du chargement de la configuration', 'error');
|
|
88
|
+
showStatus(error.message || 'Erreur lors du chargement de la configuration', 'error');
|
|
85
89
|
}
|
|
86
90
|
}
|
|
87
91
|
|
|
@@ -110,10 +114,11 @@
|
|
|
110
114
|
if (response.ok) {
|
|
111
115
|
showStatus('Configuration enregistrée avec succès !', 'success');
|
|
112
116
|
} else {
|
|
113
|
-
|
|
117
|
+
const data = await response.json().catch(() => ({ error: 'Erreur inconnue' }));
|
|
118
|
+
throw new Error(data.error || 'Erreur lors de l\'enregistrement');
|
|
114
119
|
}
|
|
115
120
|
} catch (error) {
|
|
116
|
-
showStatus(
|
|
121
|
+
showStatus(error.message, 'error');
|
|
117
122
|
}
|
|
118
123
|
};
|
|
119
124
|
|