[{"data":1,"prerenderedAt":1665},["ShallowReactive",2],{"navigation_docs":3,"-prompts-authoring":287,"-prompts-authoring-surround":1660},[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":109,"body":289,"description":1651,"extension":1652,"links":1653,"meta":1654,"navigation":1655,"path":110,"seo":1656,"stem":111,"__hash__":1659},"docs\u002F4.prompts\u002F1.authoring.md",{"type":290,"value":291,"toc":1643},"minimark",[292,297,310,460,467,488,497,501,504,727,732,743,841,858,862,865,1286,1290,1293,1639],[293,294,296],"h2",{"id":295},"auto-generated-name-and-title","Auto-Generated Name and Title",[298,299,300,301,305,306,309],"p",{},"You can omit ",[302,303,304],"code",{},"name"," and ",[302,307,308],{},"title"," - they will be automatically generated from the filename:",[311,312,318],"pre",{"className":313,"code":314,"filename":315,"language":316,"meta":317,"style":317},"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  \u002F\u002F name and title are auto-generated from filename:\n  \u002F\u002F name: 'greeting'\n  \u002F\u002F title: 'Greeting'\n  description: 'Generate a personalized greeting message',\n  handler: async () => {\n    \u002F\u002F ...\n  },\n})\n","server\u002Fmcp\u002Fprompts\u002Fgreeting.ts","typescript","",[302,319,320,353,360,378,385,391,397,418,439,445,451],{"__ignoreMap":317},[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],{"class":323,"line":380},4,[321,382,384],{"class":383},"sHwdD","  \u002F\u002F name and title are auto-generated from filename:\n",[321,386,388],{"class":323,"line":387},5,[321,389,390],{"class":383},"  \u002F\u002F name: 'greeting'\n",[321,392,394],{"class":323,"line":393},6,[321,395,396],{"class":383},"  \u002F\u002F title: 'Greeting'\n",[321,398,400,404,407,409,412,415],{"class":323,"line":399},7,[321,401,403],{"class":402},"swJcz","  description",[321,405,406],{"class":331},":",[321,408,345],{"class":331},[321,410,411],{"class":348},"Generate a personalized greeting message",[321,413,414],{"class":331},"'",[321,416,417],{"class":331},",\n",[321,419,421,424,426,430,433,436],{"class":323,"line":420},8,[321,422,423],{"class":371},"  handler",[321,425,406],{"class":331},[321,427,429],{"class":428},"spNyl"," async",[321,431,432],{"class":331}," ()",[321,434,435],{"class":428}," =>",[321,437,438],{"class":331}," {\n",[321,440,442],{"class":323,"line":441},9,[321,443,444],{"class":383},"    \u002F\u002F ...\n",[321,446,448],{"class":323,"line":447},10,[321,449,450],{"class":331},"  },\n",[321,452,454,457],{"class":323,"line":453},11,[321,455,456],{"class":331},"}",[321,458,459],{"class":335},")\n",[298,461,462,463,466],{},"The filename ",[302,464,465],{},"greeting.ts"," automatically becomes:",[468,469,470,480],"ul",{},[471,472,473,475,476,479],"li",{},[302,474,304],{},": ",[302,477,478],{},"greeting"," (kebab-case)",[471,481,482,475,484,487],{},[302,483,308],{},[302,485,486],{},"Greeting"," (title case)",[298,489,490,491,493,494,496],{},"You can still provide ",[302,492,304],{}," or ",[302,495,308],{}," explicitly to override the auto-generated values.",[293,498,500],{"id":499},"simple-prompt-no-arguments","Simple Prompt (No Arguments)",[298,502,503],{},"Create a prompt without arguments. Handlers can return a simple string — it will be automatically wrapped into a single user message:",[311,505,507],{"className":313,"code":506,"filename":315,"language":316,"meta":317,"style":317},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  name: 'greeting',\n  title: 'Greeting',\n  description: 'Generate a personalized greeting message',\n  handler: async () => {\n    const hour = new Date().getHours()\n    const timeOfDay = hour \u003C 12 ? 'morning' : hour \u003C 18 ? 'afternoon' : 'evening'\n\n    return `Good ${timeOfDay}! How can I help you today?`\n  },\n})\n",[302,508,509,527,531,543,558,573,587,601,630,686,690,715,720],{"__ignoreMap":317},[321,510,511,513,515,517,519,521,523,525],{"class":323,"line":324},[321,512,328],{"class":327},[321,514,332],{"class":331},[321,516,336],{"class":335},[321,518,339],{"class":331},[321,520,342],{"class":327},[321,522,345],{"class":331},[321,524,349],{"class":348},[321,526,352],{"class":331},[321,528,529],{"class":323,"line":355},[321,530,359],{"emptyLinePlaceholder":358},[321,532,533,535,537,539,541],{"class":323,"line":362},[321,534,365],{"class":327},[321,536,368],{"class":327},[321,538,336],{"class":371},[321,540,374],{"class":335},[321,542,377],{"class":331},[321,544,545,548,550,552,554,556],{"class":323,"line":380},[321,546,547],{"class":402},"  name",[321,549,406],{"class":331},[321,551,345],{"class":331},[321,553,478],{"class":348},[321,555,414],{"class":331},[321,557,417],{"class":331},[321,559,560,563,565,567,569,571],{"class":323,"line":387},[321,561,562],{"class":402},"  title",[321,564,406],{"class":331},[321,566,345],{"class":331},[321,568,486],{"class":348},[321,570,414],{"class":331},[321,572,417],{"class":331},[321,574,575,577,579,581,583,585],{"class":323,"line":393},[321,576,403],{"class":402},[321,578,406],{"class":331},[321,580,345],{"class":331},[321,582,411],{"class":348},[321,584,414],{"class":331},[321,586,417],{"class":331},[321,588,589,591,593,595,597,599],{"class":323,"line":399},[321,590,423],{"class":371},[321,592,406],{"class":331},[321,594,429],{"class":428},[321,596,432],{"class":331},[321,598,435],{"class":428},[321,600,438],{"class":331},[321,602,603,606,609,612,615,618,621,624,627],{"class":323,"line":420},[321,604,605],{"class":428},"    const",[321,607,608],{"class":335}," hour",[321,610,611],{"class":331}," =",[321,613,614],{"class":331}," new",[321,616,617],{"class":371}," Date",[321,619,620],{"class":402},"()",[321,622,623],{"class":331},".",[321,625,626],{"class":371},"getHours",[321,628,629],{"class":402},"()\n",[321,631,632,634,637,639,641,644,648,651,653,656,658,661,663,665,668,670,672,675,677,679,681,684],{"class":323,"line":441},[321,633,605],{"class":428},[321,635,636],{"class":335}," timeOfDay",[321,638,611],{"class":331},[321,640,608],{"class":335},[321,642,643],{"class":331}," \u003C",[321,645,647],{"class":646},"sbssI"," 12",[321,649,650],{"class":331}," ?",[321,652,345],{"class":331},[321,654,655],{"class":348},"morning",[321,657,414],{"class":331},[321,659,660],{"class":331}," :",[321,662,608],{"class":335},[321,664,643],{"class":331},[321,666,667],{"class":646}," 18",[321,669,650],{"class":331},[321,671,345],{"class":331},[321,673,674],{"class":348},"afternoon",[321,676,414],{"class":331},[321,678,660],{"class":331},[321,680,345],{"class":331},[321,682,683],{"class":348},"evening",[321,685,352],{"class":331},[321,687,688],{"class":323,"line":447},[321,689,359],{"emptyLinePlaceholder":358},[321,691,692,695,698,701,704,707,709,712],{"class":323,"line":453},[321,693,694],{"class":327},"    return",[321,696,697],{"class":331}," `",[321,699,700],{"class":348},"Good ",[321,702,703],{"class":331},"${",[321,705,706],{"class":335},"timeOfDay",[321,708,456],{"class":331},[321,710,711],{"class":348},"! How can I help you today?",[321,713,714],{"class":331},"`\n",[321,716,718],{"class":323,"line":717},12,[321,719,450],{"class":331},[321,721,723,725],{"class":323,"line":722},13,[321,724,456],{"class":331},[321,726,459],{"class":335},[728,729,731],"h3",{"id":730},"default-role","Default Role",[298,733,734,735,738,739,742],{},"When a handler returns a string, it is wrapped with the ",[302,736,737],{},"user"," role by default. Use the ",[302,740,741],{},"role"," option to change this:",[311,744,747],{"className":313,"code":745,"filename":746,"language":316,"meta":317,"style":317},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  role: 'assistant',\n  description: 'Code review assistant persona',\n  handler: async () => 'I am a code review assistant. Share your code and I will review it for best practices.',\n})\n","server\u002Fmcp\u002Fprompts\u002Fcode-reviewer.ts",[302,748,749,767,771,783,799,814,835],{"__ignoreMap":317},[321,750,751,753,755,757,759,761,763,765],{"class":323,"line":324},[321,752,328],{"class":327},[321,754,332],{"class":331},[321,756,336],{"class":335},[321,758,339],{"class":331},[321,760,342],{"class":327},[321,762,345],{"class":331},[321,764,349],{"class":348},[321,766,352],{"class":331},[321,768,769],{"class":323,"line":355},[321,770,359],{"emptyLinePlaceholder":358},[321,772,773,775,777,779,781],{"class":323,"line":362},[321,774,365],{"class":327},[321,776,368],{"class":327},[321,778,336],{"class":371},[321,780,374],{"class":335},[321,782,377],{"class":331},[321,784,785,788,790,792,795,797],{"class":323,"line":380},[321,786,787],{"class":402},"  role",[321,789,406],{"class":331},[321,791,345],{"class":331},[321,793,794],{"class":348},"assistant",[321,796,414],{"class":331},[321,798,417],{"class":331},[321,800,801,803,805,807,810,812],{"class":323,"line":387},[321,802,403],{"class":402},[321,804,406],{"class":331},[321,806,345],{"class":331},[321,808,809],{"class":348},"Code review assistant persona",[321,811,414],{"class":331},[321,813,417],{"class":331},[321,815,816,818,820,822,824,826,828,831,833],{"class":323,"line":393},[321,817,423],{"class":371},[321,819,406],{"class":331},[321,821,429],{"class":428},[321,823,432],{"class":331},[321,825,435],{"class":428},[321,827,345],{"class":331},[321,829,830],{"class":348},"I am a code review assistant. Share your code and I will review it for best practices.",[321,832,414],{"class":331},[321,834,417],{"class":331},[321,836,837,839],{"class":323,"line":399},[321,838,456],{"class":331},[321,840,459],{"class":335},[842,843,846,847,849,850,853,854,857],"callout",{"color":844,"icon":845},"info","i-lucide-info","The ",[302,848,741],{}," option only affects string returns. When returning a full ",[302,851,852],{},"GetPromptResult",", define roles directly in the ",[302,855,856],{},"messages"," array.",[293,859,861],{"id":860},"prompt-with-arguments","Prompt with Arguments",[298,863,864],{},"Create a prompt that accepts arguments:",[311,866,869],{"className":313,"code":867,"filename":868,"language":316,"meta":317,"style":317},"import { z } from 'zod'\nimport { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  name: 'summarize',\n  title: 'Text Summarizer',\n  description: 'Summarize any text content',\n  inputSchema: {\n    text: z.string().describe('The text to summarize'),\n    maxLength: z.string().optional().describe('Maximum length of summary in words'),\n  },\n  handler: async ({ text, maxLength }) => {\n    const words = text.split(\u002F\\s+\u002F)\n    const maxWords = maxLength ? Number.parseInt(maxLength) : Math.ceil(words.length * 0.3)\n    const summary = words.slice(0, maxWords).join(' ')\n\n    return `Summary (${maxWords} words): ${summary}${words.length > maxWords ? '...' : ''}`\n  },\n})\n","server\u002Fmcp\u002Fprompts\u002Fsummarize.ts",[302,870,871,891,909,913,925,940,955,970,979,1014,1053,1057,1085,1114,1172,1213,1218,1274,1279],{"__ignoreMap":317},[321,872,873,875,877,880,882,884,886,889],{"class":323,"line":324},[321,874,328],{"class":327},[321,876,332],{"class":331},[321,878,879],{"class":335}," z",[321,881,339],{"class":331},[321,883,342],{"class":327},[321,885,345],{"class":331},[321,887,888],{"class":348},"zod",[321,890,352],{"class":331},[321,892,893,895,897,899,901,903,905,907],{"class":323,"line":355},[321,894,328],{"class":327},[321,896,332],{"class":331},[321,898,336],{"class":335},[321,900,339],{"class":331},[321,902,342],{"class":327},[321,904,345],{"class":331},[321,906,349],{"class":348},[321,908,352],{"class":331},[321,910,911],{"class":323,"line":362},[321,912,359],{"emptyLinePlaceholder":358},[321,914,915,917,919,921,923],{"class":323,"line":380},[321,916,365],{"class":327},[321,918,368],{"class":327},[321,920,336],{"class":371},[321,922,374],{"class":335},[321,924,377],{"class":331},[321,926,927,929,931,933,936,938],{"class":323,"line":387},[321,928,547],{"class":402},[321,930,406],{"class":331},[321,932,345],{"class":331},[321,934,935],{"class":348},"summarize",[321,937,414],{"class":331},[321,939,417],{"class":331},[321,941,942,944,946,948,951,953],{"class":323,"line":393},[321,943,562],{"class":402},[321,945,406],{"class":331},[321,947,345],{"class":331},[321,949,950],{"class":348},"Text Summarizer",[321,952,414],{"class":331},[321,954,417],{"class":331},[321,956,957,959,961,963,966,968],{"class":323,"line":399},[321,958,403],{"class":402},[321,960,406],{"class":331},[321,962,345],{"class":331},[321,964,965],{"class":348},"Summarize any text content",[321,967,414],{"class":331},[321,969,417],{"class":331},[321,971,972,975,977],{"class":323,"line":420},[321,973,974],{"class":402},"  inputSchema",[321,976,406],{"class":331},[321,978,438],{"class":331},[321,980,981,984,986,988,990,993,995,997,1000,1002,1004,1007,1009,1012],{"class":323,"line":441},[321,982,983],{"class":402},"    text",[321,985,406],{"class":331},[321,987,879],{"class":335},[321,989,623],{"class":331},[321,991,992],{"class":371},"string",[321,994,620],{"class":335},[321,996,623],{"class":331},[321,998,999],{"class":371},"describe",[321,1001,374],{"class":335},[321,1003,414],{"class":331},[321,1005,1006],{"class":348},"The text to summarize",[321,1008,414],{"class":331},[321,1010,1011],{"class":335},")",[321,1013,417],{"class":331},[321,1015,1016,1019,1021,1023,1025,1027,1029,1031,1034,1036,1038,1040,1042,1044,1047,1049,1051],{"class":323,"line":447},[321,1017,1018],{"class":402},"    maxLength",[321,1020,406],{"class":331},[321,1022,879],{"class":335},[321,1024,623],{"class":331},[321,1026,992],{"class":371},[321,1028,620],{"class":335},[321,1030,623],{"class":331},[321,1032,1033],{"class":371},"optional",[321,1035,620],{"class":335},[321,1037,623],{"class":331},[321,1039,999],{"class":371},[321,1041,374],{"class":335},[321,1043,414],{"class":331},[321,1045,1046],{"class":348},"Maximum length of summary in words",[321,1048,414],{"class":331},[321,1050,1011],{"class":335},[321,1052,417],{"class":331},[321,1054,1055],{"class":323,"line":453},[321,1056,450],{"class":331},[321,1058,1059,1061,1063,1065,1068,1072,1075,1078,1081,1083],{"class":323,"line":717},[321,1060,423],{"class":371},[321,1062,406],{"class":331},[321,1064,429],{"class":428},[321,1066,1067],{"class":331}," ({",[321,1069,1071],{"class":1070},"sHdIc"," text",[321,1073,1074],{"class":331},",",[321,1076,1077],{"class":1070}," maxLength",[321,1079,1080],{"class":331}," })",[321,1082,435],{"class":428},[321,1084,438],{"class":331},[321,1086,1087,1089,1092,1094,1096,1098,1101,1103,1106,1109,1112],{"class":323,"line":722},[321,1088,605],{"class":428},[321,1090,1091],{"class":335}," words",[321,1093,611],{"class":331},[321,1095,1071],{"class":335},[321,1097,623],{"class":331},[321,1099,1100],{"class":371},"split",[321,1102,374],{"class":402},[321,1104,1105],{"class":331},"\u002F",[321,1107,1108],{"class":348},"\\s",[321,1110,1111],{"class":331},"+\u002F",[321,1113,459],{"class":402},[321,1115,1117,1119,1122,1124,1126,1128,1131,1133,1136,1138,1141,1144,1146,1149,1151,1154,1156,1159,1161,1164,1167,1170],{"class":323,"line":1116},14,[321,1118,605],{"class":428},[321,1120,1121],{"class":335}," maxWords",[321,1123,611],{"class":331},[321,1125,1077],{"class":335},[321,1127,650],{"class":331},[321,1129,1130],{"class":335}," Number",[321,1132,623],{"class":331},[321,1134,1135],{"class":371},"parseInt",[321,1137,374],{"class":402},[321,1139,1140],{"class":335},"maxLength",[321,1142,1143],{"class":402},") ",[321,1145,406],{"class":331},[321,1147,1148],{"class":335}," Math",[321,1150,623],{"class":331},[321,1152,1153],{"class":371},"ceil",[321,1155,374],{"class":402},[321,1157,1158],{"class":335},"words",[321,1160,623],{"class":331},[321,1162,1163],{"class":335},"length",[321,1165,1166],{"class":331}," *",[321,1168,1169],{"class":646}," 0.3",[321,1171,459],{"class":402},[321,1173,1175,1177,1180,1182,1184,1186,1189,1191,1194,1196,1198,1200,1202,1205,1207,1209,1211],{"class":323,"line":1174},15,[321,1176,605],{"class":428},[321,1178,1179],{"class":335}," summary",[321,1181,611],{"class":331},[321,1183,1091],{"class":335},[321,1185,623],{"class":331},[321,1187,1188],{"class":371},"slice",[321,1190,374],{"class":402},[321,1192,1193],{"class":646},"0",[321,1195,1074],{"class":331},[321,1197,1121],{"class":335},[321,1199,1011],{"class":402},[321,1201,623],{"class":331},[321,1203,1204],{"class":371},"join",[321,1206,374],{"class":402},[321,1208,414],{"class":331},[321,1210,345],{"class":331},[321,1212,459],{"class":402},[321,1214,1216],{"class":323,"line":1215},16,[321,1217,359],{"emptyLinePlaceholder":358},[321,1219,1221,1223,1225,1228,1230,1233,1235,1238,1240,1243,1246,1248,1250,1253,1256,1259,1262,1264,1267,1269,1271],{"class":323,"line":1220},17,[321,1222,694],{"class":327},[321,1224,697],{"class":331},[321,1226,1227],{"class":348},"Summary (",[321,1229,703],{"class":331},[321,1231,1232],{"class":335},"maxWords",[321,1234,456],{"class":331},[321,1236,1237],{"class":348}," words): ",[321,1239,703],{"class":331},[321,1241,1242],{"class":335},"summary",[321,1244,1245],{"class":331},"}${",[321,1247,1158],{"class":335},[321,1249,623],{"class":331},[321,1251,1252],{"class":335},"length ",[321,1254,1255],{"class":331},">",[321,1257,1258],{"class":335}," maxWords ",[321,1260,1261],{"class":331},"?",[321,1263,345],{"class":331},[321,1265,1266],{"class":348},"...",[321,1268,414],{"class":331},[321,1270,660],{"class":331},[321,1272,1273],{"class":331}," ''}`\n",[321,1275,1277],{"class":323,"line":1276},18,[321,1278,450],{"class":331},[321,1280,1282,1284],{"class":323,"line":1281},19,[321,1283,456],{"class":331},[321,1285,459],{"class":335},[293,1287,1289],{"id":1288},"prompt-structure","Prompt Structure",[298,1291,1292],{},"A prompt definition consists of:",[1294,1295,1296,1381,1479],"code-group",{},[311,1297,1300],{"className":313,"code":1298,"filename":1299,"language":316,"meta":317,"style":317},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  name: 'prompt-name',  \u002F\u002F Unique identifier\n  handler: async () => 'Your prompt text here',\n})\n","Simple Prompt",[302,1301,1302,1320,1324,1336,1354,1375],{"__ignoreMap":317},[321,1303,1304,1306,1308,1310,1312,1314,1316,1318],{"class":323,"line":324},[321,1305,328],{"class":327},[321,1307,332],{"class":331},[321,1309,336],{"class":335},[321,1311,339],{"class":331},[321,1313,342],{"class":327},[321,1315,345],{"class":331},[321,1317,349],{"class":348},[321,1319,352],{"class":331},[321,1321,1322],{"class":323,"line":355},[321,1323,359],{"emptyLinePlaceholder":358},[321,1325,1326,1328,1330,1332,1334],{"class":323,"line":362},[321,1327,365],{"class":327},[321,1329,368],{"class":327},[321,1331,336],{"class":371},[321,1333,374],{"class":335},[321,1335,377],{"class":331},[321,1337,1338,1340,1342,1344,1347,1349,1351],{"class":323,"line":380},[321,1339,547],{"class":402},[321,1341,406],{"class":331},[321,1343,345],{"class":331},[321,1345,1346],{"class":348},"prompt-name",[321,1348,414],{"class":331},[321,1350,1074],{"class":331},[321,1352,1353],{"class":383},"  \u002F\u002F Unique identifier\n",[321,1355,1356,1358,1360,1362,1364,1366,1368,1371,1373],{"class":323,"line":387},[321,1357,423],{"class":371},[321,1359,406],{"class":331},[321,1361,429],{"class":428},[321,1363,432],{"class":331},[321,1365,435],{"class":428},[321,1367,345],{"class":331},[321,1369,1370],{"class":348},"Your prompt text here",[321,1372,414],{"class":331},[321,1374,417],{"class":331},[321,1376,1377,1379],{"class":323,"line":393},[321,1378,456],{"class":331},[321,1380,459],{"class":335},[311,1382,1385],{"className":313,"code":1383,"filename":1384,"language":316,"meta":317,"style":317},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  name: 'prompt-name',\n  role: 'assistant',             \u002F\u002F Role for string returns (default: 'user')\n  handler: async () => 'I am an assistant persona.',\n})\n","With Role",[302,1386,1387,1405,1409,1421,1435,1452,1473],{"__ignoreMap":317},[321,1388,1389,1391,1393,1395,1397,1399,1401,1403],{"class":323,"line":324},[321,1390,328],{"class":327},[321,1392,332],{"class":331},[321,1394,336],{"class":335},[321,1396,339],{"class":331},[321,1398,342],{"class":327},[321,1400,345],{"class":331},[321,1402,349],{"class":348},[321,1404,352],{"class":331},[321,1406,1407],{"class":323,"line":355},[321,1408,359],{"emptyLinePlaceholder":358},[321,1410,1411,1413,1415,1417,1419],{"class":323,"line":362},[321,1412,365],{"class":327},[321,1414,368],{"class":327},[321,1416,336],{"class":371},[321,1418,374],{"class":335},[321,1420,377],{"class":331},[321,1422,1423,1425,1427,1429,1431,1433],{"class":323,"line":380},[321,1424,547],{"class":402},[321,1426,406],{"class":331},[321,1428,345],{"class":331},[321,1430,1346],{"class":348},[321,1432,414],{"class":331},[321,1434,417],{"class":331},[321,1436,1437,1439,1441,1443,1445,1447,1449],{"class":323,"line":387},[321,1438,787],{"class":402},[321,1440,406],{"class":331},[321,1442,345],{"class":331},[321,1444,794],{"class":348},[321,1446,414],{"class":331},[321,1448,1074],{"class":331},[321,1450,1451],{"class":383},"             \u002F\u002F Role for string returns (default: 'user')\n",[321,1453,1454,1456,1458,1460,1462,1464,1466,1469,1471],{"class":323,"line":393},[321,1455,423],{"class":371},[321,1457,406],{"class":331},[321,1459,429],{"class":428},[321,1461,432],{"class":331},[321,1463,435],{"class":428},[321,1465,345],{"class":331},[321,1467,1468],{"class":348},"I am an assistant persona.",[321,1470,414],{"class":331},[321,1472,417],{"class":331},[321,1474,1475,1477],{"class":323,"line":399},[321,1476,456],{"class":331},[321,1478,459],{"class":335},[311,1480,1482],{"className":313,"code":1481,"filename":861,"language":316,"meta":317,"style":317},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpPrompt({\n  name: 'prompt-name',\n  title: 'Prompt Title',        \u002F\u002F Human-readable title\n  description: 'Description',   \u002F\u002F What the prompt does\n  inputSchema: { ... },          \u002F\u002F Zod schema for arguments\n  handler: async (args) => {    \u002F\u002F Handler with arguments\n    return `Prompt text with ${args.param}`\n  },\n})\n",[302,1483,1484,1502,1506,1518,1532,1550,1568,1585,1608,1629,1633],{"__ignoreMap":317},[321,1485,1486,1488,1490,1492,1494,1496,1498,1500],{"class":323,"line":324},[321,1487,328],{"class":327},[321,1489,332],{"class":331},[321,1491,336],{"class":335},[321,1493,339],{"class":331},[321,1495,342],{"class":327},[321,1497,345],{"class":331},[321,1499,349],{"class":348},[321,1501,352],{"class":331},[321,1503,1504],{"class":323,"line":355},[321,1505,359],{"emptyLinePlaceholder":358},[321,1507,1508,1510,1512,1514,1516],{"class":323,"line":362},[321,1509,365],{"class":327},[321,1511,368],{"class":327},[321,1513,336],{"class":371},[321,1515,374],{"class":335},[321,1517,377],{"class":331},[321,1519,1520,1522,1524,1526,1528,1530],{"class":323,"line":380},[321,1521,547],{"class":402},[321,1523,406],{"class":331},[321,1525,345],{"class":331},[321,1527,1346],{"class":348},[321,1529,414],{"class":331},[321,1531,417],{"class":331},[321,1533,1534,1536,1538,1540,1543,1545,1547],{"class":323,"line":387},[321,1535,562],{"class":402},[321,1537,406],{"class":331},[321,1539,345],{"class":331},[321,1541,1542],{"class":348},"Prompt Title",[321,1544,414],{"class":331},[321,1546,1074],{"class":331},[321,1548,1549],{"class":383},"        \u002F\u002F Human-readable title\n",[321,1551,1552,1554,1556,1558,1561,1563,1565],{"class":323,"line":393},[321,1553,403],{"class":402},[321,1555,406],{"class":331},[321,1557,345],{"class":331},[321,1559,1560],{"class":348},"Description",[321,1562,414],{"class":331},[321,1564,1074],{"class":331},[321,1566,1567],{"class":383},"   \u002F\u002F What the prompt does\n",[321,1569,1570,1572,1574,1576,1579,1582],{"class":323,"line":399},[321,1571,974],{"class":402},[321,1573,406],{"class":331},[321,1575,332],{"class":331},[321,1577,1578],{"class":331}," ...",[321,1580,1581],{"class":331}," },",[321,1583,1584],{"class":383},"          \u002F\u002F Zod schema for arguments\n",[321,1586,1587,1589,1591,1593,1596,1599,1601,1603,1605],{"class":323,"line":420},[321,1588,423],{"class":371},[321,1590,406],{"class":331},[321,1592,429],{"class":428},[321,1594,1595],{"class":331}," (",[321,1597,1598],{"class":1070},"args",[321,1600,1011],{"class":331},[321,1602,435],{"class":428},[321,1604,332],{"class":331},[321,1606,1607],{"class":383},"    \u002F\u002F Handler with arguments\n",[321,1609,1610,1612,1614,1617,1619,1621,1623,1626],{"class":323,"line":441},[321,1611,694],{"class":327},[321,1613,697],{"class":331},[321,1615,1616],{"class":348},"Prompt text with ",[321,1618,703],{"class":331},[321,1620,1598],{"class":335},[321,1622,623],{"class":331},[321,1624,1625],{"class":335},"param",[321,1627,1628],{"class":331},"}`\n",[321,1630,1631],{"class":323,"line":447},[321,1632,450],{"class":331},[321,1634,1635,1637],{"class":323,"line":453},[321,1636,456],{"class":331},[321,1638,459],{"class":335},[1640,1641,1642],"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 .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 .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 .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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}",{"title":317,"searchDepth":355,"depth":355,"links":1644},[1645,1646,1649,1650],{"id":295,"depth":355,"text":296},{"id":499,"depth":355,"text":500,"children":1647},[1648],{"id":730,"depth":362,"text":731},{"id":860,"depth":355,"text":861},{"id":1288,"depth":355,"text":1289},"Names, roles, arguments, and the shape of a prompt definition.","md",null,{},{"icon":112},{"title":1657,"description":1658},"Prompt authoring","Auto-generated names, simple prompts, roles, arguments, and prompt structure for MCP.","tbRH5vKXaKvksGCtOOf8wJ64qj8qqgv4KO5DTqVzY-g",[1661,1663],{"title":46,"path":105,"stem":106,"description":1662,"icon":107,"children":-1},"Create reusable prompts for AI assistants with optional arguments.",{"title":114,"path":115,"stem":116,"description":1664,"icon":93,"children":-1},"Zod arguments, handler return types, roles, and multi-message prompts.",1787670845247]