[{"data":1,"prerenderedAt":609},["ShallowReactive",2],{"top-navigation-en":3,"docs-navigation-en-developer":22,"docs-/en/developer/mcp":78},[4,9,13,17],{"label":5,"icon":6,"active":7,"to":8},"Get Started","tabler:sparkles",false,"/docs/get-started",{"label":10,"icon":11,"active":7,"to":12},"Guides","tabler:arrow-guide","/docs/guides",{"label":14,"icon":15,"active":7,"to":16},"Resources","tabler:paperclip","/docs/resources",{"label":18,"icon":19,"active":20,"to":21},"Developers","tabler:terminal",true,"/docs/developer",[23,27,31,49,67],{"title":24,"path":21,"stem":25,"icon":26,"children":-1},"Overview","en/3.developer/0.index","tabler:layout",{"title":28,"path":29,"stem":30,"children":-1},"Handlebars","/docs/developer/handlebars","en/3.developer/1.handlebars",{"title":32,"toc":20,"icon":33,"path":34,"stem":35,"children":36,"page":7},"Plugins","tabler:packages","/docs/developer/plugins","en/3.developer/3.plugins",[37,41,45],{"title":38,"path":39,"stem":40,"children":-1},"First Steps","/docs/developer/plugins/first-steps","en/3.developer/3.plugins/first-steps",{"title":42,"path":43,"stem":44,"children":-1},"Plugin-CLI","/docs/developer/plugins/plugin-cli","en/3.developer/3.plugins/plugin-cli",{"title":46,"path":47,"stem":48,"children":-1},"Setting Up Your Development Environment","/docs/developer/plugins/setup","en/3.developer/3.plugins/setup",{"title":50,"icon":51,"path":52,"stem":53,"children":54,"page":7},"API","tabler:code","/docs/developer/api","en/3.developer/4.api",[55,59,63],{"title":56,"path":57,"stem":58,"children":-1},"API Endpoints","/docs/developer/api/api-endpoints","en/3.developer/4.api/api-endpoints",{"title":60,"path":61,"stem":62,"children":-1},"Property-Types","/docs/developer/api/components","en/3.developer/4.api/components",{"title":64,"path":65,"stem":66,"children":-1},"Image-scaling","/docs/developer/api/image-scaling","en/3.developer/4.api/image-scaling",{"title":68,"path":69,"stem":70,"children":71,"icon":77},"MCP","/docs/developer/mcp","en/3.developer/5.mcp/index",[72,73],{"title":68,"path":69,"stem":70,"children":-1},{"title":74,"path":75,"stem":76,"children":-1},"Tools Reference","/docs/developer/mcp/tools","en/3.developer/5.mcp/tools","tabler:robot",{"id":79,"title":68,"body":80,"description":602,"extension":603,"icon":604,"meta":605,"navigation":20,"order":604,"path":606,"seo":607,"stem":70,"__hash__":608},"docs/en/3.developer/5.mcp/index.md",{"type":81,"value":82,"toc":590},"minimark",[83,95,98,103,106,117,121,129,143,147,152,159,231,242,246,261,334,338,345,391,395,404,455,459,467,513,517,524,580,586],[84,85,86,87,94],"p",{},"Neleto supports the ",[88,89,93],"a",{"href":90,"rel":91},"https://modelcontextprotocol.io",[92],"nofollow","Model Context Protocol (MCP)",", which lets AI agents  -  such as GitHub Copilot, Claude, or Cursor  -  interact directly with your CMS through natural language.",[84,96,97],{},"Agents connected via MCP can read and write content: creating pages, managing files, updating blog posts, listing events, and much more  -  all without leaving the editor.",[99,100,102],"h2",{"id":101},"endpoint","Endpoint",[84,104,105],{},"Your Neleto instance exposes a JSON-RPC 2.0 MCP endpoint at:",[107,108,113],"pre",{"className":109,"code":111,"language":112},[110],"language-text","POST \u003Cyour-neleto-url>/api/mcp\n","text",[114,115,111],"code",{"__ignoreMap":116},"",[99,118,120],{"id":119},"authentication","Authentication",[84,122,123,124,128],{},"All requests require a Bearer token. You can create API tokens in the Neleto admin under ",[125,126,127],"strong",{},"Settings -> API Tokens",".",[107,130,134],{"className":131,"code":132,"language":133,"meta":116,"style":116},"language-http shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","Authorization: Bearer \u003Cyour-token>\n","http",[114,135,136],{"__ignoreMap":116},[137,138,141],"span",{"class":139,"line":140},"line",1,[137,142,132],{},[99,144,146],{"id":145},"configuration","Configuration",[148,149,151],"h3",{"id":150},"vs-code-github-copilot-agent-mode","VS Code (GitHub Copilot Agent Mode)",[84,153,154,155,158],{},"Create or update ",[114,156,157],{},".vscode/mcp.json"," in your project:",[107,160,164],{"className":161,"code":162,"language":163,"meta":116,"style":116},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"servers\": {\n    \"neleto\": {\n      \"type\": \"http\",\n      \"url\": \"https://your-neleto-instance.com/api/mcp\",\n      \"headers\": {\n        \"Authorization\": \"Bearer \u003Cyour-token>\"\n      }\n    }\n  }\n}\n","json",[114,165,166,171,177,183,189,195,201,207,213,219,225],{"__ignoreMap":116},[137,167,168],{"class":139,"line":140},[137,169,170],{},"{\n",[137,172,174],{"class":139,"line":173},2,[137,175,176],{},"  \"servers\": {\n",[137,178,180],{"class":139,"line":179},3,[137,181,182],{},"    \"neleto\": {\n",[137,184,186],{"class":139,"line":185},4,[137,187,188],{},"      \"type\": \"http\",\n",[137,190,192],{"class":139,"line":191},5,[137,193,194],{},"      \"url\": \"https://your-neleto-instance.com/api/mcp\",\n",[137,196,198],{"class":139,"line":197},6,[137,199,200],{},"      \"headers\": {\n",[137,202,204],{"class":139,"line":203},7,[137,205,206],{},"        \"Authorization\": \"Bearer \u003Cyour-token>\"\n",[137,208,210],{"class":139,"line":209},8,[137,211,212],{},"      }\n",[137,214,216],{"class":139,"line":215},9,[137,217,218],{},"    }\n",[137,220,222],{"class":139,"line":221},10,[137,223,224],{},"  }\n",[137,226,228],{"class":139,"line":227},11,[137,229,230],{},"}\n",[84,232,233,234,237,238,241],{},"You can also add this to your VS Code ",[125,235,236],{},"User Settings (JSON)"," under the ",[114,239,240],{},"mcp"," key for global access across all projects.",[148,243,245],{"id":244},"claude-desktop","Claude Desktop",[84,247,248,249,256,257,260],{},"Claude Desktop does not natively support HTTP MCP servers, but you can use ",[88,250,253],{"href":251,"rel":252},"https://www.npmjs.com/package/mcp-remote",[92],[114,254,255],{},"mcp-remote"," as a proxy. Add the following to your Claude Desktop configuration file (",[114,258,259],{},"~/Library/Application Support/Claude/claude_desktop_config.json"," on macOS):",[107,262,264],{"className":161,"code":263,"language":163,"meta":116,"style":116},"{\n  \"mcpServers\": {\n    \"neleto\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"mcp-remote\",\n        \"https://your-neleto-instance.com/api/mcp\",\n        \"--header\",\n        \"Authorization:Bearer \u003Cyour-token>\"\n      ]\n    }\n  }\n}\n",[114,265,266,270,275,279,284,289,294,299,304,309,314,319,324,329],{"__ignoreMap":116},[137,267,268],{"class":139,"line":140},[137,269,170],{},[137,271,272],{"class":139,"line":173},[137,273,274],{},"  \"mcpServers\": {\n",[137,276,277],{"class":139,"line":179},[137,278,182],{},[137,280,281],{"class":139,"line":185},[137,282,283],{},"      \"command\": \"npx\",\n",[137,285,286],{"class":139,"line":191},[137,287,288],{},"      \"args\": [\n",[137,290,291],{"class":139,"line":197},[137,292,293],{},"        \"-y\",\n",[137,295,296],{"class":139,"line":203},[137,297,298],{},"        \"mcp-remote\",\n",[137,300,301],{"class":139,"line":209},[137,302,303],{},"        \"https://your-neleto-instance.com/api/mcp\",\n",[137,305,306],{"class":139,"line":215},[137,307,308],{},"        \"--header\",\n",[137,310,311],{"class":139,"line":221},[137,312,313],{},"        \"Authorization:Bearer \u003Cyour-token>\"\n",[137,315,316],{"class":139,"line":227},[137,317,318],{},"      ]\n",[137,320,322],{"class":139,"line":321},12,[137,323,218],{},[137,325,327],{"class":139,"line":326},13,[137,328,224],{},[137,330,332],{"class":139,"line":331},14,[137,333,230],{},[148,335,337],{"id":336},"cursor","Cursor",[84,339,340,341,344],{},"In Cursor, open ",[125,342,343],{},"Settings -> Features -> MCP Servers"," and add a new server entry:",[107,346,348],{"className":161,"code":347,"language":163,"meta":116,"style":116},"{\n  \"neleto\": {\n    \"type\": \"http\",\n    \"url\": \"https://your-neleto-instance.com/api/mcp\",\n    \"headers\": {\n      \"Authorization\": \"Bearer \u003Cyour-token>\"\n    }\n  }\n}\n",[114,349,350,354,359,364,369,374,379,383,387],{"__ignoreMap":116},[137,351,352],{"class":139,"line":140},[137,353,170],{},[137,355,356],{"class":139,"line":173},[137,357,358],{},"  \"neleto\": {\n",[137,360,361],{"class":139,"line":179},[137,362,363],{},"    \"type\": \"http\",\n",[137,365,366],{"class":139,"line":185},[137,367,368],{},"    \"url\": \"https://your-neleto-instance.com/api/mcp\",\n",[137,370,371],{"class":139,"line":191},[137,372,373],{},"    \"headers\": {\n",[137,375,376],{"class":139,"line":197},[137,377,378],{},"      \"Authorization\": \"Bearer \u003Cyour-token>\"\n",[137,380,381],{"class":139,"line":203},[137,382,218],{},[137,384,385],{"class":139,"line":209},[137,386,224],{},[137,388,389],{"class":139,"line":215},[137,390,230],{},[148,392,394],{"id":393},"opencode","OpenCode",[84,396,397,398,237,401,403],{},"Add the server to ",[114,399,400],{},"~/.config/opencode/opencode.json",[114,402,240],{}," key:",[107,405,407],{"className":161,"code":406,"language":163,"meta":116,"style":116},"{\n  \"mcp\": {\n    \"neleto\": {\n      \"type\": \"remote\",\n      \"url\": \"https://your-neleto-instance.com/api/mcp\",\n      \"headers\": {\n        \"Authorization\": \"Bearer \u003Cyour-token>\"\n      }\n    }\n  }\n}\n",[114,408,409,413,418,422,427,431,435,439,443,447,451],{"__ignoreMap":116},[137,410,411],{"class":139,"line":140},[137,412,170],{},[137,414,415],{"class":139,"line":173},[137,416,417],{},"  \"mcp\": {\n",[137,419,420],{"class":139,"line":179},[137,421,182],{},[137,423,424],{"class":139,"line":185},[137,425,426],{},"      \"type\": \"remote\",\n",[137,428,429],{"class":139,"line":191},[137,430,194],{},[137,432,433],{"class":139,"line":197},[137,434,200],{},[137,436,437],{"class":139,"line":203},[137,438,206],{},[137,440,441],{"class":139,"line":209},[137,442,212],{},[137,444,445],{"class":139,"line":215},[137,446,218],{},[137,448,449],{"class":139,"line":221},[137,450,224],{},[137,452,453],{"class":139,"line":227},[137,454,230],{},[148,456,458],{"id":457},"windsurf","Windsurf",[84,460,397,461,237,464,403],{},[114,462,463],{},"~/.codeium/windsurf/mcp_config.json",[114,465,466],{},"mcpServers",[107,468,470],{"className":161,"code":469,"language":163,"meta":116,"style":116},"{\n  \"mcpServers\": {\n    \"neleto\": {\n      \"serverUrl\": \"https://your-neleto-instance.com/api/mcp\",\n      \"headers\": {\n        \"Authorization\": \"Bearer \u003Cyour-token>\"\n      }\n    }\n  }\n}\n",[114,471,472,476,480,484,489,493,497,501,505,509],{"__ignoreMap":116},[137,473,474],{"class":139,"line":140},[137,475,170],{},[137,477,478],{"class":139,"line":173},[137,479,274],{},[137,481,482],{"class":139,"line":179},[137,483,182],{},[137,485,486],{"class":139,"line":185},[137,487,488],{},"      \"serverUrl\": \"https://your-neleto-instance.com/api/mcp\",\n",[137,490,491],{"class":139,"line":191},[137,492,200],{},[137,494,495],{"class":139,"line":197},[137,496,206],{},[137,498,499],{"class":139,"line":203},[137,500,212],{},[137,502,503],{"class":139,"line":209},[137,504,218],{},[137,506,507],{"class":139,"line":215},[137,508,224],{},[137,510,511],{"class":139,"line":221},[137,512,230],{},[99,514,516],{"id":515},"protocol-details","Protocol Details",[84,518,519,520,523],{},"The MCP endpoint uses JSON-RPC 2.0. Tool calls use the ",[114,521,522],{},"tools/call"," method:",[107,525,527],{"className":161,"code":526,"language":163,"meta":116,"style":116},"{\n  \"jsonrpc\": \"2.0\",\n  \"id\": 1,\n  \"method\": \"tools/call\",\n  \"params\": {\n    \"name\": \"page.list\",\n    \"arguments\": {\n      \"limit\": 10\n    }\n  }\n}\n",[114,528,529,533,538,543,548,553,558,563,568,572,576],{"__ignoreMap":116},[137,530,531],{"class":139,"line":140},[137,532,170],{},[137,534,535],{"class":139,"line":173},[137,536,537],{},"  \"jsonrpc\": \"2.0\",\n",[137,539,540],{"class":139,"line":179},[137,541,542],{},"  \"id\": 1,\n",[137,544,545],{"class":139,"line":185},[137,546,547],{},"  \"method\": \"tools/call\",\n",[137,549,550],{"class":139,"line":191},[137,551,552],{},"  \"params\": {\n",[137,554,555],{"class":139,"line":197},[137,556,557],{},"    \"name\": \"page.list\",\n",[137,559,560],{"class":139,"line":203},[137,561,562],{},"    \"arguments\": {\n",[137,564,565],{"class":139,"line":209},[137,566,567],{},"      \"limit\": 10\n",[137,569,570],{"class":139,"line":215},[137,571,218],{},[137,573,574],{"class":139,"line":221},[137,575,224],{},[137,577,578],{"class":139,"line":227},[137,579,230],{},[84,581,582,583,585],{},"A full list of available tools is documented on the ",[88,584,74],{"href":75}," page.",[587,588,589],"style",{},"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);}",{"title":116,"searchDepth":173,"depth":173,"links":591},[592,593,594,601],{"id":101,"depth":173,"text":102},{"id":119,"depth":173,"text":120},{"id":145,"depth":173,"text":146,"children":595},[596,597,598,599,600],{"id":150,"depth":179,"text":151},{"id":244,"depth":179,"text":245},{"id":336,"depth":179,"text":337},{"id":393,"depth":179,"text":394},{"id":457,"depth":179,"text":458},{"id":515,"depth":173,"text":516},"Connect AI agents to your Neleto CMS using the Model Context Protocol","md",null,{},"/en/developer/mcp",{"title":68,"description":602},"ej8_eOhTWxpAemq8kMfKYM4a4md9zMMFPAt7JtVebX8",1779278495003]