@kody/canva-mcp
src/list-designs.ts
23 lines · 520 B · TypeScriptimport { canvaMcpSetupMessage, callCanvaMcp, firstArray } from './mcp.ts'
type Input = { query?: string; limit?: number }
export default async function listDesigns(input: Input = {}) {
const mcp = await callCanvaMcp(
[
"list_designs",
"listDesigns",
"search",
"get_designs"
],
{ query: input.query?.trim() || undefined, limit: input.limit ?? 10 },
)
if (!mcp) {
throw new Error(canvaMcpSetupMessage())
}
return {
via: 'mcp',
tool: mcp.tool,
designs: firstArray(mcp.result) ?? mcp.result,
}
}