Skip to main content
Glama
index.html49.8 kB
<!DOCTYPE html> <html lang="en" class="scroll-smooth"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content="A Model Context Protocol (MCP) server that integrates Sitecore CMS with AI assistants like Claude and GitHub Copilot. 21 tools for querying content, managing versions, and CRUD operations."> <meta name="keywords" content="sitecore, mcp, model-context-protocol, graphql, ai-assistant, claude, github-copilot, cms"> <meta name="author" content="Gary Wenneker"> <title>Sitecore MCP Server - AI-Powered Sitecore Integration</title> <script src="https://cdn.tailwindcss.com"></script> <script> tailwind.config = { theme: { extend: { colors: { sitecore: { red: '#EB1F1F', dark: '#1A1A1A', gray: '#2D2D2D', } } } } } </script> <style> @keyframes float { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-20px); } } .float-animation { animation: float 6s ease-in-out infinite; } @keyframes sparkle { 0%, 100% { transform: scale(1) rotate(0deg); opacity: 1; } 50% { transform: scale(1.5) rotate(180deg); opacity: 0.5; } } .animate-sparkle { animation: sparkle 2s ease-in-out infinite; } .gradient-bg { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); } .glass-effect { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.2); } /* Custom themed scrollbars */ ::-webkit-scrollbar { width: 12px; height: 12px; } ::-webkit-scrollbar-track { background: rgba(15, 23, 42, 0.5); border-radius: 10px; } ::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #ef4444 0%, #f97316 100%); border-radius: 10px; border: 2px solid rgba(15, 23, 42, 0.5); } ::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #dc2626 0%, #ea580c 100%); } /* Firefox scrollbar */ * { scrollbar-width: thin; scrollbar-color: #ef4444 rgba(15, 23, 42, 0.5); } /* Disable text selection */ body { user-select: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; } /* Allow selection for code blocks */ pre, code { user-select: text; -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; } /* Copy button styling */ .copy-button { position: absolute; top: 0.5rem; right: 0.5rem; padding: 0.5rem 1rem; background: linear-gradient(135deg, #ef4444 0%, #f97316 100%); color: white; border: none; border-radius: 0.5rem; cursor: pointer; font-size: 0.875rem; font-weight: 600; opacity: 1; transition: opacity 0.2s, transform 0.2s; } @media (min-width: 768px) { .copy-button { opacity: 0; } .code-container:hover .copy-button { opacity: 1; } } .copy-button:hover { transform: scale(1.05); background: linear-gradient(135deg, #dc2626 0%, #ea580c 100%); } .copy-button:active { transform: scale(0.95); } .copy-button.copied { background: linear-gradient(135deg, #10b981 0%, #059669 100%); } /* Floating background sparks */ .bg-spark { position: fixed; pointer-events: none; z-index: 0; filter: blur(3px); opacity: 0; } @keyframes floatSpark { 0% { transform: translate(0, 0) rotate(0deg) scale(1); opacity: 0; } 10% { opacity: 0.3; } 50% { opacity: 0.5; } 90% { opacity: 0.3; } 100% { transform: translate(var(--tx), var(--ty)) rotate(360deg) scale(1.5); opacity: 0; } } /* Scroll reveal animations */ .reveal { opacity: 0 !important; transform: translateY(50px) !important; transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1) !important; will-change: opacity, transform; } .reveal.active { opacity: 1 !important; transform: translateY(0) !important; } </style> <script> // Create floating background sparks function createBackgroundSparks() { const sparkSVG = `<svg width="40" height="40" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.346,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="currentColor"/> </svg>`; const colors = ['#ef4444', '#f97316', '#3b82f6', '#8b5cf6', '#ec4899', '#06b6d4', '#10b981']; const container = document.body; setInterval(() => { const spark = document.createElement('div'); spark.className = 'bg-spark'; spark.innerHTML = sparkSVG; // Random position const startX = Math.random() * window.innerWidth; const startY = Math.random() * window.innerHeight; spark.style.left = startX + 'px'; spark.style.top = startY + 'px'; // Random size const size = 30 + Math.random() * 60; spark.style.width = size + 'px'; spark.style.height = size + 'px'; // Random color spark.style.color = colors[Math.floor(Math.random() * colors.length)]; // Random movement const tx = (Math.random() - 0.5) * 400; const ty = (Math.random() - 0.5) * 400; spark.style.setProperty('--tx', tx + 'px'); spark.style.setProperty('--ty', ty + 'px'); // Random duration const duration = 8 + Math.random() * 8; spark.style.animation = `floatSpark ${duration}s ease-in-out forwards, pulse 2s ease-in-out infinite`; container.appendChild(spark); // Remove after animation setTimeout(() => { spark.remove(); }, duration * 1000); }, 2000); } // Start creating sparks when page loads document.addEventListener('DOMContentLoaded', createBackgroundSparks); // Scroll reveal animations document.addEventListener('DOMContentLoaded', () => { const revealElements = document.querySelectorAll('.reveal'); const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.classList.add('active'); // Reset transition delay after animation completes setTimeout(() => { entry.target.style.transitionDelay = '0s'; }, 1000); } }); }, { threshold: 0.15, rootMargin: '0px 0px -100px 0px' }); // Add staggered transition delays to each element revealElements.forEach((el, index) => { el.style.transitionDelay = `${index * 0.1}s`; observer.observe(el); }); }); function copyToClipboard(text, button) { navigator.clipboard.writeText(text).then(() => { const originalText = button.textContent; button.textContent = '✓ Copied!'; button.classList.add('copied'); setTimeout(() => { button.textContent = originalText; button.classList.remove('copied'); }, 2000); }).catch(err => { console.error('Failed to copy:', err); }); } </script> </head> <body class="bg-gradient-to-br from-slate-950 via-slate-900 to-blue-950 text-white"> <!-- Navigation --> <nav class="fixed top-0 w-full z-50 glass-effect"> <div class="container mx-auto px-6 py-4"> <div class="flex items-center justify-between"> <div class="flex items-center space-x-2"> <div class="relative"> <img src="sitecore-mcp.svg" alt="Sitecore MCP Logo" class="w-8 h-8"> <!-- AI Sparks --> <svg class="absolute -top-1 -right-1 w-3 h-3 animate-pulse" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#fcd34d"/> </svg> <svg class="absolute top-0 -left-1 w-2.5 h-2.5 animate-ping" style="animation-delay: 0.5s;" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#67e8f9"/> </svg> <svg class="absolute -bottom-1 right-0 w-2 h-2 animate-pulse" style="animation-delay: 1s;" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#93c5fd"/> </svg> </div> <span class="text-2xl font-bold">Sitecore MCP</span> </div> <div class="hidden md:flex space-x-8"> <a href="#features" class="hover:text-red-400 transition">Features</a> <a href="#tools" class="hover:text-red-400 transition">Tools</a> <a href="#quickstart" class="hover:text-red-400 transition">Quick Start</a> <a href="https://github.com/GaryWenneker/SitecoreMCP" target="_blank" class="hover:text-red-400 transition">GitHub</a> </div> </div> </div> </nav> <!-- Hero Section --> <section class="pt-32 pb-20 px-6"> <div class="container mx-auto text-center"> <div class="float-animation inline-block mb-8 relative"> <div class="relative"> <img src="sitecore-mcp.svg" alt="Sitecore MCP Logo" class="w-32 h-32"> <!-- AI Sparks Around Logo --> <svg class="absolute -top-2 -right-2 w-4 h-4 animate-pulse shadow-lg" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#fcd34d"/> </svg> <svg class="absolute top-2 -left-3 w-3.5 h-3.5 animate-ping" style="animation-delay: 0.3s;" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#67e8f9"/> </svg> <svg class="absolute -bottom-2 -right-1 w-3 h-3 animate-pulse" style="animation-delay: 0.6s;" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#60a5fa"/> </svg> <svg class="absolute -bottom-1 -left-2 w-3.5 h-3.5 animate-ping" style="animation-delay: 0.9s;" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#c084fc"/> </svg> <svg class="absolute top-0 right-2 w-2.5 h-2.5 animate-pulse" style="animation-delay: 1.2s;" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#86efac"/> </svg> <svg class="absolute bottom-2 left-0 w-2.5 h-2.5 animate-ping" style="animation-delay: 1.5s;" viewBox="0 0 71.030968 68.526428" xmlns="http://www.w3.org/2000/svg"> <path d="m 35.345941,0.014842 c -1.22171,0.233045 -1.5262,5.254436 -1.76475,6.334498 -1.28946,5.838075 -3.649978,11.760683 -7.835698,16.139583 -5.29517,5.53953 -12.168731,8.338673 -19.568831,9.842293 -0.97406,0.19792 -6.601506,0.545467 -6.151046,1.995227 0.34982,1.12585 3.839969,1.199129 4.828129,1.423169 4.64575,1.05329 9.31159,2.215852 13.49375,4.578532 10.54587,5.957825 14.936127,16.642955 16.404167,28.198275 2.42069,-0.18859 2.213016,-4.42532 2.680456,-6.35 1.4938,-6.15077 3.805746,-12.39114 8.442896,-16.910075 5.07903,-4.94954 11.499458,-7.368367 18.245398,-9.052677 1.21603,-0.30362 6.667774,-0.678247 6.900354,-2.083077 0.16851,-1.01783 -1.796537,-1.040634 -2.402437,-1.130164 -3.04456,-0.4499 -6.048284,-1.082999 -8.995834,-1.970939 -10.41256,-3.13676 -17.566603,-10.168852 -20.989933,-20.446814 -0.89238,-2.679205 -1.541393,-5.418678 -2.007113,-8.202083 -0.1083,-0.647223 -0.219088,-2.568029 -1.279508,-2.365748 z" fill="#f9a8d4"/> </svg> </div> <!-- Glow effect --> <div class="absolute inset-0 bg-gradient-to-r from-cyan-500/20 via-blue-500/20 to-purple-500/20 blur-xl animate-pulse"></div> </div> <h1 class="text-5xl md:text-7xl font-bold mb-6 bg-clip-text text-transparent bg-gradient-to-r from-red-400 to-orange-500"> Sitecore MCP Server </h1> <p class="text-xl md:text-2xl text-gray-300 mb-8 max-w-3xl mx-auto"> AI-Powered Sitecore Integration via Model Context Protocol </p> <p class="text-lg text-gray-400 mb-12 max-w-2xl mx-auto"> Connect your Sitecore CMS with AI assistants like Claude and GitHub Copilot. Query content, manage versions, and perform CRUD operations using natural language. </p> <div class="flex flex-wrap justify-center gap-4 mb-12"> <a href="https://github.com/GaryWenneker/SitecoreMCP" class="px-8 py-4 bg-gradient-to-r from-red-600 to-orange-600 rounded-lg font-semibold hover:shadow-2xl hover:scale-105 transition transform"> View on GitHub </a> <a href="#quickstart" class="px-8 py-4 glass-effect rounded-lg font-semibold hover:bg-white/20 transition"> Get Started </a> </div> <!-- Badges --> <div class="flex flex-wrap justify-center gap-3 mb-4"> <img src="https://github.com/GaryWenneker/SitecoreMCP/actions/workflows/ci.yml/badge.svg" alt="CI"> <img src="https://img.shields.io/badge/TypeScript-5.7-blue.svg" alt="TypeScript"> <img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License"> <img src="https://img.shields.io/badge/node-%3E%3D18-brightgreen.svg" alt="Node.js"> </div> <!-- Stats Highlight --> <div class="grid grid-cols-2 md:grid-cols-4 gap-6 max-w-4xl mx-auto mt-16"> <div class="text-center glass-effect p-6 rounded-xl hover:scale-110 transition transform reveal"> <div class="text-5xl font-bold bg-clip-text text-transparent bg-gradient-to-r from-red-400 to-orange-500 mb-2">21</div> <div class="text-sm text-gray-300 font-semibold">MCP Tools</div> </div> <div class="text-center glass-effect p-6 rounded-xl hover:scale-110 transition transform reveal"> <div class="text-5xl font-bold bg-clip-text text-transparent bg-gradient-to-r from-orange-400 to-amber-500 mb-2">100%</div> <div class="text-sm text-gray-300 font-semibold">Test Coverage</div> </div> <div class="text-center glass-effect p-6 rounded-xl hover:scale-110 transition transform reveal"> <div class="text-5xl font-bold bg-clip-text text-transparent bg-gradient-to-r from-rose-400 to-pink-500 mb-2">10+</div> <div class="text-sm text-gray-300 font-semibold">IDE Integrations</div> </div> <div class="text-center glass-effect p-6 rounded-xl hover:scale-110 transition transform reveal"> <div class="text-5xl font-bold bg-clip-text text-transparent bg-gradient-to-r from-emerald-400 to-teal-500 mb-2">MIT</div> <div class="text-sm text-gray-300 font-semibold">Open Source</div> </div> </div> </div> </section> <!-- Features Section --> <section id="features" class="py-20 px-6"> <div class="container mx-auto"> <h2 class="text-4xl font-bold text-center mb-16">Why Sitecore MCP?</h2> <div class="grid md:grid-cols-3 gap-8"> <div class="glass-effect p-8 rounded-2xl hover:scale-105 transition transform reveal"> <div class="w-16 h-16 bg-red-600 rounded-lg flex items-center justify-center mb-6"> <svg class="w-8 h-8" fill="white" viewBox="0 0 24 24"> <path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/> </svg> </div> <h3 class="text-2xl font-bold mb-4">21 Powerful Tools</h3> <p class="text-gray-400"> Complete set of MCP tools for item operations, templates, version control, navigation, layouts, and CRUD operations. </p> </div> <div class="glass-effect p-8 rounded-2xl hover:scale-105 transition transform reveal"> <div class="w-16 h-16 bg-orange-600 rounded-lg flex items-center justify-center mb-6"> <svg class="w-8 h-8" fill="white" viewBox="0 0 24 24"> <path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"/> </svg> </div> <h3 class="text-2xl font-bold mb-4">GraphQL Integration</h3> <p class="text-gray-400"> Built on Sitecore's GraphQL API with optimized queries, pagination support, and comprehensive error handling. </p> </div> <div class="glass-effect p-8 rounded-2xl hover:scale-105 transition transform reveal"> <div class="w-16 h-16 bg-rose-600 rounded-lg flex items-center justify-center mb-6"> <svg class="w-8 h-8" fill="white" viewBox="0 0 24 24"> <path d="M20 6h-2.18c.11-.31.18-.65.18-1 0-1.66-1.34-3-3-3-1.05 0-1.96.54-2.5 1.35l-.5.67-.5-.68C10.96 2.54 10.05 2 9 2 7.34 2 6 3.34 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2zm0-5H4V8h5.08L7 10.83 8.62 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H20v6z"/> </svg> </div> <h3 class="text-2xl font-bold mb-4">AI Assistant Ready</h3> <p class="text-gray-400"> Works seamlessly with Claude Desktop, GitHub Copilot, VS Code, Cursor, and other MCP-compatible AI tools. </p> </div> </div> </div> </section> <!-- Tools Overview --> <section id="tools" class="py-20 px-6 bg-black/30"> <div class="container mx-auto"> <h2 class="text-4xl font-bold text-center mb-16">21 MCP Tools</h2> <div class="grid md:grid-cols-2 lg:grid-cols-3 gap-6"> <!-- Item Operations --> <div class="glass-effect p-6 rounded-xl reveal"> <h3 class="text-xl font-bold mb-4 text-red-400">📦 Item Operations</h3> <ul class="space-y-4 text-sm text-gray-300"> <li><strong class="text-white text-base">sitecore_get_item</strong><br><span class="text-gray-400">Retrieve a single content item by path or GUID. Returns complete item metadata including template info, display name, language, version, and hasChildren flag. Supports multi-language queries.</span></li> <li><strong class="text-white text-base">sitecore_get_children</strong><br><span class="text-gray-400">Fetch all direct child items of a parent item. Includes pagination support (first/after parameters) and optional recursive traversal for deep tree navigation.</span></li> <li><strong class="text-white text-base">sitecore_get_field_value</strong><br><span class="text-gray-400">Extract the value of a specific field from an item. Lightweight query for single field retrieval without fetching entire item data.</span></li> <li><strong class="text-white text-base">sitecore_get_item_fields</strong><br><span class="text-gray-400">Get all fields (both own and inherited) from an item's template. Returns field names and values in a structured format. Template-aware field discovery with Helix base template support.</span></li> <li><strong class="text-white text-base">sitecore_query</strong><br><span class="text-gray-400">Execute custom Sitecore fast queries using XPath-like syntax (e.g., /sitecore/content//*[@@templatename='Page']). Supports complex filtering and template-based searches.</span></li> <li><strong class="text-white text-base">sitecore_search</strong><br><span class="text-gray-400">Powerful search with filters (path_contains, name_contains, template_in, hasChildren, hasLayout), ordering by name/path/displayName, and faceted search capabilities.</span></li> <li><strong class="text-white text-base">sitecore_search_paginated</strong><br><span class="text-gray-400">Search with cursor-based pagination. Returns pageInfo with hasNextPage/hasPreviousPage flags and totalCount. Use endCursor for next page fetching.</span></li> </ul> </div> <!-- Template Operations --> <div class="glass-effect p-6 rounded-xl reveal"> <h3 class="text-xl font-bold mb-4 text-orange-400">📋 Template Operations</h3> <ul class="space-y-4 text-sm text-gray-300"> <li><strong class="text-white text-base">sitecore_get_template</strong><br><span class="text-gray-400">Retrieve complete template definition including all sections, fields, field types, and base template inheritance chain. Essential for understanding item structure in Helix architecture (Foundation/Feature/Project layers).</span></li> <li><strong class="text-white text-base">sitecore_get_templates</strong><br><span class="text-gray-400">Fetch multiple template definitions with optional path filtering (e.g., /sitecore/templates/User Defined). Returns template hierarchies with field definitions for batch template analysis.</span></li> </ul> </div> <!-- Version Control --> <div class="glass-effect p-6 rounded-xl reveal"> <h3 class="text-xl font-bold mb-4 text-rose-400">🕐 Version Control</h3> <ul class="space-y-4 text-sm text-gray-300"> <li><strong class="text-white text-base">sitecore_get_item_versions</strong><br><span class="text-gray-400">Retrieve complete version history for an item in a specific language. Returns all version numbers with metadata, enabling version comparison and audit trail analysis.</span></li> <li><strong class="text-white text-base">sitecore_get_item_with_statistics</strong><br><span class="text-gray-400">Get item data enriched with Statistics inline fragment: Created/Updated timestamps, CreatedBy/UpdatedBy user names, and Revision ID. Perfect for audit logs and change tracking.</span></li> </ul> </div> <!-- Navigation --> <div class="glass-effect p-6 rounded-xl reveal"> <h3 class="text-xl font-bold mb-4 text-amber-400">🧭 Navigation</h3> <ul class="space-y-4 text-sm text-gray-300"> <li><strong class="text-white text-base">sitecore_get_parent</strong><br><span class="text-gray-400">Navigate one level up in the content tree. Returns the immediate parent item with full metadata. Useful for breadcrumb generation and upward tree traversal.</span></li> <li><strong class="text-white text-base">sitecore_get_ancestors</strong><br><span class="text-gray-400">Get complete ancestor path from current item to /sitecore root. Returns ordered array of all parent items, grandparents, etc. Essential for full breadcrumb trails and hierarchical context.</span></li> </ul> </div> <!-- Layout & Sites --> <div class="glass-effect p-6 rounded-xl reveal"> <h3 class="text-xl font-bold mb-4 text-pink-400">🎨 Layout & Sites</h3> <ul class="space-y-4 text-sm text-gray-300"> <li><strong class="text-white text-base">sitecore_get_layout</strong><br><span class="text-gray-400">Retrieve complete presentation details for a route including all placeholders, renderings, datasources, and rendering parameters. Uses site name and route path for JSS/Headless scenarios.</span></li> <li><strong class="text-white text-base">sitecore_get_sites</strong><br><span class="text-gray-400">Get Sitecore site definitions with filtering by name or current site. Returns site root paths, hostnames, language settings, and system/user site classifications.</span></li> </ul> </div> <!-- Mutations --> <div class="glass-effect p-6 rounded-xl reveal"> <h3 class="text-xl font-bold mb-4 text-emerald-400">✏️ Mutations</h3> <ul class="space-y-4 text-sm text-gray-300"> <li><strong class="text-white text-base">sitecore_create_item</strong><br><span class="text-gray-400">Create new content items via GraphQL mutations. Specify name, template path/ID, parent path, language, and optional field values. Returns created item with GUID and full metadata.</span></li> <li><strong class="text-white text-base">sitecore_update_item</strong><br><span class="text-gray-400">Modify existing item properties including name, field values, and version-specific changes. Supports multi-language updates with language and version parameters.</span></li> <li><strong class="text-white text-base">sitecore_delete_item</strong><br><span class="text-gray-400">Remove items from Sitecore with deletePermanently flag. False moves to recycle bin (soft delete), true removes permanently. Requires appropriate permissions.</span></li> </ul> </div> <!-- Advanced --> <div class="glass-effect p-6 rounded-xl md:col-span-2 lg:col-span-3 reveal"> <h3 class="text-xl font-bold mb-4 text-red-400">🔬 Advanced Features</h3> <div class="grid md:grid-cols-3 gap-6 text-sm text-gray-300"> <div><strong class="text-white text-base">sitecore_scan_schema</strong><br><span class="text-gray-400">Perform GraphQL introspection to discover all available queries, mutations, types, and fields. Analyzes schema capabilities and saves comprehensive type definitions to JSON for reference.</span></div> <div><strong class="text-white text-base">sitecore_command</strong><br><span class="text-gray-400">Natural language interface that interprets plain English commands and executes appropriate MCP tools. Examples: "get item /sitecore/content/Home", "search for articles", "find items with template Page".</span></div> <div><strong class="text-white text-base">sitecore_discover_item_dependencies</strong><br><span class="text-gray-400">Comprehensive discovery tool (NEW v1.6.0) that retrieves content item with complete dependency graph: template definition, inheritance chain, all fields (own + inherited), associated renderings, and GraphQL resolvers. Opt-in rendering/resolver discovery for performance.</span></div> </div> </div> </div> </div> </section> <!-- Quick Start --> <section id="quickstart" class="py-20 px-6"> <div class="container mx-auto max-w-4xl"> <h2 class="text-4xl font-bold text-center mb-16">Quick Start</h2> <div class="glass-effect p-8 rounded-2xl mb-8 reveal"> <h3 class="text-2xl font-bold mb-4">1. Install Dependencies</h3> <div class="code-container relative bg-black/50 p-4 rounded-lg font-mono text-sm overflow-x-auto"> <button class="copy-button" onclick="copyToClipboard('npm install\nnpm run build', this)">Copy</button> <code class="text-green-400">npm install</code><br> <code class="text-green-400">npm run build</code> </div> </div> <div class="glass-effect p-8 rounded-2xl mb-8 reveal"> <h3 class="text-2xl font-bold mb-4">2. Configure Environment</h3> <div class="code-container relative bg-black/50 p-4 rounded-lg font-mono text-sm overflow-x-auto"> <button class="copy-button" onclick="copyToClipboard('# .env\nSITECORE_HOST=https://your-sitecore-instance.com\nSITECORE_ENDPOINT=https://your-sitecore-instance.com/sitecore/api/graph/items/master\nSITECORE_API_KEY=your-api-key-here\nSITECORE_USERNAME=sitecore\\\\admin\nSITECORE_PASSWORD=your-password', this)">Copy</button> <code class="text-gray-400"># .env</code><br> <code class="text-blue-400">SITECORE_HOST</code>=<span class="text-yellow-300">https://your-sitecore-instance.com</span><br> <code class="text-blue-400">SITECORE_ENDPOINT</code>=<span class="text-yellow-300">https://your-sitecore-instance.com/sitecore/api/graph/items/master</span><br> <code class="text-blue-400">SITECORE_API_KEY</code>=<span class="text-yellow-300">your-api-key-here</span><br> <code class="text-blue-400">SITECORE_USERNAME</code>=<span class="text-yellow-300">sitecore\admin</span><br> <code class="text-blue-400">SITECORE_PASSWORD</code>=<span class="text-yellow-300">your-password</span> </div> </div> <div class="glass-effect p-8 rounded-2xl mb-8 reveal"> <h3 class="text-2xl font-bold mb-4">3. Run Tests</h3> <div class="code-container relative bg-black/50 p-4 rounded-lg font-mono text-sm overflow-x-auto"> <button class="copy-button" onclick="copyToClipboard('.\\scripts\\tests\\run-tests.ps1', this)">Copy</button> <code class="text-green-400">.\scripts\tests\run-tests.ps1</code><br> <code class="text-gray-400"># Expected: 17/17 tests passed (100%)</code> </div> </div> <div class="glass-effect p-8 rounded-2xl reveal"> <h3 class="text-2xl font-bold mb-4">4. Configure Your AI Assistant</h3> <p class="text-gray-400 mb-4">Add to your Claude Desktop, VS Code, or Cursor configuration:</p> <div class="code-container bg-black/50 p-6 rounded-lg overflow-x-auto relative"> <button class="copy-button" onclick='copyToClipboard(`{ "servers": { "Sitecore": { "command": "node", "args": [ "C:\\\\path\\\\to\\\\SitecoreMCP\\\\dist\\\\index.js" ], "env": { "SITECORE_HOST": "https://your-sitecore-instance.com", "SITECORE_ENDPOINT": "https://your-sitecore-instance.com/sitecore/api/graph/items/master", "SITECORE_USERNAME": "your-username", "SITECORE_PASSWORD": "your-password", "SITECORE_API_KEY": "{YOUR-API-KEY-GUID}" } } } }`, this)'>Copy</button> <div class="flex"> <!-- Line numbers --> <div class="select-none pr-4 text-gray-600 font-mono text-sm leading-relaxed"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> <div>13</div> <div>14</div> <div>15</div> <div>16</div> <div>17</div> </div> <!-- Code with syntax highlighting and indent rainbow --> <pre class="font-mono text-sm leading-relaxed flex-1"><code><span class="text-yellow-400">{</span> <span class="text-sky-300" style="padding-left: 1rem;"> "</span><span class="text-blue-300">servers</span><span class="text-sky-300">":</span> <span class="text-yellow-400">{</span> <span class="text-teal-300" style="padding-left: 2rem;"> "</span><span class="text-green-300">Sitecore</span><span class="text-teal-300">":</span> <span class="text-yellow-400">{</span> <span class="text-indigo-300" style="padding-left: 3rem;"> "</span><span class="text-cyan-300">command</span><span class="text-indigo-300">":</span> <span class="text-orange-300">"node"</span><span class="text-gray-400">,</span> <span class="text-indigo-300" style="padding-left: 3rem;"> "</span><span class="text-cyan-300">args</span><span class="text-indigo-300">":</span> <span class="text-yellow-400">[</span> <span class="text-indigo-300" style="padding-left: 4rem;"> </span><span class="text-orange-300">"C:\\path\\to\\SitecoreMCP\\dist\\index.js"</span> <span class="text-indigo-300" style="padding-left: 3rem;"> </span><span class="text-yellow-400">]</span><span class="text-gray-400">,</span> <span class="text-indigo-300" style="padding-left: 3rem;"> "</span><span class="text-cyan-300">env</span><span class="text-indigo-300">":</span> <span class="text-yellow-400">{</span> <span class="text-blue-300" style="padding-left: 4rem;"> "</span><span class="text-emerald-300">SITECORE_HOST</span><span class="text-blue-300">":</span> <span class="text-orange-300">"https://your-sitecore-instance.com"</span><span class="text-gray-400">,</span> <span class="text-blue-300" style="padding-left: 4rem;"> "</span><span class="text-emerald-300">SITECORE_ENDPOINT</span><span class="text-blue-300">":</span> <span class="text-orange-300">"https://your-sitecore-instance.com/sitecore/api/graph/items/master"</span><span class="text-gray-400">,</span> <span class="text-blue-300" style="padding-left: 4rem;"> "</span><span class="text-emerald-300">SITECORE_USERNAME</span><span class="text-blue-300">":</span> <span class="text-orange-300">"your-username"</span><span class="text-gray-400">,</span> <span class="text-blue-300" style="padding-left: 4rem;"> "</span><span class="text-emerald-300">SITECORE_PASSWORD</span><span class="text-blue-300">":</span> <span class="text-orange-300">"your-password"</span><span class="text-gray-400">,</span> <span class="text-blue-300" style="padding-left: 4rem;"> "</span><span class="text-emerald-300">SITECORE_API_KEY</span><span class="text-blue-300">":</span> <span class="text-orange-300">"{YOUR-API-KEY-GUID}"</span> <span class="text-indigo-300" style="padding-left: 3rem;"> </span><span class="text-yellow-400">}</span> <span class="text-teal-300" style="padding-left: 2rem;"> </span><span class="text-yellow-400">}</span> <span class="text-sky-300" style="padding-left: 1rem;"> </span><span class="text-yellow-400">}</span> <span class="text-yellow-400">}</span></code></pre> </div> </div> </div> </div> </div> </section> <!-- Stats Section --> <section class="py-20 px-6 bg-black/30"> <div class="container mx-auto"> <div class="grid md:grid-cols-4 gap-8 text-center"> <div> <div class="text-5xl font-bold text-purple-400 mb-2">21</div> <div class="text-gray-400">MCP Tools</div> </div> <div> <div class="text-5xl font-bold text-pink-400 mb-2">100%</div> <div class="text-gray-400">Test Coverage</div> </div> <div> <div class="text-5xl font-bold text-indigo-400 mb-2">10+</div> <div class="text-gray-400">IDE Integrations</div> </div> <div> <div class="text-5xl font-bold text-blue-400 mb-2">MIT</div> <div class="text-gray-400">Open Source</div> </div> </div> </div> </section> <!-- Footer --> <footer class="py-12 px-6 border-t border-white/10"> <div class="container mx-auto text-center"> <p class="text-gray-400 mb-4"> Built with ❤️ by <a href="https://gary.wenneker.org" class="text-purple-400 hover:text-purple-300" target="_blank">Gary Wenneker</a> </p> <div class="flex justify-center space-x-6"> <a href="https://github.com/GaryWenneker/SitecoreMCP" class="text-gray-400 hover:text-white transition"> <svg class="w-6 h-6" fill="currentColor" viewBox="0 0 24 24"> <path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/> </svg> </a> <a href="https://www.linkedin.com/in/garywenneker/" class="text-gray-400 hover:text-white transition"> <svg class="w-6 h-6" fill="currentColor" viewBox="0 0 24 24"> <path d="M19 0h-14c-2.761 0-5 2.239-5 5v14c0 2.761 2.239 5 5 5h14c2.762 0 5-2.239 5-5v-14c0-2.761-2.238-5-5-5zm-11 19h-3v-11h3v11zm-1.5-12.268c-.966 0-1.75-.79-1.75-1.764s.784-1.764 1.75-1.764 1.75.79 1.75 1.764-.783 1.764-1.75 1.764zm13.5 12.268h-3v-5.604c0-3.368-4-3.113-4 0v5.604h-3v-11h3v1.765c1.396-2.586 7-2.777 7 2.476v6.759z"/> </svg> </a> </div> <p class="text-gray-500 text-sm mt-6"> © 2025 Sitecore MCP Server. Licensed under MIT. </p> </div> </footer> <script> // Smooth scrolling document.querySelectorAll('a[href^="#"]').forEach(anchor => { anchor.addEventListener('click', function (e) { e.preventDefault(); const target = document.querySelector(this.getAttribute('href')); if (target) { target.scrollIntoView({ behavior: 'smooth', block: 'start' }); } }); }); </script> </body> </html>

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GaryWenneker/SitecoreMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server