[{"data":1,"prerenderedAt":2289},["ShallowReactive",2],{"navigation_docs":3,"-prompts-patterns-advanced":287,"-prompts-patterns-advanced-surround":2284},[4,40,70,99,122,156,189,258],{"title":5,"path":6,"stem":7,"children":8,"page":39},"Getting Started","\u002Fgetting-started","1.getting-started",[9,14,19,24,29,34],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-book-open",{"title":15,"path":16,"stem":17,"icon":18},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Configuration","\u002Fgetting-started\u002Fconfiguration","1.getting-started\u002F3.configuration","i-lucide-settings",{"title":25,"path":26,"stem":27,"icon":28},"Inspector","\u002Fgetting-started\u002Finspector","1.getting-started\u002F4.inspector","i-lucide-circuit-board",{"title":30,"path":31,"stem":32,"icon":33},"Connection","\u002Fgetting-started\u002Fconnection","1.getting-started\u002F5.connection","i-lucide-plug",{"title":35,"path":36,"stem":37,"icon":38},"Agent Skills","\u002Fgetting-started\u002Fagent-skills","1.getting-started\u002F6.agent-skills","i-lucide-sparkles",false,{"title":41,"path":42,"stem":43,"children":44,"page":39},"Tools","\u002Ftools","2.tools",[45,50,55,60,65],{"title":46,"path":47,"stem":48,"icon":49},"Overview","\u002Ftools\u002Foverview","2.tools\u002F0.overview","i-lucide-wrench",{"title":51,"path":52,"stem":53,"icon":54},"Schema, handler & returns","\u002Ftools\u002Fschema-handler","2.tools\u002F1.schema-handler","i-lucide-braces",{"title":56,"path":57,"stem":58,"icon":59},"Annotations & input examples","\u002Ftools\u002Fannotations","2.tools\u002F2.annotations","i-lucide-badge-info",{"title":61,"path":62,"stem":63,"icon":64},"Errors & caching","\u002Ftools\u002Ferrors-caching","2.tools\u002F3.errors-caching","i-lucide-shield",{"title":66,"path":67,"stem":68,"icon":69},"Groups, files & dynamic registration","\u002Ftools\u002Fgroups-organization","2.tools\u002F4.groups-organization","i-lucide-tags",{"title":71,"path":72,"stem":73,"children":74,"page":39},"Resources","\u002Fresources","3.resources",[75,79,84,89,94],{"title":46,"path":76,"stem":77,"icon":78},"\u002Fresources\u002Foverview","3.resources\u002F0.overview","i-lucide-package",{"title":80,"path":81,"stem":82,"icon":83},"Static resources & structure","\u002Fresources\u002Fstatic-and-structure","3.resources\u002F1.static-and-structure","i-lucide-file-stack",{"title":85,"path":86,"stem":87,"icon":88},"Templates & handlers","\u002Fresources\u002Ftemplates-and-handlers","3.resources\u002F2.templates-and-handlers","i-lucide-git-branch",{"title":90,"path":91,"stem":92,"icon":93},"Metadata, content & errors","\u002Fresources\u002Fcontent-metadata-errors","3.resources\u002F3.content-metadata-errors","i-lucide-layers",{"title":95,"path":96,"stem":97,"icon":98},"Groups & organization","\u002Fresources\u002Forganization","3.resources\u002F4.organization","i-lucide-folder-tree",{"title":100,"path":101,"stem":102,"children":103,"page":39},"Prompts","\u002Fprompts","4.prompts",[104,108,113,117],{"title":46,"path":105,"stem":106,"icon":107},"\u002Fprompts\u002Foverview","4.prompts\u002F0.overview","i-lucide-message-square",{"title":109,"path":110,"stem":111,"icon":112},"Authoring & structure","\u002Fprompts\u002Fauthoring","4.prompts\u002F1.authoring","i-lucide-pen-line",{"title":114,"path":115,"stem":116,"icon":93},"Input, handler & messages","\u002Fprompts\u002Finput-handler-messages","4.prompts\u002F2.input-handler-messages",{"title":118,"path":119,"stem":120,"icon":121},"Patterns & advanced","\u002Fprompts\u002Fpatterns-advanced","4.prompts\u002F3.patterns-advanced","i-lucide-line-chart",{"title":123,"path":124,"stem":125,"children":126,"page":39},"Handlers","\u002Fhandlers","5.handlers",[127,131,136,141,146,151],{"title":46,"path":128,"stem":129,"icon":130},"\u002Fhandlers\u002Foverview","5.handlers\u002F0.overview","i-lucide-server",{"title":132,"path":133,"stem":134,"icon":135},"Default & custom handlers","\u002Fhandlers\u002Fdefault-and-custom","5.handlers\u002F1.default-and-custom","i-lucide-toggle-left",{"title":137,"path":138,"stem":139,"icon":140},"Structure & options","\u002Fhandlers\u002Fstructure-and-options","5.handlers\u002F2.structure-and-options","i-lucide-sliders-horizontal",{"title":142,"path":143,"stem":144,"icon":145},"Examples & routing","\u002Fhandlers\u002Fexamples-routing","5.handlers\u002F3.examples-routing","i-lucide-route",{"title":147,"path":148,"stem":149,"icon":150},"Sharing & practices","\u002Fhandlers\u002Fsharing-practices","5.handlers\u002F4.sharing-practices","i-lucide-share-2",{"title":152,"path":153,"stem":154,"icon":155},"Multi-handler organization","\u002Fhandlers\u002Forganization","5.handlers\u002F5.organization","i-lucide-network",{"title":157,"path":158,"stem":159,"children":160,"page":39},"Apps","\u002Fapps","6.apps",[161,165,170,175,179,184],{"title":46,"path":162,"stem":163,"icon":164},"\u002Fapps\u002Foverview","6.apps\u002F0.overview","i-lucide-app-window",{"title":166,"path":167,"stem":168,"icon":169},"Authoring & defineMcpApp","\u002Fapps\u002Fauthoring","6.apps\u002F1.authoring","i-lucide-code-2",{"title":171,"path":172,"stem":173,"icon":174},"useMcpApp() bridge","\u002Fapps\u002Fuse-mcp-app","6.apps\u002F2.use-mcp-app","i-lucide-message-circle",{"title":176,"path":177,"stem":178,"icon":64},"CSP & build pipeline","\u002Fapps\u002Fcsp-and-wiring","6.apps\u002F3.csp-and-wiring",{"title":180,"path":181,"stem":182,"icon":183},"Testing & publishing","\u002Fapps\u002Ftesting-publishing","6.apps\u002F4.testing-publishing","i-lucide-rocket",{"title":185,"path":186,"stem":187,"icon":188},"Patterns & limits","\u002Fapps\u002Fpatterns-reference","6.apps\u002F5.patterns-reference","i-lucide-book-marked",{"title":190,"path":191,"stem":192,"children":193,"page":39},"Advanced Topics","\u002Fadvanced","7.advanced",[194,199,204,209,214,219,223,228,233,238,243,248,253],{"title":195,"path":196,"stem":197,"icon":198},"Custom Paths","\u002Fadvanced\u002Fcustom-paths","7.advanced\u002F1.custom-paths","i-lucide-folder",{"title":200,"path":201,"stem":202,"icon":203},"Logging","\u002Fadvanced\u002Flogging","7.advanced\u002F10.logging","i-lucide-scroll-text",{"title":205,"path":206,"stem":207,"icon":208},"MCP Apps Internals","\u002Fadvanced\u002Fmcp-apps-internals","7.advanced\u002F11.mcp-apps-internals","i-lucide-cog",{"title":210,"path":211,"stem":212,"icon":213},"Listing Definitions","\u002Fadvanced\u002Flisting-definitions","7.advanced\u002F12.listing-definitions","i-lucide-list",{"title":215,"path":216,"stem":217,"icon":218},"llms.txt discovery","\u002Fadvanced\u002Fllms-txt","7.advanced\u002F13.llms-txt","i-lucide-file-text",{"title":220,"path":221,"stem":222,"icon":64},"Middleware","\u002Fadvanced\u002Fmiddleware","7.advanced\u002F2.middleware",{"title":224,"path":225,"stem":226,"icon":227},"TypeScript","\u002Fadvanced\u002Ftypescript","7.advanced\u002F3.typescript","i-lucide-type",{"title":229,"path":230,"stem":231,"icon":232},"Hooks","\u002Fadvanced\u002Fhooks","7.advanced\u002F4.hooks","i-lucide-webhook",{"title":234,"path":235,"stem":236,"icon":237},"MCP Evals","\u002Fadvanced\u002Fevals","7.advanced\u002F5.evals","i-lucide-flask-conical",{"title":239,"path":240,"stem":241,"icon":242},"Sessions","\u002Fadvanced\u002Fsessions","7.advanced\u002F6.sessions","i-lucide-database",{"title":244,"path":245,"stem":246,"icon":247},"Dynamic Definitions","\u002Fadvanced\u002Fdynamic-definitions","7.advanced\u002F7.dynamic-definitions","i-lucide-toggle-right",{"title":249,"path":250,"stem":251,"icon":252},"Code Mode","\u002Fadvanced\u002Fcode-mode","7.advanced\u002F8.code-mode","i-lucide-code",{"title":254,"path":255,"stem":256,"icon":257},"Elicitation","\u002Fadvanced\u002Felicitation","7.advanced\u002F9.elicitation","i-lucide-message-square-quote",{"title":259,"path":260,"stem":261,"children":262,"page":39},"Examples","\u002Fexamples","8.examples",[263,268,273,278,283],{"title":264,"path":265,"stem":266,"icon":267},"Authentication","\u002Fexamples\u002Fauthentication","8.examples\u002F1.authentication","i-lucide-shield-check",{"title":269,"path":270,"stem":271,"icon":272},"API Integration","\u002Fexamples\u002Fapi-integration","8.examples\u002F2.api-integration","i-lucide-globe",{"title":274,"path":275,"stem":276,"icon":277},"Common Patterns","\u002Fexamples\u002Fcommon-patterns","8.examples\u002F3.common-patterns","i-lucide-lightbulb",{"title":279,"path":280,"stem":281,"icon":282},"File Operations","\u002Fexamples\u002Ffile-operations","8.examples\u002F4.file-operations","i-lucide-file",{"title":284,"path":285,"stem":286,"icon":107},"Prompt Examples","\u002Fexamples\u002Fprompt-examples","8.examples\u002F5.prompt-examples",{"id":288,"title":118,"body":289,"description":2275,"extension":2276,"links":2277,"meta":2278,"navigation":2279,"path":119,"seo":2280,"stem":120,"__hash__":2283},"docs\u002F4.prompts\u002F3.patterns-advanced.md",{"type":290,"value":291,"toc":2254},"minimark",[292,297,301,306,309,493,497,500,719,723,726,991,995,998,1192,1196,1212,1316,1326,1348,1352,1359,1367,1372,1376,1379,1431,1435,1439,1442,1525,1529,1536,1698,1702,1705,1839,1843,1846,1880,1884,1891,2018,2022,2025,2082,2086,2093,2210,2217,2221,2250],[293,294,296],"h2",{"id":295},"use-cases","Use Cases",[298,299,300],"p",{},"Prompts are particularly useful for:",[302,303,305],"h3",{"id":304},"_1-setup-and-onboarding","1. Setup and Onboarding",[298,307,308],{},"Help new developers or AI assistants understand how to work with your codebase:",[310,311,317],"pre",{"className":312,"code":313,"filename":314,"language":315,"meta":316,"style":316},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  description: 'Provide complete setup instructions for this project',\n  handler: async () => `You are setting up this Nuxt project. Here's what you need to know:\n\n1. Install dependencies: \\`pnpm install\\`\n2. Start dev server: \\`pnpm dev\\`\n3. Project structure follows Nuxt conventions\n4. MCP tools are available in server\u002Fmcp\u002F\n\nAsk me what you'd like to build!`,\n})\n","server\u002Fmcp\u002Fprompts\u002Fsetup-guide.ts","typescript","",[318,319,320,353,360,378,399,423,428,443,456,462,468,473,484],"code",{"__ignoreMap":316},[321,322,325,329,333,337,340,343,346,350],"span",{"class":323,"line":324},"line",1,[321,326,328],{"class":327},"s7zQu","import",[321,330,332],{"class":331},"sMK4o"," {",[321,334,336],{"class":335},"sTEyZ"," defineMcpPrompt",[321,338,339],{"class":331}," }",[321,341,342],{"class":327}," from",[321,344,345],{"class":331}," '",[321,347,349],{"class":348},"sfazB","@nuxtjs\u002Fmcp-toolkit\u002Fserver",[321,351,352],{"class":331},"'\n",[321,354,356],{"class":323,"line":355},2,[321,357,359],{"emptyLinePlaceholder":358},true,"\n",[321,361,363,366,369,372,375],{"class":323,"line":362},3,[321,364,365],{"class":327},"export",[321,367,368],{"class":327}," default",[321,370,336],{"class":371},"s2Zo4",[321,373,374],{"class":335},"(",[321,376,377],{"class":331},"{\n",[321,379,381,385,388,390,393,396],{"class":323,"line":380},4,[321,382,384],{"class":383},"swJcz","  description",[321,386,387],{"class":331},":",[321,389,345],{"class":331},[321,391,392],{"class":348},"Provide complete setup instructions for this project",[321,394,395],{"class":331},"'",[321,397,398],{"class":331},",\n",[321,400,402,405,407,411,414,417,420],{"class":323,"line":401},5,[321,403,404],{"class":371},"  handler",[321,406,387],{"class":331},[321,408,410],{"class":409},"spNyl"," async",[321,412,413],{"class":331}," ()",[321,415,416],{"class":409}," =>",[321,418,419],{"class":331}," `",[321,421,422],{"class":348},"You are setting up this Nuxt project. Here's what you need to know:\n",[321,424,426],{"class":323,"line":425},6,[321,427,359],{"emptyLinePlaceholder":358},[321,429,431,434,437,440],{"class":323,"line":430},7,[321,432,433],{"class":348},"1. Install dependencies: ",[321,435,436],{"class":335},"\\`",[321,438,439],{"class":348},"pnpm install",[321,441,442],{"class":335},"\\`\n",[321,444,446,449,451,454],{"class":323,"line":445},8,[321,447,448],{"class":348},"2. Start dev server: ",[321,450,436],{"class":335},[321,452,453],{"class":348},"pnpm dev",[321,455,442],{"class":335},[321,457,459],{"class":323,"line":458},9,[321,460,461],{"class":348},"3. Project structure follows Nuxt conventions\n",[321,463,465],{"class":323,"line":464},10,[321,466,467],{"class":348},"4. MCP tools are available in server\u002Fmcp\u002F\n",[321,469,471],{"class":323,"line":470},11,[321,472,359],{"emptyLinePlaceholder":358},[321,474,476,479,482],{"class":323,"line":475},12,[321,477,478],{"class":348},"Ask me what you'd like to build!",[321,480,481],{"class":331},"`",[321,483,398],{"class":331},[321,485,487,490],{"class":323,"line":486},13,[321,488,489],{"class":331},"}",[321,491,492],{"class":335},")\n",[302,494,496],{"id":495},"_2-code-review-standards","2. Code Review Standards",[298,498,499],{},"Ensure consistent code review criteria:",[310,501,504],{"className":312,"code":502,"filename":503,"language":315,"meta":316,"style":316},"import { z } from 'zod'\nimport { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  description: 'Apply team code review standards',\n  inputSchema: {\n    focus: z.enum(['security', 'performance', 'maintainability', 'all']).default('all'),\n  },\n  handler: async ({ focus }) => `You are a code reviewer following our team standards. Focus on: ${focus}.\n\nReview the code I provide, checking for best practices and potential issues.`,\n})\n","server\u002Fmcp\u002Fprompts\u002Freview-standards.ts",[318,505,506,526,544,548,560,575,585,659,664,700,704,713],{"__ignoreMap":316},[321,507,508,510,512,515,517,519,521,524],{"class":323,"line":324},[321,509,328],{"class":327},[321,511,332],{"class":331},[321,513,514],{"class":335}," z",[321,516,339],{"class":331},[321,518,342],{"class":327},[321,520,345],{"class":331},[321,522,523],{"class":348},"zod",[321,525,352],{"class":331},[321,527,528,530,532,534,536,538,540,542],{"class":323,"line":355},[321,529,328],{"class":327},[321,531,332],{"class":331},[321,533,336],{"class":335},[321,535,339],{"class":331},[321,537,342],{"class":327},[321,539,345],{"class":331},[321,541,349],{"class":348},[321,543,352],{"class":331},[321,545,546],{"class":323,"line":362},[321,547,359],{"emptyLinePlaceholder":358},[321,549,550,552,554,556,558],{"class":323,"line":380},[321,551,365],{"class":327},[321,553,368],{"class":327},[321,555,336],{"class":371},[321,557,374],{"class":335},[321,559,377],{"class":331},[321,561,562,564,566,568,571,573],{"class":323,"line":401},[321,563,384],{"class":383},[321,565,387],{"class":331},[321,567,345],{"class":331},[321,569,570],{"class":348},"Apply team code review standards",[321,572,395],{"class":331},[321,574,398],{"class":331},[321,576,577,580,582],{"class":323,"line":425},[321,578,579],{"class":383},"  inputSchema",[321,581,387],{"class":331},[321,583,584],{"class":331}," {\n",[321,586,587,590,592,594,597,600,603,605,608,610,613,615,618,620,622,624,627,629,631,633,636,638,641,643,646,648,650,652,654,657],{"class":323,"line":430},[321,588,589],{"class":383},"    focus",[321,591,387],{"class":331},[321,593,514],{"class":335},[321,595,596],{"class":331},".",[321,598,599],{"class":371},"enum",[321,601,602],{"class":335},"([",[321,604,395],{"class":331},[321,606,607],{"class":348},"security",[321,609,395],{"class":331},[321,611,612],{"class":331},",",[321,614,345],{"class":331},[321,616,617],{"class":348},"performance",[321,619,395],{"class":331},[321,621,612],{"class":331},[321,623,345],{"class":331},[321,625,626],{"class":348},"maintainability",[321,628,395],{"class":331},[321,630,612],{"class":331},[321,632,345],{"class":331},[321,634,635],{"class":348},"all",[321,637,395],{"class":331},[321,639,640],{"class":335},"])",[321,642,596],{"class":331},[321,644,645],{"class":371},"default",[321,647,374],{"class":335},[321,649,395],{"class":331},[321,651,635],{"class":348},[321,653,395],{"class":331},[321,655,656],{"class":335},")",[321,658,398],{"class":331},[321,660,661],{"class":323,"line":445},[321,662,663],{"class":331},"  },\n",[321,665,666,668,670,672,675,679,682,684,686,689,692,695,697],{"class":323,"line":458},[321,667,404],{"class":371},[321,669,387],{"class":331},[321,671,410],{"class":409},[321,673,674],{"class":331}," ({",[321,676,678],{"class":677},"sHdIc"," focus",[321,680,681],{"class":331}," })",[321,683,416],{"class":409},[321,685,419],{"class":331},[321,687,688],{"class":348},"You are a code reviewer following our team standards. Focus on: ",[321,690,691],{"class":331},"${",[321,693,694],{"class":335},"focus",[321,696,489],{"class":331},[321,698,699],{"class":348},".\n",[321,701,702],{"class":323,"line":464},[321,703,359],{"emptyLinePlaceholder":358},[321,705,706,709,711],{"class":323,"line":470},[321,707,708],{"class":348},"Review the code I provide, checking for best practices and potential issues.",[321,710,481],{"class":331},[321,712,398],{"class":331},[321,714,715,717],{"class":323,"line":475},[321,716,489],{"class":331},[321,718,492],{"class":335},[302,720,722],{"id":721},"_3-documentation-generation","3. Documentation Generation",[298,724,725],{},"Standardize documentation format:",[310,727,730],{"className":312,"code":728,"filename":729,"language":315,"meta":316,"style":316},"import { z } from 'zod'\nimport { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  description: 'Generate documentation in team format',\n  inputSchema: {\n    type: z.enum(['api', 'component', 'function']).describe('What to document'),\n  },\n  handler: async ({ type }) => {\n    const templates = {\n      api: 'Document this API endpoint with: endpoint, method, parameters, response format, and examples.',\n      component: 'Document this Vue component with: props, emits, slots, and usage examples.',\n      function: 'Document this function with: parameters, return value, and usage examples.',\n    }\n\n    return templates[type]\n  },\n})\n","server\u002Fmcp\u002Fprompts\u002Fgenerate-docs.ts",[318,731,732,750,768,772,784,799,807,867,871,890,903,919,935,951,957,962,979,984],{"__ignoreMap":316},[321,733,734,736,738,740,742,744,746,748],{"class":323,"line":324},[321,735,328],{"class":327},[321,737,332],{"class":331},[321,739,514],{"class":335},[321,741,339],{"class":331},[321,743,342],{"class":327},[321,745,345],{"class":331},[321,747,523],{"class":348},[321,749,352],{"class":331},[321,751,752,754,756,758,760,762,764,766],{"class":323,"line":355},[321,753,328],{"class":327},[321,755,332],{"class":331},[321,757,336],{"class":335},[321,759,339],{"class":331},[321,761,342],{"class":327},[321,763,345],{"class":331},[321,765,349],{"class":348},[321,767,352],{"class":331},[321,769,770],{"class":323,"line":362},[321,771,359],{"emptyLinePlaceholder":358},[321,773,774,776,778,780,782],{"class":323,"line":380},[321,775,365],{"class":327},[321,777,368],{"class":327},[321,779,336],{"class":371},[321,781,374],{"class":335},[321,783,377],{"class":331},[321,785,786,788,790,792,795,797],{"class":323,"line":401},[321,787,384],{"class":383},[321,789,387],{"class":331},[321,791,345],{"class":331},[321,793,794],{"class":348},"Generate documentation in team format",[321,796,395],{"class":331},[321,798,398],{"class":331},[321,800,801,803,805],{"class":323,"line":425},[321,802,579],{"class":383},[321,804,387],{"class":331},[321,806,584],{"class":331},[321,808,809,812,814,816,818,820,822,824,827,829,831,833,836,838,840,842,845,847,849,851,854,856,858,861,863,865],{"class":323,"line":430},[321,810,811],{"class":383},"    type",[321,813,387],{"class":331},[321,815,514],{"class":335},[321,817,596],{"class":331},[321,819,599],{"class":371},[321,821,602],{"class":335},[321,823,395],{"class":331},[321,825,826],{"class":348},"api",[321,828,395],{"class":331},[321,830,612],{"class":331},[321,832,345],{"class":331},[321,834,835],{"class":348},"component",[321,837,395],{"class":331},[321,839,612],{"class":331},[321,841,345],{"class":331},[321,843,844],{"class":348},"function",[321,846,395],{"class":331},[321,848,640],{"class":335},[321,850,596],{"class":331},[321,852,853],{"class":371},"describe",[321,855,374],{"class":335},[321,857,395],{"class":331},[321,859,860],{"class":348},"What to document",[321,862,395],{"class":331},[321,864,656],{"class":335},[321,866,398],{"class":331},[321,868,869],{"class":323,"line":445},[321,870,663],{"class":331},[321,872,873,875,877,879,881,884,886,888],{"class":323,"line":458},[321,874,404],{"class":371},[321,876,387],{"class":331},[321,878,410],{"class":409},[321,880,674],{"class":331},[321,882,883],{"class":677}," type",[321,885,681],{"class":331},[321,887,416],{"class":409},[321,889,584],{"class":331},[321,891,892,895,898,901],{"class":323,"line":464},[321,893,894],{"class":409},"    const",[321,896,897],{"class":335}," templates",[321,899,900],{"class":331}," =",[321,902,584],{"class":331},[321,904,905,908,910,912,915,917],{"class":323,"line":470},[321,906,907],{"class":383},"      api",[321,909,387],{"class":331},[321,911,345],{"class":331},[321,913,914],{"class":348},"Document this API endpoint with: endpoint, method, parameters, response format, and examples.",[321,916,395],{"class":331},[321,918,398],{"class":331},[321,920,921,924,926,928,931,933],{"class":323,"line":475},[321,922,923],{"class":383},"      component",[321,925,387],{"class":331},[321,927,345],{"class":331},[321,929,930],{"class":348},"Document this Vue component with: props, emits, slots, and usage examples.",[321,932,395],{"class":331},[321,934,398],{"class":331},[321,936,937,940,942,944,947,949],{"class":323,"line":486},[321,938,939],{"class":383},"      function",[321,941,387],{"class":331},[321,943,345],{"class":331},[321,945,946],{"class":348},"Document this function with: parameters, return value, and usage examples.",[321,948,395],{"class":331},[321,950,398],{"class":331},[321,952,954],{"class":323,"line":953},14,[321,955,956],{"class":331},"    }\n",[321,958,960],{"class":323,"line":959},15,[321,961,359],{"emptyLinePlaceholder":358},[321,963,965,968,970,973,976],{"class":323,"line":964},16,[321,966,967],{"class":327},"    return",[321,969,897],{"class":335},[321,971,972],{"class":383},"[",[321,974,975],{"class":335},"type",[321,977,978],{"class":383},"]\n",[321,980,982],{"class":323,"line":981},17,[321,983,663],{"class":331},[321,985,987,989],{"class":323,"line":986},18,[321,988,489],{"class":331},[321,990,492],{"class":335},[302,992,994],{"id":993},"_4-troubleshooting-workflows","4. Troubleshooting Workflows",[298,996,997],{},"Guide debugging for common issues:",[310,999,1002],{"className":312,"code":1000,"filename":1001,"language":315,"meta":316,"style":316},"import { z } from 'zod'\nimport { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  description: 'Help debug common issues',\n  inputSchema: {\n    area: z.enum(['api', 'auth', 'database', 'frontend']).describe('Area of the issue'),\n  },\n  handler: async ({ area }) => `You are debugging a ${area} issue. Ask clarifying questions and suggest diagnostic steps.`,\n})\n","server\u002Fmcp\u002Fprompts\u002Fdebug-helper.ts",[318,1003,1004,1022,1040,1044,1056,1071,1079,1146,1150,1186],{"__ignoreMap":316},[321,1005,1006,1008,1010,1012,1014,1016,1018,1020],{"class":323,"line":324},[321,1007,328],{"class":327},[321,1009,332],{"class":331},[321,1011,514],{"class":335},[321,1013,339],{"class":331},[321,1015,342],{"class":327},[321,1017,345],{"class":331},[321,1019,523],{"class":348},[321,1021,352],{"class":331},[321,1023,1024,1026,1028,1030,1032,1034,1036,1038],{"class":323,"line":355},[321,1025,328],{"class":327},[321,1027,332],{"class":331},[321,1029,336],{"class":335},[321,1031,339],{"class":331},[321,1033,342],{"class":327},[321,1035,345],{"class":331},[321,1037,349],{"class":348},[321,1039,352],{"class":331},[321,1041,1042],{"class":323,"line":362},[321,1043,359],{"emptyLinePlaceholder":358},[321,1045,1046,1048,1050,1052,1054],{"class":323,"line":380},[321,1047,365],{"class":327},[321,1049,368],{"class":327},[321,1051,336],{"class":371},[321,1053,374],{"class":335},[321,1055,377],{"class":331},[321,1057,1058,1060,1062,1064,1067,1069],{"class":323,"line":401},[321,1059,384],{"class":383},[321,1061,387],{"class":331},[321,1063,345],{"class":331},[321,1065,1066],{"class":348},"Help debug common issues",[321,1068,395],{"class":331},[321,1070,398],{"class":331},[321,1072,1073,1075,1077],{"class":323,"line":425},[321,1074,579],{"class":383},[321,1076,387],{"class":331},[321,1078,584],{"class":331},[321,1080,1081,1084,1086,1088,1090,1092,1094,1096,1098,1100,1102,1104,1107,1109,1111,1113,1116,1118,1120,1122,1125,1127,1129,1131,1133,1135,1137,1140,1142,1144],{"class":323,"line":430},[321,1082,1083],{"class":383},"    area",[321,1085,387],{"class":331},[321,1087,514],{"class":335},[321,1089,596],{"class":331},[321,1091,599],{"class":371},[321,1093,602],{"class":335},[321,1095,395],{"class":331},[321,1097,826],{"class":348},[321,1099,395],{"class":331},[321,1101,612],{"class":331},[321,1103,345],{"class":331},[321,1105,1106],{"class":348},"auth",[321,1108,395],{"class":331},[321,1110,612],{"class":331},[321,1112,345],{"class":331},[321,1114,1115],{"class":348},"database",[321,1117,395],{"class":331},[321,1119,612],{"class":331},[321,1121,345],{"class":331},[321,1123,1124],{"class":348},"frontend",[321,1126,395],{"class":331},[321,1128,640],{"class":335},[321,1130,596],{"class":331},[321,1132,853],{"class":371},[321,1134,374],{"class":335},[321,1136,395],{"class":331},[321,1138,1139],{"class":348},"Area of the issue",[321,1141,395],{"class":331},[321,1143,656],{"class":335},[321,1145,398],{"class":331},[321,1147,1148],{"class":323,"line":445},[321,1149,663],{"class":331},[321,1151,1152,1154,1156,1158,1160,1163,1165,1167,1169,1172,1174,1177,1179,1182,1184],{"class":323,"line":458},[321,1153,404],{"class":371},[321,1155,387],{"class":331},[321,1157,410],{"class":409},[321,1159,674],{"class":331},[321,1161,1162],{"class":677}," area",[321,1164,681],{"class":331},[321,1166,416],{"class":409},[321,1168,419],{"class":331},[321,1170,1171],{"class":348},"You are debugging a ",[321,1173,691],{"class":331},[321,1175,1176],{"class":335},"area",[321,1178,489],{"class":331},[321,1180,1181],{"class":348}," issue. Ask clarifying questions and suggest diagnostic steps.",[321,1183,481],{"class":331},[321,1185,398],{"class":331},[321,1187,1188,1190],{"class":323,"line":464},[321,1189,489],{"class":331},[321,1191,492],{"class":335},[293,1193,1195],{"id":1194},"groups-and-tags","Groups and Tags",[298,1197,1198,1199,1202,1203,1206,1207,596],{},"Organize your prompts with ",[318,1200,1201],{},"group"," and ",[318,1204,1205],{},"tags"," for categorization. These fields work the same way as for ",[1208,1209,1211],"a",{"href":1210},"\u002Ftools\u002Fgroups-organization#groups-and-tags","tools",[310,1213,1216],{"className":312,"code":1214,"filename":1215,"language":315,"meta":316,"style":316},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  tags: ['getting-started'],\n  description: 'Help new developers set up the project',\n  handler: async () => 'You are setting up this project...',\n})\n","server\u002Fmcp\u002Fprompts\u002Fonboarding\u002Fsetup-guide.ts",[318,1217,1218,1236,1240,1252,1274,1289,1310],{"__ignoreMap":316},[321,1219,1220,1222,1224,1226,1228,1230,1232,1234],{"class":323,"line":324},[321,1221,328],{"class":327},[321,1223,332],{"class":331},[321,1225,336],{"class":335},[321,1227,339],{"class":331},[321,1229,342],{"class":327},[321,1231,345],{"class":331},[321,1233,349],{"class":348},[321,1235,352],{"class":331},[321,1237,1238],{"class":323,"line":355},[321,1239,359],{"emptyLinePlaceholder":358},[321,1241,1242,1244,1246,1248,1250],{"class":323,"line":362},[321,1243,365],{"class":327},[321,1245,368],{"class":327},[321,1247,336],{"class":371},[321,1249,374],{"class":335},[321,1251,377],{"class":331},[321,1253,1254,1257,1259,1262,1264,1267,1269,1272],{"class":323,"line":380},[321,1255,1256],{"class":383},"  tags",[321,1258,387],{"class":331},[321,1260,1261],{"class":335}," [",[321,1263,395],{"class":331},[321,1265,1266],{"class":348},"getting-started",[321,1268,395],{"class":331},[321,1270,1271],{"class":335},"]",[321,1273,398],{"class":331},[321,1275,1276,1278,1280,1282,1285,1287],{"class":323,"line":401},[321,1277,384],{"class":383},[321,1279,387],{"class":331},[321,1281,345],{"class":331},[321,1283,1284],{"class":348},"Help new developers set up the project",[321,1286,395],{"class":331},[321,1288,398],{"class":331},[321,1290,1291,1293,1295,1297,1299,1301,1303,1306,1308],{"class":323,"line":425},[321,1292,404],{"class":371},[321,1294,387],{"class":331},[321,1296,410],{"class":409},[321,1298,413],{"class":331},[321,1300,416],{"class":409},[321,1302,345],{"class":331},[321,1304,1305],{"class":348},"You are setting up this project...",[321,1307,395],{"class":331},[321,1309,398],{"class":331},[321,1311,1312,1314],{"class":323,"line":430},[321,1313,489],{"class":331},[321,1315,492],{"class":335},[298,1317,1318,1319,1322,1323,596],{},"Placing the file in ",[318,1320,1321],{},"prompts\u002Fonboarding\u002F"," auto-infers ",[318,1324,1325],{},"group: 'onboarding'",[1327,1328,1331,1332,1202,1334,1336,1337,1340,1341,1347],"callout",{"color":1329,"icon":1330},"info","i-lucide-info","Prompt ",[318,1333,1201],{},[318,1335,1205],{}," are stored on the definition objects but are not yet included in ",[318,1338,1339],{},"prompts\u002Flist"," protocol responses. This will be supported when ",[1208,1342,1346],{"href":1343,"rel":1344},"https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fmodelcontextprotocol\u002Fissues\u002F1300",[1345],"nofollow","SEP-1300"," is adopted by the MCP SDK.",[293,1349,1351],{"id":1350},"file-organization","File Organization",[298,1353,1354,1355,1358],{},"Organize your prompts in the ",[318,1356,1357],{},"server\u002Fmcp\u002Fprompts\u002F"," directory. Both flat and nested layouts are supported:",[310,1360,1365],{"className":1361,"code":1363,"language":1364},[1362],"language-text","server\u002F\n└── mcp\u002F\n    └── prompts\u002F\n        ├── greeting.ts\n        ├── summarize.ts\n        ├── onboarding\u002F\n        │   └── setup-guide.ts\n        └── debugging\u002F\n            └── troubleshoot.ts\n","text",[318,1366,1363],{"__ignoreMap":316},[298,1368,1369,1370,596],{},"Each file should export a default prompt definition. Subdirectories automatically set the ",[318,1371,1201],{},[293,1373,1375],{"id":1374},"type-safety","Type Safety",[298,1377,1378],{},"The module provides full TypeScript type inference:",[310,1380,1382],{"className":312,"code":1381,"language":315,"meta":316,"style":316},"\u002F\u002F Argument types are inferred from inputSchema\nhandler: async ({ text, maxLength }) => {\n  \u002F\u002F text is typed as string\n  \u002F\u002F maxLength is typed as string | undefined\n}\n",[318,1383,1384,1390,1416,1421,1426],{"__ignoreMap":316},[321,1385,1386],{"class":323,"line":324},[321,1387,1389],{"class":1388},"sHwdD","\u002F\u002F Argument types are inferred from inputSchema\n",[321,1391,1392,1396,1398,1400,1402,1405,1407,1410,1412,1414],{"class":323,"line":355},[321,1393,1395],{"class":1394},"sBMFI","handler",[321,1397,387],{"class":331},[321,1399,410],{"class":409},[321,1401,674],{"class":331},[321,1403,1404],{"class":677}," text",[321,1406,612],{"class":331},[321,1408,1409],{"class":677}," maxLength",[321,1411,681],{"class":331},[321,1413,416],{"class":409},[321,1415,584],{"class":331},[321,1417,1418],{"class":323,"line":362},[321,1419,1420],{"class":1388},"  \u002F\u002F text is typed as string\n",[321,1422,1423],{"class":323,"line":380},[321,1424,1425],{"class":1388},"  \u002F\u002F maxLength is typed as string | undefined\n",[321,1427,1428],{"class":323,"line":401},[321,1429,1430],{"class":331},"}\n",[293,1432,1434],{"id":1433},"best-practices","Best Practices",[302,1436,1438],{"id":1437},"_1-design-for-ai-understanding","1. Design for AI Understanding",[298,1440,1441],{},"Write prompts that give the AI clear context and expectations:",[310,1443,1445],{"className":312,"code":1444,"language":315,"meta":316,"style":316},"\u002F\u002F Good: Clear context and instructions\nhandler: async ({ code }) =>\n  `You are a senior developer reviewing code for a Nuxt application.\n\nReview this code for Vue 3 best practices:\\n\\n${code}`\n\n\u002F\u002F Less effective: Vague instructions\nhandler: async ({ code }) => code\n",[318,1446,1447,1452,1470,1478,1482,1497,1501,1506],{"__ignoreMap":316},[321,1448,1449],{"class":323,"line":324},[321,1450,1451],{"class":1388},"\u002F\u002F Good: Clear context and instructions\n",[321,1453,1454,1456,1458,1460,1462,1465,1467],{"class":323,"line":355},[321,1455,1395],{"class":1394},[321,1457,387],{"class":331},[321,1459,410],{"class":409},[321,1461,674],{"class":331},[321,1463,1464],{"class":677}," code",[321,1466,681],{"class":331},[321,1468,1469],{"class":409}," =>\n",[321,1471,1472,1475],{"class":323,"line":362},[321,1473,1474],{"class":331},"  `",[321,1476,1477],{"class":348},"You are a senior developer reviewing code for a Nuxt application.\n",[321,1479,1480],{"class":323,"line":380},[321,1481,359],{"emptyLinePlaceholder":358},[321,1483,1484,1487,1490,1492,1494],{"class":323,"line":401},[321,1485,1486],{"class":348},"Review this code for Vue 3 best practices:",[321,1488,1489],{"class":335},"\\n\\n",[321,1491,691],{"class":331},[321,1493,318],{"class":335},[321,1495,1496],{"class":331},"}`\n",[321,1498,1499],{"class":323,"line":425},[321,1500,359],{"emptyLinePlaceholder":358},[321,1502,1503],{"class":323,"line":430},[321,1504,1505],{"class":1388},"\u002F\u002F Less effective: Vague instructions\n",[321,1507,1508,1510,1512,1514,1516,1518,1520,1522],{"class":323,"line":445},[321,1509,1395],{"class":1394},[321,1511,387],{"class":331},[321,1513,410],{"class":409},[321,1515,674],{"class":331},[321,1517,1464],{"class":677},[321,1519,681],{"class":331},[321,1521,416],{"class":409},[321,1523,1524],{"class":335}," code\n",[302,1526,1528],{"id":1527},"_2-use-descriptive-arguments","2. Use Descriptive Arguments",[298,1530,1531,1532,1535],{},"Always use ",[318,1533,1534],{},".describe()"," on Zod fields to help both users and AI understand what's expected:",[310,1537,1539],{"className":312,"code":1538,"language":315,"meta":316,"style":316},"inputSchema: {\n  \u002F\u002F Good: Clear descriptions\n  language: z.enum(['typescript', 'javascript']).describe('Programming language of the code'),\n  strict: z.boolean().default(true).describe('Whether to enforce strict TypeScript rules'),\n\n  \u002F\u002F Less helpful: No descriptions\n  lang: z.string(),\n  s: z.boolean(),\n}\n",[318,1540,1541,1550,1555,1604,1650,1654,1659,1677,1694],{"__ignoreMap":316},[321,1542,1543,1546,1548],{"class":323,"line":324},[321,1544,1545],{"class":1394},"inputSchema",[321,1547,387],{"class":331},[321,1549,584],{"class":331},[321,1551,1552],{"class":323,"line":355},[321,1553,1554],{"class":1388},"  \u002F\u002F Good: Clear descriptions\n",[321,1556,1557,1560,1562,1564,1566,1568,1570,1572,1574,1576,1578,1580,1583,1585,1587,1589,1591,1593,1595,1598,1600,1602],{"class":323,"line":362},[321,1558,1559],{"class":1394},"  language",[321,1561,387],{"class":331},[321,1563,514],{"class":335},[321,1565,596],{"class":331},[321,1567,599],{"class":371},[321,1569,602],{"class":383},[321,1571,395],{"class":331},[321,1573,315],{"class":348},[321,1575,395],{"class":331},[321,1577,612],{"class":331},[321,1579,345],{"class":331},[321,1581,1582],{"class":348},"javascript",[321,1584,395],{"class":331},[321,1586,640],{"class":383},[321,1588,596],{"class":331},[321,1590,853],{"class":371},[321,1592,374],{"class":383},[321,1594,395],{"class":331},[321,1596,1597],{"class":348},"Programming language of the code",[321,1599,395],{"class":331},[321,1601,656],{"class":383},[321,1603,398],{"class":331},[321,1605,1606,1609,1611,1613,1615,1618,1621,1623,1625,1627,1631,1633,1635,1637,1639,1641,1644,1646,1648],{"class":323,"line":380},[321,1607,1608],{"class":1394},"  strict",[321,1610,387],{"class":331},[321,1612,514],{"class":335},[321,1614,596],{"class":331},[321,1616,1617],{"class":371},"boolean",[321,1619,1620],{"class":383},"()",[321,1622,596],{"class":331},[321,1624,645],{"class":371},[321,1626,374],{"class":383},[321,1628,1630],{"class":1629},"sfNiH","true",[321,1632,656],{"class":383},[321,1634,596],{"class":331},[321,1636,853],{"class":371},[321,1638,374],{"class":383},[321,1640,395],{"class":331},[321,1642,1643],{"class":348},"Whether to enforce strict TypeScript rules",[321,1645,395],{"class":331},[321,1647,656],{"class":383},[321,1649,398],{"class":331},[321,1651,1652],{"class":323,"line":401},[321,1653,359],{"emptyLinePlaceholder":358},[321,1655,1656],{"class":323,"line":425},[321,1657,1658],{"class":1388},"  \u002F\u002F Less helpful: No descriptions\n",[321,1660,1661,1664,1666,1668,1670,1673,1675],{"class":323,"line":430},[321,1662,1663],{"class":1394},"  lang",[321,1665,387],{"class":331},[321,1667,514],{"class":335},[321,1669,596],{"class":331},[321,1671,1672],{"class":371},"string",[321,1674,1620],{"class":383},[321,1676,398],{"class":331},[321,1678,1679,1682,1684,1686,1688,1690,1692],{"class":323,"line":445},[321,1680,1681],{"class":1394},"  s",[321,1683,387],{"class":331},[321,1685,514],{"class":335},[321,1687,596],{"class":331},[321,1689,1617],{"class":371},[321,1691,1620],{"class":383},[321,1693,398],{"class":331},[321,1695,1696],{"class":323,"line":458},[321,1697,1430],{"class":331},[302,1699,1701],{"id":1700},"_3-use-conversation-flow","3. Use Conversation Flow",[298,1703,1704],{},"Use user and assistant messages to guide the AI:",[310,1706,1708],{"className":312,"code":1707,"language":315,"meta":316,"style":316},"\u002F\u002F Effective: User provides context, assistant acknowledges\nmessages: [\n  { role: 'user', content: { type: 'text', text: 'You are an expert in accessibility. Review this HTML for a11y issues.' } },\n  { role: 'assistant', content: { type: 'text', text: 'I\\'ll analyze the HTML for accessibility issues.' } },\n]\n",[318,1709,1710,1715,1725,1779,1835],{"__ignoreMap":316},[321,1711,1712],{"class":323,"line":324},[321,1713,1714],{"class":1388},"\u002F\u002F Effective: User provides context, assistant acknowledges\n",[321,1716,1717,1720,1722],{"class":323,"line":355},[321,1718,1719],{"class":1394},"messages",[321,1721,387],{"class":331},[321,1723,1724],{"class":335}," [\n",[321,1726,1727,1730,1733,1735,1737,1740,1742,1744,1747,1749,1751,1753,1755,1757,1759,1761,1763,1765,1767,1769,1772,1774,1776],{"class":323,"line":362},[321,1728,1729],{"class":331},"  {",[321,1731,1732],{"class":383}," role",[321,1734,387],{"class":331},[321,1736,345],{"class":331},[321,1738,1739],{"class":348},"user",[321,1741,395],{"class":331},[321,1743,612],{"class":331},[321,1745,1746],{"class":383}," content",[321,1748,387],{"class":331},[321,1750,332],{"class":331},[321,1752,883],{"class":383},[321,1754,387],{"class":331},[321,1756,345],{"class":331},[321,1758,1364],{"class":348},[321,1760,395],{"class":331},[321,1762,612],{"class":331},[321,1764,1404],{"class":383},[321,1766,387],{"class":331},[321,1768,345],{"class":331},[321,1770,1771],{"class":348},"You are an expert in accessibility. Review this HTML for a11y issues.",[321,1773,395],{"class":331},[321,1775,339],{"class":331},[321,1777,1778],{"class":331}," },\n",[321,1780,1781,1783,1785,1787,1789,1792,1794,1796,1798,1800,1802,1804,1806,1808,1810,1812,1814,1816,1818,1820,1823,1826,1829,1831,1833],{"class":323,"line":380},[321,1782,1729],{"class":331},[321,1784,1732],{"class":383},[321,1786,387],{"class":331},[321,1788,345],{"class":331},[321,1790,1791],{"class":348},"assistant",[321,1793,395],{"class":331},[321,1795,612],{"class":331},[321,1797,1746],{"class":383},[321,1799,387],{"class":331},[321,1801,332],{"class":331},[321,1803,883],{"class":383},[321,1805,387],{"class":331},[321,1807,345],{"class":331},[321,1809,1364],{"class":348},[321,1811,395],{"class":331},[321,1813,612],{"class":331},[321,1815,1404],{"class":383},[321,1817,387],{"class":331},[321,1819,345],{"class":331},[321,1821,1822],{"class":348},"I",[321,1824,1825],{"class":335},"\\'",[321,1827,1828],{"class":348},"ll analyze the HTML for accessibility issues.",[321,1830,395],{"class":331},[321,1832,339],{"class":331},[321,1834,1778],{"class":331},[321,1836,1837],{"class":323,"line":401},[321,1838,978],{"class":335},[302,1840,1842],{"id":1841},"_4-keep-prompts-focused","4. Keep Prompts Focused",[298,1844,1845],{},"Each prompt should have a single, clear purpose. Create multiple prompts instead of one complex one:",[310,1847,1849],{"className":312,"code":1848,"language":315,"meta":316,"style":316},"\u002F\u002F Good: Separate focused prompts\n\u002F\u002F server\u002Fmcp\u002Fprompts\u002Freview-security.ts\n\u002F\u002F server\u002Fmcp\u002Fprompts\u002Freview-performance.ts\n\u002F\u002F server\u002Fmcp\u002Fprompts\u002Freview-style.ts\n\n\u002F\u002F Less maintainable: One complex prompt trying to do everything\n",[318,1850,1851,1856,1861,1866,1871,1875],{"__ignoreMap":316},[321,1852,1853],{"class":323,"line":324},[321,1854,1855],{"class":1388},"\u002F\u002F Good: Separate focused prompts\n",[321,1857,1858],{"class":323,"line":355},[321,1859,1860],{"class":1388},"\u002F\u002F server\u002Fmcp\u002Fprompts\u002Freview-security.ts\n",[321,1862,1863],{"class":323,"line":362},[321,1864,1865],{"class":1388},"\u002F\u002F server\u002Fmcp\u002Fprompts\u002Freview-performance.ts\n",[321,1867,1868],{"class":323,"line":380},[321,1869,1870],{"class":1388},"\u002F\u002F server\u002Fmcp\u002Fprompts\u002Freview-style.ts\n",[321,1872,1873],{"class":323,"line":401},[321,1874,359],{"emptyLinePlaceholder":358},[321,1876,1877],{"class":323,"line":425},[321,1878,1879],{"class":1388},"\u002F\u002F Less maintainable: One complex prompt trying to do everything\n",[302,1881,1883],{"id":1882},"_5-provide-default-values","5. Provide Default Values",[298,1885,1886,1887,1890],{},"Use ",[318,1888,1889],{},".default()"," for optional arguments to improve usability:",[310,1892,1894],{"className":312,"code":1893,"language":315,"meta":316,"style":316},"inputSchema: {\n  format: z.enum(['brief', 'detailed']).default('detailed').describe('Output format'),\n  language: z.string().default('en').describe('Response language'),\n}\n",[318,1895,1896,1904,1968,2014],{"__ignoreMap":316},[321,1897,1898,1900,1902],{"class":323,"line":324},[321,1899,1545],{"class":1394},[321,1901,387],{"class":331},[321,1903,584],{"class":331},[321,1905,1906,1909,1911,1913,1915,1917,1919,1921,1924,1926,1928,1930,1933,1935,1937,1939,1941,1943,1945,1947,1949,1951,1953,1955,1957,1959,1962,1964,1966],{"class":323,"line":355},[321,1907,1908],{"class":1394},"  format",[321,1910,387],{"class":331},[321,1912,514],{"class":335},[321,1914,596],{"class":331},[321,1916,599],{"class":371},[321,1918,602],{"class":383},[321,1920,395],{"class":331},[321,1922,1923],{"class":348},"brief",[321,1925,395],{"class":331},[321,1927,612],{"class":331},[321,1929,345],{"class":331},[321,1931,1932],{"class":348},"detailed",[321,1934,395],{"class":331},[321,1936,640],{"class":383},[321,1938,596],{"class":331},[321,1940,645],{"class":371},[321,1942,374],{"class":383},[321,1944,395],{"class":331},[321,1946,1932],{"class":348},[321,1948,395],{"class":331},[321,1950,656],{"class":383},[321,1952,596],{"class":331},[321,1954,853],{"class":371},[321,1956,374],{"class":383},[321,1958,395],{"class":331},[321,1960,1961],{"class":348},"Output format",[321,1963,395],{"class":331},[321,1965,656],{"class":383},[321,1967,398],{"class":331},[321,1969,1970,1972,1974,1976,1978,1980,1982,1984,1986,1988,1990,1993,1995,1997,1999,2001,2003,2005,2008,2010,2012],{"class":323,"line":362},[321,1971,1559],{"class":1394},[321,1973,387],{"class":331},[321,1975,514],{"class":335},[321,1977,596],{"class":331},[321,1979,1672],{"class":371},[321,1981,1620],{"class":383},[321,1983,596],{"class":331},[321,1985,645],{"class":371},[321,1987,374],{"class":383},[321,1989,395],{"class":331},[321,1991,1992],{"class":348},"en",[321,1994,395],{"class":331},[321,1996,656],{"class":383},[321,1998,596],{"class":331},[321,2000,853],{"class":371},[321,2002,374],{"class":383},[321,2004,395],{"class":331},[321,2006,2007],{"class":348},"Response language",[321,2009,395],{"class":331},[321,2011,656],{"class":383},[321,2013,398],{"class":331},[321,2015,2016],{"class":323,"line":380},[321,2017,1430],{"class":331},[302,2019,2021],{"id":2020},"_6-include-examples-in-complex-prompts","6. Include Examples in Complex Prompts",[298,2023,2024],{},"For prompts that need specific output formats, include examples:",[310,2026,2028],{"className":312,"code":2027,"language":315,"meta":316,"style":316},"handler: async () => `Generate a commit message following this format:\n\ntype(scope): description\n\nExample:\nfeat(auth): add OAuth2 login support\n\nTypes: feat, fix, docs, style, refactor, test, chore`\n",[318,2029,2030,2047,2051,2056,2060,2065,2070,2074],{"__ignoreMap":316},[321,2031,2032,2034,2036,2038,2040,2042,2044],{"class":323,"line":324},[321,2033,1395],{"class":1394},[321,2035,387],{"class":331},[321,2037,410],{"class":409},[321,2039,413],{"class":331},[321,2041,416],{"class":409},[321,2043,419],{"class":331},[321,2045,2046],{"class":348},"Generate a commit message following this format:\n",[321,2048,2049],{"class":323,"line":355},[321,2050,359],{"emptyLinePlaceholder":358},[321,2052,2053],{"class":323,"line":362},[321,2054,2055],{"class":348},"type(scope): description\n",[321,2057,2058],{"class":323,"line":380},[321,2059,359],{"emptyLinePlaceholder":358},[321,2061,2062],{"class":323,"line":401},[321,2063,2064],{"class":348},"Example:\n",[321,2066,2067],{"class":323,"line":425},[321,2068,2069],{"class":348},"feat(auth): add OAuth2 login support\n",[321,2071,2072],{"class":323,"line":430},[321,2073,359],{"emptyLinePlaceholder":358},[321,2075,2076,2079],{"class":323,"line":445},[321,2077,2078],{"class":348},"Types: feat, fix, docs, style, refactor, test, chore",[321,2080,2081],{"class":331},"`\n",[293,2083,2085],{"id":2084},"conditional-registration","Conditional Registration",[298,2087,2088,2089,2092],{},"You can control whether a prompt is visible to clients using the ",[318,2090,2091],{},"enabled"," guard:",[310,2094,2097],{"className":312,"code":2095,"filename":2096,"language":315,"meta":316,"style":316},"export default defineMcpPrompt({\n  name: 'admin-prompt',\n  description: 'Admin-only prompt',\n  enabled: event => event.context.user?.role === 'admin',\n  handler: async () => 'Admin instructions...',\n})\n","server\u002Fmcp\u002Fprompts\u002Fadmin-prompt.ts",[318,2098,2099,2111,2127,2142,2183,2204],{"__ignoreMap":316},[321,2100,2101,2103,2105,2107,2109],{"class":323,"line":324},[321,2102,365],{"class":327},[321,2104,368],{"class":327},[321,2106,336],{"class":371},[321,2108,374],{"class":335},[321,2110,377],{"class":331},[321,2112,2113,2116,2118,2120,2123,2125],{"class":323,"line":355},[321,2114,2115],{"class":383},"  name",[321,2117,387],{"class":331},[321,2119,345],{"class":331},[321,2121,2122],{"class":348},"admin-prompt",[321,2124,395],{"class":331},[321,2126,398],{"class":331},[321,2128,2129,2131,2133,2135,2138,2140],{"class":323,"line":362},[321,2130,384],{"class":383},[321,2132,387],{"class":331},[321,2134,345],{"class":331},[321,2136,2137],{"class":348},"Admin-only prompt",[321,2139,395],{"class":331},[321,2141,398],{"class":331},[321,2143,2144,2147,2149,2152,2154,2156,2158,2161,2163,2165,2168,2171,2174,2176,2179,2181],{"class":323,"line":380},[321,2145,2146],{"class":371},"  enabled",[321,2148,387],{"class":331},[321,2150,2151],{"class":677}," event",[321,2153,416],{"class":409},[321,2155,2151],{"class":335},[321,2157,596],{"class":331},[321,2159,2160],{"class":335},"context",[321,2162,596],{"class":331},[321,2164,1739],{"class":335},[321,2166,2167],{"class":331},"?.",[321,2169,2170],{"class":335},"role ",[321,2172,2173],{"class":331},"===",[321,2175,345],{"class":331},[321,2177,2178],{"class":348},"admin",[321,2180,395],{"class":331},[321,2182,398],{"class":331},[321,2184,2185,2187,2189,2191,2193,2195,2197,2200,2202],{"class":323,"line":401},[321,2186,404],{"class":371},[321,2188,387],{"class":331},[321,2190,410],{"class":409},[321,2192,413],{"class":331},[321,2194,416],{"class":409},[321,2196,345],{"class":331},[321,2198,2199],{"class":348},"Admin instructions...",[321,2201,395],{"class":331},[321,2203,398],{"class":331},[321,2205,2206,2208],{"class":323,"line":425},[321,2207,489],{"class":331},[321,2209,492],{"class":335},[1327,2211,2213,2214,2216],{"color":2212,"icon":13},"primary","See the ",[1208,2215,244],{"href":245}," guide for detailed documentation on auth-based filtering.",[293,2218,2220],{"id":2219},"next-steps","Next Steps",[2222,2223,2224,2230,2235,2240,2245],"ul",{},[2225,2226,2227,2229],"li",{},[1208,2228,284],{"href":285}," - See advanced prompt examples",[2225,2231,2232,2234],{},[1208,2233,41],{"href":47}," - Create tools to perform actions",[2225,2236,2237,2239],{},[1208,2238,71],{"href":76}," - Create resources to expose data",[2225,2241,2242,2244],{},[1208,2243,123],{"href":128}," - Create custom MCP endpoints",[2225,2246,2247,2249],{},[1208,2248,244],{"href":245}," - Conditionally register definitions",[2251,2252,2253],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":316,"searchDepth":355,"depth":355,"links":2255},[2256,2262,2263,2264,2265,2273,2274],{"id":295,"depth":355,"text":296,"children":2257},[2258,2259,2260,2261],{"id":304,"depth":362,"text":305},{"id":495,"depth":362,"text":496},{"id":721,"depth":362,"text":722},{"id":993,"depth":362,"text":994},{"id":1194,"depth":355,"text":1195},{"id":1350,"depth":355,"text":1351},{"id":1374,"depth":355,"text":1375},{"id":1433,"depth":355,"text":1434,"children":2266},[2267,2268,2269,2270,2271,2272],{"id":1437,"depth":362,"text":1438},{"id":1527,"depth":362,"text":1528},{"id":1700,"depth":362,"text":1701},{"id":1841,"depth":362,"text":1842},{"id":1882,"depth":362,"text":1883},{"id":2020,"depth":362,"text":2021},{"id":2084,"depth":355,"text":2085},{"id":2219,"depth":355,"text":2220},"Real-world examples, organization, type safety, best practices, and conditional registration.","md",null,{},{"icon":121},{"title":2281,"description":2282},"Prompt patterns & best practices","MCP prompt use cases, groups, file layout, type safety, best practices, and enabled guards.","9ppdjSLEeBbJXsMBdPU3A89jzBAYQweZ6fkcVH3lmlM",[2285,2287],{"title":114,"path":115,"stem":116,"description":2286,"icon":93,"children":-1},"Zod arguments, handler return types, roles, and multi-message prompts.",{"title":46,"path":128,"stem":129,"description":2288,"icon":130,"children":-1},"Create custom MCP endpoints with their own tools, resources, and prompts.",1787670843244]