Add the module to your nuxt.config.ts:
export default defineNuxtConfig({
modules: ['@nuxtjs/mcp-toolkit'],
mcp: {
name: 'My MCP Server',
},
})
The module works with sensible defaults, so minimal configuration is required.
All available configuration options:
trueEnable or disable the MCP server.'/mcp'The HTTP route where the MCP server will be accessible.'/'URL to redirect browsers when they access the MCP endpoint.''The name of your MCP server (used in the MCP protocol handshake).'1.0.0'The version of your MCP server (semantic versioning).'mcp'Base directory for MCP definitions (relative to server/). The module expects:{dir}/tools/ - Tool definitions{dir}/resources/ - Resource definitions{dir}/prompts/ - Prompt definitionsChange the MCP endpoint route:
export default defineNuxtConfig({
modules: ['@nuxtjs/mcp-toolkit'],
mcp: {
route: '/api/mcp', // Custom route
},
})
Use a different directory for MCP definitions:
export default defineNuxtConfig({
modules: ['@nuxtjs/mcp-toolkit'],
mcp: {
dir: 'my-mcp', // Look in server/my-mcp/ instead of server/mcp/
},
})
This will look for definitions in:
server/my-mcp/tools/server/my-mcp/resources/server/my-mcp/prompts/Redirect browsers to a custom URL:
export default defineNuxtConfig({
modules: ['@nuxtjs/mcp-toolkit'],
mcp: {
browserRedirect: '/docs/mcp', // Redirect browsers to documentation
},
})
Temporarily disable the MCP server:
export default defineNuxtConfig({
modules: ['@nuxtjs/mcp-toolkit'],
mcp: {
enabled: false, // Disable the MCP server
},
})
Access configuration at runtime:
export default defineEventHandler((event) => {
const config = useRuntimeConfig(event).mcp
return {
name: config.name,
version: config.version,
route: config.route,
}
})