import { SENTRY_MCP_NAME, SENTRY_MCP_URL, sentryMcpSetupMessage, callSentryMcp, isSentryMcpConnected, } from './mcp.ts' /** * Probe whether the sentry MCP server is connected; return setup guidance when not. * @returns Structured helper result for agents. * @example * import smokeTest from 'kody:@kody/sentry-mcp/smoke-test' * const result = await smokeTest() * // => { ... } */ export default async function smokeTest() { if (!isSentryMcpConnected()) { return { ok: true, live: false, via: null, setup: { preferred: 'mcp', mcp: { name: SENTRY_MCP_NAME, url: SENTRY_MCP_URL, connected: false, setup: sentryMcpSetupMessage(), }, oauthApiFallback: 'https://kody.codes/@kody/sentry', }, } } const probe = await callSentryMcp([ "list_organizations", "listOrganizations", "whoami" ]) return { ok: true, live: true, via: 'mcp', tool: probe?.tool ?? null, mcp: { name: SENTRY_MCP_NAME, url: SENTRY_MCP_URL, connected: true, setup: sentryMcpSetupMessage(), }, } }