Skip to content

Built for people who want to own their automations. Join the waitlist for an invite.

Package listing

@kody/canva-mcp

src/smoke-test.ts

45 lines · 774 B · TypeScript
import {
	CANVA_MCP_NAME,
	CANVA_MCP_URL,
	canvaMcpSetupMessage,
	callCanvaMcp,
	isCanvaMcpConnected,
} from './mcp.ts'

export default async function smokeTest() {
	if (!isCanvaMcpConnected()) {
		return {
			ok: true,
			live: false,
			via: null,
			setup: {
				preferred: 'mcp',
				mcp: {
					name: CANVA_MCP_NAME,
					url: CANVA_MCP_URL,
					connected: false,
					setup: canvaMcpSetupMessage(),
				},
				oauthApiFallback: 'https://kody.codes/@kody/canva',
			},
		}
	}

	const probe = await callCanvaMcp([
  "list_designs",
  "listDesigns",
  "list_folders"
])
	return {
		ok: true,
		live: true,
		via: 'mcp',
		tool: probe?.tool ?? null,
		mcp: {
			name: CANVA_MCP_NAME,
			url: CANVA_MCP_URL,
			connected: true,
			setup: canvaMcpSetupMessage(),
		},
	}
}