import { NOTION_MCP_NAME, NOTION_MCP_URL, notionMcpSetupMessage, callNotionMcp, isNotionMcpConnected, } from './mcp.ts' /** * Probe whether the notion MCP server is connected; return setup guidance when not. * @returns Structured helper result for agents. * @example * import smokeTest from 'kody:@kody/notion-mcp/smoke-test' * const result = await smokeTest() * // => { ... } */ export default async function smokeTest() { if (!isNotionMcpConnected()) { return { ok: true, live: false, via: null, setup: { preferred: 'mcp', mcp: { name: NOTION_MCP_NAME, url: NOTION_MCP_URL, connected: false, setup: notionMcpSetupMessage(), }, oauthApiFallback: 'https://kody.codes/@kody/notion', }, } } const probe = await callNotionMcp([ "search", "API-get-user", "get-self" ]) return { ok: true, live: true, via: 'mcp', tool: probe?.tool ?? null, mcp: { name: NOTION_MCP_NAME, url: NOTION_MCP_URL, connected: true, setup: notionMcpSetupMessage(), }, } }