From 4cfb9b5008115f377bab71aa3abefea7810596e9 Mon Sep 17 00:00:00 2001 From: David Blass Date: Mon, 13 Oct 2025 13:28:35 -0400 Subject: [PATCH] Revert "try adding more debug logging" This reverts commit 06542e382a7e9ff8b91f12b85b0438b2b10c7646. --- mcp/server.ts | 210 +++++++++++++++++--------------------------------- package.json | 8 +- 2 files changed, 76 insertions(+), 142 deletions(-) diff --git a/mcp/server.ts b/mcp/server.ts index 9b91870..692aaf3 100644 --- a/mcp/server.ts +++ b/mcp/server.ts @@ -6,38 +6,11 @@ import { Octokit } from "@octokit/rest"; import { type } from "arktype"; import { z } from "zod"; import { resolveRepoContext } from "../utils/repo-context.ts"; -import { writeFileSync } from "node:fs"; -// Simple error logging to file -function logError(message: string, error?: any) { - const timestamp = new Date().toISOString(); - const errorText = error - ? `\nError: ${error.message}\nStack: ${error.stack}` - : ""; - const logEntry = `[${timestamp}] ${message}${errorText}\n`; - - try { - writeFileSync("/tmp/mcp-error.log", logEntry, { flag: "a" }); - console.error(logEntry); - } catch (writeError) { - console.error(`Failed to write error log: ${writeError}`); - console.error(logEntry); - } -} - -let server: McpServer; - -try { - logError("Creating MCP server..."); - server = new McpServer({ - name: "Minimal GitHub Issue Comment Server", - version: "0.0.1", - }); - logError("MCP server created successfully"); -} catch (error) { - logError("Failed to create MCP server", error); - process.exit(1); -} +const server = new McpServer({ + name: "Minimal GitHub Issue Comment Server", + version: "0.0.1", +}); // Define the schema for creating issue comments const Comment = type({ @@ -45,117 +18,78 @@ const Comment = type({ body: type.string.describe("the comment body content"), }); -try { - logError("Registering create_issue_comment tool..."); +server.tool( + "create_issue_comment", + "Create a comment on a GitHub issue", + { + issueNumber: z.number().describe("the issue number to comment on"), + body: z.string().describe("the comment body content"), + }, + async ({ issueNumber, body }) => { + try { + Comment.assert({ issueNumber, body }); - server.tool( - "create_issue_comment", - "Create a comment on a GitHub issue", - { - issueNumber: z.number().describe("the issue number to comment on"), - body: z.string().describe("the comment body content"), - }, - async ({ issueNumber, body }) => { - try { - Comment.assert({ issueNumber, body }); - - const githubInstallationToken = process.env.GITHUB_INSTALLATION_TOKEN; - if (!githubInstallationToken) { - throw new Error( - "GITHUB_INSTALLATION_TOKEN environment variable is required" - ); - } - - // Resolve repository context from environment - const repoContext = resolveRepoContext(); - - const octokit = new Octokit({ - auth: githubInstallationToken, - }); - - const result = await octokit.rest.issues.createComment({ - owner: repoContext.owner, - repo: repoContext.name, - issue_number: issueNumber, - body: body, - }); - - return { - content: [ - { - type: "text", - text: JSON.stringify( - { - success: true, - commentId: result.data.id, - url: result.data.html_url, - body: result.data.body, - }, - null, - 2 - ), - }, - ], - }; - } catch (error) { - const errorMessage = - error instanceof Error ? error.message : String(error); - logError("Tool execution failed", error); - return { - content: [ - { - type: "text", - text: `Error creating comment: ${errorMessage}`, - }, - ], - error: errorMessage, - isError: true, - }; + const githubInstallationToken = process.env.GITHUB_INSTALLATION_TOKEN; + if (!githubInstallationToken) { + throw new Error( + "GITHUB_INSTALLATION_TOKEN environment variable is required" + ); } - } - ); - logError("Tool registered successfully"); -} catch (error) { - logError("Failed to register tool", error); - process.exit(1); -} + // Resolve repository context from environment + const repoContext = resolveRepoContext(); + + const octokit = new Octokit({ + auth: githubInstallationToken, + }); + + const result = await octokit.rest.issues.createComment({ + owner: repoContext.owner, + repo: repoContext.name, + issue_number: issueNumber, + body: body, + }); + + return { + content: [ + { + type: "text", + text: JSON.stringify( + { + success: true, + commentId: result.data.id, + url: result.data.html_url, + body: result.data.body, + }, + null, + 2 + ), + }, + ], + }; + } catch (error) { + const errorMessage = + error instanceof Error ? error.message : String(error); + return { + content: [ + { + type: "text", + text: `Error creating comment: ${errorMessage}`, + }, + ], + error: errorMessage, + isError: true, + }; + } + } +); async function runServer() { - try { - logError("Starting MCP server..."); - - const transport = new StdioServerTransport(); - logError("Transport created, attempting connection..."); - - await server.connect(transport); - logError("MCP server connected successfully"); - - process.on("exit", () => { - logError("Process exiting, closing server..."); - server.close(); - }); - - process.on("SIGTERM", () => { - logError("SIGTERM received, closing server..."); - server.close(); - process.exit(0); - }); - - process.on("SIGINT", () => { - logError("SIGINT received, closing server..."); - server.close(); - process.exit(0); - }); - } catch (error) { - logError("Server startup failed", error); - process.exit(1); - } + const transport = new StdioServerTransport(); + await server.connect(transport); + process.on("exit", () => { + server.close(); + }); } -logError("Initializing MCP server process..."); - -runServer().catch((error) => { - logError("Unhandled server error", error); - process.exit(1); -}); +runServer().catch(console.error); diff --git a/package.json b/package.json index cacd90b..33c5ae3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@pullfrog/action", - "version": "0.0.23", + "version": "0.0.22", "type": "module", "files": [ "index.js", @@ -34,8 +34,7 @@ "arktype": "^2.1.22", "dotenv": "^17.2.2", "execa": "^9.6.0", - "table": "^6.9.0", - "zod": "^3.24.4" + "table": "^6.9.0" }, "devDependencies": { "@types/node": "^20.10.0", @@ -43,7 +42,8 @@ "esbuild": "^0.25.9", "husky": "^9.0.0", "typescript": "^5.3.0", - "zshy": "^0.4.1" + "zshy": "^0.4.1", + "zod": "^3.24.4" }, "repository": { "type": "git",