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