@civic/hub-bridge
Version:
Stdio <-> HTTP/SSE MCP bridge with Civic auth handling
51 lines • 1.64 kB
JavaScript
import { AbstractHook } from "@civic/hook-common";
/**
* InitializeLogHook logs the initialize response to see server capabilities
*/
export class InitializeLogHook extends AbstractHook {
constructor() {
super();
}
get name() {
return "InitializeLogHook";
}
/**
* Process initialize requests - just pass through
*/
async processInitializeRequest(request,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
_requestExtra) {
// Continue to next hook
return {
resultType: "continue",
request,
};
}
/**
* Process initialize result and log the server capabilities
*/
async processInitializeResult(result,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
_originalRequest,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
_originalRequestExtra) {
const timestamp = new Date().toISOString();
// Format the log message with server info and capabilities
const logMessage = {
timestamp,
type: 'initialize_response',
serverInfo: result.serverInfo,
capabilities: result.capabilities,
instructions: result.instructions,
meta: result.meta,
};
// Log as formatted JSON
console.error(`[InitializeLogHook] Server Capabilities: ${JSON.stringify(logMessage, null, 2)}`);
// Continue to next hook
return {
resultType: "continue",
response: result,
};
}
}
//# sourceMappingURL=initialize-log-hook.js.map