[{"data":1,"prerenderedAt":814},["ShallowReactive",2],{"/en-us/topics/ai/model-context-protocol":3,"navigation-en-us":133,"banner-en-us":551,"footer-en-us":560,"next-steps-en-us":804},{"id":4,"title":5,"body":6,"category":6,"config":6,"content":7,"description":6,"extension":124,"meta":125,"navigation":126,"path":127,"seo":128,"slug":6,"stem":131,"testContent":6,"type":6,"__hash__":132},"pages/en-us/topics/ai/model-context-protocol/index.yml","",null,[8,18,25,86,122],{"type":9,"componentName":9,"componentContent":10},"CommonBreadcrumbs",{"crumbs":11},[12,16],{"title":13,"config":14},"Topics",{"href":15},"/topics/",{"title":17},"What is Model Context Protocol (MCP)?",{"type":19,"componentName":19,"componentContent":20},"CommonArticleHero",{"title":21,"text":22,"config":23},"Model Context Protocol (MCP)","By providing a single, standardized way to connect large language models (LLMs) to any data source or tool, Model Context Protocol (MCP) eliminates the need for countless custom integrations and enables truly connected AI systems that can scale across the entire ecosystem of applications people actually use.",{"id":24},"model-context-protocol-mcp",{"type":26,"componentName":26,"componentContent":27},"CommonSideNavigationWithTree",{"components":28,"anchors":65},[29,35,41,47,53,59],{"type":30,"componentName":30,"componentContent":31},"TopicsCopy",{"header":17,"text":32,"config":33},"The Model Context Protocol (MCP) is an open source framework that standardizes how AI systems share data with external tools and data sources. This is important because AI tools are only as powerful as the data they have access to. Like a USB-C port for AI apps, MCP gives users a standard protocol for building secure connections between their AI tools and relevant data sources, enabling AI systems to maintain context between different tools and datasets.\n\nBefore MCP, each new data source required a custom implementation. If you wanted your AI assistant to access your customer database to retrieve or create tables, read files from cloud storage, or interact with your CRM system, you’d need separate, custom-built connections for each service, leveraging complex Retrieval Augmented Generation (RAG) setups or large language model ([LLM](https://about.gitlab.com/blog/what-is-a-large-language-model-llm/)) tool calling, which increased complexity and maintenance. MCP changes this by providing a unified protocol that works across different systems and applications.\n\nHere’s another way to think about it: Before MCP, integrating _N_ different AI applications with _M_ different tools required _N x M_ custom integrations. In other words, a company wanting to connect five AI applications with ten different services would need 50 (5 x 10) separate integration projects. MCP transforms this into a much simpler _N + M_ equation, since each AI application only needs to implement MCP once.\n\nThe protocol operates on a simple but powerful principle: AI applications connect to MCP servers that expose specific capabilities like tools, resources, and prompts. This design maintains security with clear permission controls. It also stays flexible to work with almost any system.\n\nIn addition, MCP allows AI systems to query live data and then trigger actions through reusable prompt templates. MCP can also help to optimize AI flows by creating prompt templates and managing content repositories.\n\n**Key features of MCP:**\n- **Seamless API integrations**: Provides a standardized API layer for AI systems, ensuring structured data for LLMs without having to build custom endpoints. This results in better outputs, less maintenance, and more reliability.\n- **Remote services**: Securely connects MCP hosts with remote servers and ensures all connections are authenticated and logged.\n- **Debugging tools**: MCP offers built-in logging, simplifying the troubleshooting process when developers are monitoring AI interactions with the systems they're connecting to.\n- **Developer SDKs**: C#, Java, Kotlin, Python, Ruby, Rust, Swift, and TypeScript SDKs are available for integration and extensibility (the ecosystem is evolving fast, and new SDKs may be available).\n\nMCP is essential for AI-native environments, enabling smarter, more interactive, and adaptable AI solutions.",{"id":34},"what-is-model-context-protocol",{"type":30,"componentName":30,"componentContent":36},{"header":37,"text":38,"config":39},"Why MCP matters","MCP matters because it breaks down the data silos that currently limit LLMs and AI agents, allowing them to access and work with the information stored in actual business systems. Rather than operating in isolation, they are trained on dynamic context, pulling data from development environments and data repositories.\n\nCrucially, MCP shifts the responsibility for maintaining these connections to the service providers themselves: When a service provider updates their API, for example, they simply need to maintain their official MCP server rather than forcing every other company to update their custom integrations. This ecosystem approach enables businesses to leverage official, up-to-date MCP servers from the services they use, creating a more sustainable and reliable foundation for AI integrations.\n\nThe benefits are substantial:\n\n**For developers:**\n- **Streamlined integrations**: MCP provides standardized integration patterns that reduce learning curves and accelerate project timelines.\n- **Reduced overhead**: Rather than researching unique authentication flows and API structures for each new service, developers can focus on business logic while relying on consistent MCP patterns.\n\n**For businesses:**\n- **Real-time intelligence**: MCP enables AI agents to access live business data, interact with existing tools, and perform real work within an organization’s systems while maintaining strict security controls.\n- **Improved organization**: By linking with content repositories and cloud services, MCP helps maintain organized data flow and storage.\n\n**For AI applications:**\n- **Better insights**: With MCP, AI systems can maintain context across multiple tools and provide insights based on current information rather than outdated training data.\n- **Improved communication**: MCP acts as a communication bridge between [AI agents](https://about.gitlab.com/topics/agentic-ai/) and data sources. It allows MCP servers and clients to interact smoothly, enhancing the performance of AI tools.\n\n### Advantages for businesses\nAI assistants can write and execute code to interface with remote systems. However, they often make mistakes or do things in a sub-optimal way. Giving an AI tool access to an MCP server is like handing it a how-to book. It's no longer learning from first principles how to do something; it follows the guide.\n\nBy integrating MCP, businesses can leverage advanced features for server management and API integrations, leading to improved productivity. With its focus on flexibility and compatibility, MCP supports diverse computing environments and ensures the smooth functioning of AI tasks across different platforms.\n\n### Advantages for AI systems\nMCP plays a transformative role in enhancing AI systems' capabilities. By providing a structured framework, MCP supports AI agents and assistants in executing complex tasks. This leads to improved performance and reliability, making AI applications more effective. By working with LLMs, MCP also facilitates better data interpretation and decision-making processes.\n\nAs a result, businesses can benefit from AI systems that are more intuitive and responsive. The protocol's adaptability to prompt templates and content repositories further enhances the accuracy and relevance of AI-generated outputs.\n\n### Improvements in data interchange\nMCP significantly improves the way data is exchanged between different systems. By streamlining server-client interactions, it ensures efficient and reliable data transfer, minimizing errors and delays. MCP's strong API integrations let different remote services talk smoothly.\n\nThis capability is essential for businesses that rely on real-time data for decision-making. MCP's compatibility with AI assistants and various SDKs enhances inter-system connectivity, making data interchange smoother. By adopting MCP, organizations can make their data systems more robust and dependable, leading to improved performance and productivity.",{"id":40},"why-mcp-matters",{"type":30,"componentName":30,"componentContent":42},{"header":43,"text":44,"config":45},"How MCP works","MCP operates on a request-response flow between AI systems and servers. The AI system requests **resources** (data), calls **tools** (actions), or queries **prompts** (templates). The MCP server authenticates and authorizes the request, and returns the appropriate response.\n\nMCP uses a client-server architecture where an MCP host (an AI application) connects to multiple MCP servers. For each server connection, the MCP host spawns a dedicated MCP client that maintains an exclusive one-to-one relationship with its assigned MCP server.\n\nThe core components of the MCP architecture include:\n- **The MCP host** is the AI application that orchestrates and oversees multiple MCP clients.\n- **The MCP client** is a dedicated component that establishes server connections and retrieves context for the MCP host.\n- **The MCP server** is a service that delivers context and capabilities to MCP clients.\n- **Resources** are structured data objects that AI systems can reference and incorporate into their analysis, such as a list of issues on a GitLab project.\n- **Tools** allow LLMs to interact with external systems, perform computations, and take actions in the real world. The client can use tools to execute functions through an MCP server to achieve some sort of outcome, such as creating a GitLab ticket or sending an email.\n- **Prompts** are a powerful way to standardize and share common actions. An MCP server can provide example prompts to achieve that task. An example is a “code review” template that the client can use to do a review of a GitLab merge request.\n\nThis architecture makes sure that AI systems (applications or agents) can only access what they're authorized to, follow a set of actions with specific guardrails, and produce responses based on real-time, structured data.",{"id":46},"how-mcp-works",{"type":30,"componentName":30,"componentContent":48},{"header":49,"text":50,"config":51},"Practical implementation steps","Implementing MCP in your application environment involves two essential phases: (1) configuring an MCP server and (2) connecting AI systems. This creates a standardized gateway for AI systems to securely access business data and tools while following security-first authentication flows and data governance best practices.\n\nLet's explore how you can establish and utilize an MCP server effectively.\n\n### Setting up an MCP server\n**Initial configuration and planning:**\n- Define resources, tools, and prompts based on your business workflows. Examples include customer profiles, ticket creation, and reusable task templates for responses.\n- Ensure your server environment meets all technical requirements for compatibility with the MCP host, including necessary hardware and compatible software for optimal performance.\n- Implement security-first authentication flows to protect sensitive data and maintain compliance with organizational policies.\n\n**Best practices for server deployment:**\n- Establish robust data governance frameworks to control access permissions and data flow.\n- Plan for scaling considerations from the outset, such as verifying that your MCP server can handle increased load as your AI applications expand.\n- Configure connection management protocols to maintain stable, efficient communications between clients and servers.\n- Optimize resource allocation to allow smooth operation across multiple concurrent requests and responses.\n\nSetting up an MCP server requires careful attention to technical and operational requirements. Begin by confirming your server environment meets compatibility standards for seamless MCP host integration. This foundation supports reliable data transmission and minimizes operational disruptions.\n\nNext, configure server settings to align with your specific AI applications and business requirements. Implement API integrations to connect your server with remote services and data sources, enabling AI agents to access diverse information efficiently. Focus on resource optimization to ensure data flows securely and efficiently throughout your network infrastructure.\n\n### Using MCP with AI assistant tools\nLeveraging MCP with AI tools enhances their capabilities. AI-powered applications can connect to MCP servers to access external tools and data sources, streamlining operations in various settings. By integrating these tools within the MCP framework, AI solutions become more robust and efficient. This setup enables AI agents to access and utilize prompt templates, ensuring responses are accurate and contextually appropriate.\n\nIncorporating debugging tools alongside MCP allows for easy identification and resolution of issues within the AI systems. Debugging tools are crucial for maintaining optimal performance and can help identify areas needing improvement. The synergy between MCP and these tools results in more adaptable and reliable AI solutions. By integrating Python and TypeScript SDKs, developers can further refine and expand functionality, tailoring applications to meet specific needs.\n\nWhen organizations employ MCP in tandem with AI tools, AI agents become proficient in handling complex tasks due to the streamlined communication and data exchange facilitated by the protocol. This collaboration paves the way for innovative applications in real-world scenarios, advancing business and technological goals.",{"id":52},"practical-implementation-steps",{"type":30,"componentName":30,"componentContent":54},{"header":55,"text":56,"config":57},"Enterprise adoption of MCP","Organizations are beginning to recognize MCP's potential for transforming their AI strategy and operational efficiency. Enterprise adoption of MCP represents a strategic shift toward standardized AI infrastructure that can scale across entire organizations while maintaining security and governance requirements.\n\n**Strategic implications for enterprise deployment:**\n\n**Accelerated, cross-functional AI deployment**: MCP enables enterprises to accelerate AI deployment across business units by providing a unified integration framework. Rather than each department developing custom AI connections, organizations can implement MCP once and scale AI capabilities rapidly across sales, marketing, customer service, and operations teams.\n\n**Internal MCP server libraries**: Forward-thinking enterprises are creating internal MCP server libraries that standardize access to proprietary systems and data sources. These internal libraries become organizational assets that enable consistent AI integration patterns across all business units while maintaining centralized security controls.\n\n**Future-proof AI infrastructure**: By adopting MCP, enterprises create AI infrastructure that adapts to evolving business needs without requiring fundamental architectural changes. New AI applications can immediately leverage existing MCP server connections, while new business systems can be integrated once through MCP rather than requiring individual AI application updates.\n\nAs enterprises recognize these strategic advantages, MCP adoption is becoming a competitive differentiator for organizations seeking to maximize their AI investments while maintaining operational efficiency and security standards.",{"id":58},"enterprise-adoption-of-mcp",{"type":30,"componentName":30,"componentContent":60},{"header":61,"text":62,"config":63},"Summary","The Model Context Protocol is a big step forward in AI design. It provides a standard, secure way to link AI systems with outside tools and data. By implementing MCP, organizations can strengthen their AI capabilities while maintaining strong security controls and user privacy.\n\nThe protocol's emphasis on capability negotiation, explicit permissions, and secure communication makes it suitable for enterprise deployments while remaining accessible for individual developers and smaller organizations.\n\nAs the MCP ecosystem continues to grow, we can expect to see broader adoption across AI applications and an expanding library of integrations for common business tools and data sources.",{"id":64},"summary",{"text":66,"data":67},"On this page",[68,71,74,77,80,83],{"text":17,"config":69},{"href":70},"#what-is-model-context-protocol",{"text":37,"config":72},{"href":73},"#why-mcp-matters",{"text":43,"config":75},{"href":76},"#how-mcp-works",{"text":49,"config":78},{"href":79},"#practical-implementation-steps",{"text":55,"config":81},{"href":82},"#enterprise-adoption-of-mcp",{"text":61,"config":84},{"href":85},"#summary",{"type":87,"componentName":87,"componentContent":88},"CommonResourcesContainer",{"header":89,"tabs":90},"Learn more",[91],{"name":92,"config":93,"items":94},"resources",{"key":92},[95,104,112],{"header":96,"type":97,"image":98,"link":101},"Agentic AI guides and resources","Blog",{"altText":96,"config":99},{"src":100},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749498198/Website/Topics/display-the-source-understanding-agentic-ai-article-image-0571-1800x945-fy26.jpg",{"text":89,"config":102},{"href":103,"icon":97},"/blog/agentic-ai-guides-and-resources/",{"header":105,"type":97,"image":106,"link":109},"What is a large language model (LLM)?",{"altText":105,"config":107},{"src":108},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749498214/Website/Topics/LLM_copy.png",{"text":89,"config":110},{"href":111,"icon":97},"/blog/what-is-a-large-language-model-llm/",{"header":113,"type":114,"image":115,"link":118},"Navigating AI maturity in DevSecOps","Report",{"altText":113,"config":116},{"src":117},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749498227/Website/Topics/display-the-source-article-2024-global-devsecOps-survey-image-0476-1800x945-fy25.png",{"text":119,"config":120},"Read the full report",{"href":121,"icon":114},"/resources/developer-survey/2024/ai/",{"type":123,"componentName":123},"CommonNextSteps","yml",{},true,"/en-us/topics/ai/model-context-protocol",{"config":129,"title":17,"ogTitle":17,"description":130,"ogDescription":130},false,"Learn how the Model Context Protocol (MCP) enables seamless AI integration with secure data access, unified communication, and enhanced system connectivity.","en-us/topics/ai/model-context-protocol/index","Sex5dTjw0TIM2fr1hVpvPxwq0Pmnchrm5HnQIf9SNEg",{"logo":134,"freeTrial":139,"sales":144,"login":149,"items":154,"search":471,"minimal":502,"duo":521,"switchNav":530,"pricingDeployment":541},{"config":135},{"href":136,"dataGaName":137,"dataGaLocation":138},"/","gitlab logo","header",{"text":140,"config":141},"Get free trial",{"href":142,"dataGaName":143,"dataGaLocation":138},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":145,"config":146},"Talk to sales",{"href":147,"dataGaName":148,"dataGaLocation":138},"/sales/","sales",{"text":150,"config":151},"Sign in",{"href":152,"dataGaName":153,"dataGaLocation":138},"https://gitlab.com/users/sign_in/","sign in",[155,183,283,288,390,451],{"text":156,"config":157,"menu":159},"Platform",{"dataNavLevelOne":158},"platform",{"type":160,"columns":161},"cards",[162,168,176],{"title":156,"description":163,"link":164},"The intelligent orchestration platform for DevSecOps",{"text":165,"config":166},"Explore our Platform",{"href":167,"dataGaName":158,"dataGaLocation":138},"/platform/",{"title":169,"description":170,"link":171},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":172,"config":173},"Meet GitLab Duo",{"href":174,"dataGaName":175,"dataGaLocation":138},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":177,"description":178,"link":179},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":89,"config":180},{"href":181,"dataGaName":182,"dataGaLocation":138},"/why-gitlab/","why gitlab",{"text":184,"left":126,"config":185,"menu":187},"Product",{"dataNavLevelOne":186},"solutions",{"type":188,"link":189,"columns":193,"feature":262},"lists",{"text":190,"config":191},"View all Solutions",{"href":192,"dataGaName":186,"dataGaLocation":138},"/solutions/",[194,218,241],{"title":195,"description":196,"link":197,"items":202},"Automation","CI/CD and automation to accelerate deployment",{"config":198},{"icon":199,"href":200,"dataGaName":201,"dataGaLocation":138},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[203,207,210,214],{"text":204,"config":205},"CI/CD",{"href":206,"dataGaLocation":138,"dataGaName":204},"/solutions/continuous-integration/",{"text":169,"config":208},{"href":174,"dataGaLocation":138,"dataGaName":209},"gitlab duo agent platform - product menu",{"text":211,"config":212},"Source Code Management",{"href":213,"dataGaLocation":138,"dataGaName":211},"/solutions/source-code-management/",{"text":215,"config":216},"Automated Software Delivery",{"href":200,"dataGaLocation":138,"dataGaName":217},"Automated software delivery",{"title":219,"description":220,"link":221,"items":226},"Security","Deliver code faster without compromising security",{"config":222},{"href":223,"dataGaName":224,"dataGaLocation":138,"icon":225},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[227,231,236],{"text":228,"config":229},"Application Security Testing",{"href":223,"dataGaName":230,"dataGaLocation":138},"Application security testing",{"text":232,"config":233},"Software Supply Chain Security",{"href":234,"dataGaLocation":138,"dataGaName":235},"/solutions/supply-chain/","Software supply chain security",{"text":237,"config":238},"Software Compliance",{"href":239,"dataGaName":240,"dataGaLocation":138},"/solutions/software-compliance/","software compliance",{"title":242,"link":243,"items":248},"Measurement",{"config":244},{"icon":245,"href":246,"dataGaName":247,"dataGaLocation":138},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[249,253,257],{"text":250,"config":251},"Visibility & Measurement",{"href":246,"dataGaLocation":138,"dataGaName":252},"Visibility and Measurement",{"text":254,"config":255},"Value Stream Management",{"href":256,"dataGaLocation":138,"dataGaName":254},"/solutions/value-stream-management/",{"text":258,"config":259},"Analytics & Insights",{"href":260,"dataGaLocation":138,"dataGaName":261},"/solutions/analytics-and-insights/","Analytics and insights",{"title":263,"type":188,"items":264},"GitLab for",[265,271,277],{"text":266,"config":267},"Enterprise",{"icon":268,"href":269,"dataGaLocation":138,"dataGaName":270},"Building","/enterprise/","enterprise",{"text":272,"config":273},"Small Business",{"icon":274,"href":275,"dataGaLocation":138,"dataGaName":276},"Work","/small-business/","small business",{"text":278,"config":279},"Public Sector",{"icon":280,"href":281,"dataGaLocation":138,"dataGaName":282},"Organization","/solutions/public-sector/","public sector",{"text":284,"config":285},"Pricing",{"href":286,"dataGaName":287,"dataGaLocation":138,"dataNavLevelOne":287},"/pricing/","pricing",{"text":289,"config":290,"menu":291},"Resources",{"dataNavLevelOne":92},{"type":188,"link":292,"columns":296,"feature":379},{"text":293,"config":294},"View all resources",{"href":295,"dataGaName":92,"dataGaLocation":138},"/resources/",[297,330,351],{"title":298,"items":299},"Getting started",[300,305,310,315,320,325],{"text":301,"config":302},"Install",{"href":303,"dataGaName":304,"dataGaLocation":138},"/install/","install",{"text":306,"config":307},"Quick start guides",{"href":308,"dataGaName":309,"dataGaLocation":138},"/get-started/","quick setup checklists",{"text":311,"config":312},"Learn",{"href":313,"dataGaLocation":138,"dataGaName":314},"https://university.gitlab.com/","learn",{"text":316,"config":317},"Product documentation",{"href":318,"dataGaName":319,"dataGaLocation":138},"https://docs.gitlab.com/","product documentation",{"text":321,"config":322},"Best practice videos",{"href":323,"dataGaName":324,"dataGaLocation":138},"/getting-started-videos/","best practice videos",{"text":326,"config":327},"Integrations",{"href":328,"dataGaName":329,"dataGaLocation":138},"/integrations/","integrations",{"title":331,"items":332},"Discover",[333,338,342,346],{"text":334,"config":335},"Customer success stories",{"href":336,"dataGaName":337,"dataGaLocation":138},"/customers/","customer success stories",{"text":97,"config":339},{"href":340,"dataGaName":341,"dataGaLocation":138},"/blog/","blog",{"text":343,"config":344},"The Source",{"href":345,"dataGaName":341,"dataGaLocation":138},"/the-source/",{"text":347,"config":348},"Remote",{"href":349,"dataGaName":350,"dataGaLocation":138},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":352,"items":353},"Connect",[354,359,364,369,374],{"text":355,"config":356},"GitLab Services",{"href":357,"dataGaName":358,"dataGaLocation":138},"/services/","services",{"text":360,"config":361},"Community",{"href":362,"dataGaName":363,"dataGaLocation":138},"/community/","community",{"text":365,"config":366},"Forum",{"href":367,"dataGaName":368,"dataGaLocation":138},"https://forum.gitlab.com/","forum",{"text":370,"config":371},"Events",{"href":372,"dataGaName":373,"dataGaLocation":138},"/events/","events",{"text":375,"config":376},"Partners",{"href":377,"dataGaName":378,"dataGaLocation":138},"/partners/","partners",{"config":380,"title":383,"text":384,"link":385},{"background":381,"textColor":382},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":386,"config":387},"Read the latest",{"href":388,"dataGaName":389,"dataGaLocation":138},"/whats-new/","whats new",{"text":391,"config":392,"menu":394},"Company",{"dataNavLevelOne":393},"company",{"type":188,"columns":395},[396],{"items":397},[398,403,409,411,416,421,426,431,436,441,446],{"text":399,"config":400},"About",{"href":401,"dataGaName":402,"dataGaLocation":138},"/company/","about",{"text":404,"config":405,"footerGa":408},"Jobs",{"href":406,"dataGaName":407,"dataGaLocation":138},"/jobs/","jobs",{"dataGaName":407},{"text":370,"config":410},{"href":372,"dataGaName":373,"dataGaLocation":138},{"text":412,"config":413},"Leadership",{"href":414,"dataGaName":415,"dataGaLocation":138},"/company/team/e-group/","leadership",{"text":417,"config":418},"Team",{"href":419,"dataGaName":420,"dataGaLocation":138},"/company/team/","team",{"text":422,"config":423},"Handbook",{"href":424,"dataGaName":425,"dataGaLocation":138},"https://handbook.gitlab.com/","handbook",{"text":427,"config":428},"Investor relations",{"href":429,"dataGaName":430,"dataGaLocation":138},"https://ir.gitlab.com/","investor relations",{"text":432,"config":433},"Trust Center",{"href":434,"dataGaName":435,"dataGaLocation":138},"/security/","trust center",{"text":437,"config":438},"AI Transparency Center",{"href":439,"dataGaName":440,"dataGaLocation":138},"/ai-transparency-center/","ai transparency center",{"text":442,"config":443},"Newsletter",{"href":444,"dataGaName":445,"dataGaLocation":138},"/company/contact/#contact-forms","newsletter",{"text":447,"config":448},"Press",{"href":449,"dataGaName":450,"dataGaLocation":138},"/press/","press",{"text":452,"config":453,"menu":454},"Contact us",{"dataNavLevelOne":393},{"type":188,"columns":455},[456],{"items":457},[458,461,466],{"text":145,"config":459},{"href":147,"dataGaName":460,"dataGaLocation":138},"talk to sales",{"text":462,"config":463},"Support portal",{"href":464,"dataGaName":465,"dataGaLocation":138},"https://support.gitlab.com","support portal",{"text":467,"config":468},"Customer portal",{"href":469,"dataGaName":470,"dataGaLocation":138},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":472,"login":473,"suggestions":480},"Close",{"text":474,"link":475},"To search repositories and projects, login to",{"text":476,"config":477},"gitlab.com",{"href":152,"dataGaName":478,"dataGaLocation":479},"search login","search",{"text":481,"default":482},"Suggestions",[483,485,489,491,495,499],{"text":169,"config":484},{"href":174,"dataGaName":169,"dataGaLocation":479},{"text":486,"config":487},"Code Suggestions (AI)",{"href":488,"dataGaName":486,"dataGaLocation":479},"/solutions/code-suggestions/",{"text":204,"config":490},{"href":206,"dataGaName":204,"dataGaLocation":479},{"text":492,"config":493},"GitLab on AWS",{"href":494,"dataGaName":492,"dataGaLocation":479},"/partners/technology-partners/aws/",{"text":496,"config":497},"GitLab on Google Cloud",{"href":498,"dataGaName":496,"dataGaLocation":479},"/partners/technology-partners/google-cloud-platform/",{"text":500,"config":501},"Why GitLab?",{"href":181,"dataGaName":500,"dataGaLocation":479},{"freeTrial":503,"mobileIcon":508,"desktopIcon":513,"secondaryButton":516},{"text":504,"config":505},"Start free trial",{"href":506,"dataGaName":143,"dataGaLocation":507},"https://gitlab.com/-/trials/new/","nav",{"altText":509,"config":510},"Gitlab Icon",{"src":511,"dataGaName":512,"dataGaLocation":507},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":509,"config":514},{"src":515,"dataGaName":512,"dataGaLocation":507},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":517,"config":518},"Get Started",{"href":519,"dataGaName":520,"dataGaLocation":507},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":522,"mobileIcon":526,"desktopIcon":528},{"text":523,"config":524},"Learn more about GitLab Duo",{"href":174,"dataGaName":525,"dataGaLocation":507},"gitlab duo",{"altText":509,"config":527},{"src":511,"dataGaName":512,"dataGaLocation":507},{"altText":509,"config":529},{"src":515,"dataGaName":512,"dataGaLocation":507},{"button":531,"mobileIcon":536,"desktopIcon":538},{"text":532,"config":533},"/switch",{"href":534,"dataGaName":535,"dataGaLocation":507},"#contact","switch",{"altText":509,"config":537},{"src":511,"dataGaName":512,"dataGaLocation":507},{"altText":509,"config":539},{"src":540,"dataGaName":512,"dataGaLocation":507},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":542,"mobileIcon":547,"desktopIcon":549},{"text":543,"config":544},"Back to pricing",{"href":286,"dataGaName":545,"dataGaLocation":507,"icon":546},"back to pricing","GoBack",{"altText":509,"config":548},{"src":511,"dataGaName":512,"dataGaLocation":507},{"altText":509,"config":550},{"src":515,"dataGaName":512,"dataGaLocation":507},{"title":552,"button":553,"config":558},"See how agentic AI transforms software delivery",{"text":554,"config":555},"Sign up for GitLab Transcend on June 10",{"href":556,"dataGaName":557,"dataGaLocation":138},"/events/transcend/virtual/","transcend event",{"layout":559,"disabled":129},"release",{"data":561},{"text":562,"source":563,"edit":569,"contribute":574,"config":579,"items":584,"minimal":793},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":564,"config":565},"View page source",{"href":566,"dataGaName":567,"dataGaLocation":568},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":570,"config":571},"Edit this page",{"href":572,"dataGaName":573,"dataGaLocation":568},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":575,"config":576},"Please contribute",{"href":577,"dataGaName":578,"dataGaLocation":568},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":580,"facebook":581,"youtube":582,"linkedin":583},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[585,632,685,729,759],{"title":284,"links":586,"subMenu":601},[587,591,596],{"text":588,"config":589},"View plans",{"href":286,"dataGaName":590,"dataGaLocation":568},"view plans",{"text":592,"config":593},"Why Premium?",{"href":594,"dataGaName":595,"dataGaLocation":568},"/pricing/premium/","why premium",{"text":597,"config":598},"Why Ultimate?",{"href":599,"dataGaName":600,"dataGaLocation":568},"/pricing/ultimate/","why ultimate",[602],{"title":603,"links":604},"Contact Us",[605,608,610,612,617,622,627],{"text":606,"config":607},"Contact sales",{"href":147,"dataGaName":148,"dataGaLocation":568},{"text":462,"config":609},{"href":464,"dataGaName":465,"dataGaLocation":568},{"text":467,"config":611},{"href":469,"dataGaName":470,"dataGaLocation":568},{"text":613,"config":614},"Status",{"href":615,"dataGaName":616,"dataGaLocation":568},"https://status.gitlab.com/","status",{"text":618,"config":619},"Terms of use",{"href":620,"dataGaName":621,"dataGaLocation":568},"/terms/","terms of use",{"text":623,"config":624},"Privacy statement",{"href":625,"dataGaName":626,"dataGaLocation":568},"/privacy/","privacy statement",{"text":628,"config":629},"Cookie preferences",{"dataGaName":630,"dataGaLocation":568,"id":631,"isOneTrustButton":126},"cookie preferences","ot-sdk-btn",{"title":184,"links":633,"subMenu":642},[634,638],{"text":635,"config":636},"DevSecOps platform",{"href":167,"dataGaName":637,"dataGaLocation":568},"devsecops platform",{"text":639,"config":640},"AI-Assisted Development",{"href":174,"dataGaName":641,"dataGaLocation":568},"ai-assisted development",[643],{"title":13,"links":644},[645,650,655,660,665,670,675,680],{"text":646,"config":647},"CICD",{"href":648,"dataGaName":649,"dataGaLocation":568},"/topics/ci-cd/","cicd",{"text":651,"config":652},"GitOps",{"href":653,"dataGaName":654,"dataGaLocation":568},"/topics/gitops/","gitops",{"text":656,"config":657},"DevOps",{"href":658,"dataGaName":659,"dataGaLocation":568},"/topics/devops/","devops",{"text":661,"config":662},"Version Control",{"href":663,"dataGaName":664,"dataGaLocation":568},"/topics/version-control/","version control",{"text":666,"config":667},"DevSecOps",{"href":668,"dataGaName":669,"dataGaLocation":568},"/topics/devsecops/","devsecops",{"text":671,"config":672},"Cloud Native",{"href":673,"dataGaName":674,"dataGaLocation":568},"/topics/cloud-native/","cloud native",{"text":676,"config":677},"AI for Coding",{"href":678,"dataGaName":679,"dataGaLocation":568},"/topics/devops/ai-for-coding/","ai for coding",{"text":681,"config":682},"Agentic AI",{"href":683,"dataGaName":684,"dataGaLocation":568},"/topics/agentic-ai/","agentic ai",{"title":686,"links":687},"Solutions",[688,690,692,697,701,704,708,711,713,716,719,724],{"text":228,"config":689},{"href":223,"dataGaName":228,"dataGaLocation":568},{"text":217,"config":691},{"href":200,"dataGaName":201,"dataGaLocation":568},{"text":693,"config":694},"Agile development",{"href":695,"dataGaName":696,"dataGaLocation":568},"/solutions/agile-delivery/","agile delivery",{"text":698,"config":699},"SCM",{"href":213,"dataGaName":700,"dataGaLocation":568},"source code management",{"text":646,"config":702},{"href":206,"dataGaName":703,"dataGaLocation":568},"continuous integration & delivery",{"text":705,"config":706},"Value stream management",{"href":256,"dataGaName":707,"dataGaLocation":568},"value stream management",{"text":651,"config":709},{"href":710,"dataGaName":654,"dataGaLocation":568},"/solutions/gitops/",{"text":266,"config":712},{"href":269,"dataGaName":270,"dataGaLocation":568},{"text":714,"config":715},"Small business",{"href":275,"dataGaName":276,"dataGaLocation":568},{"text":717,"config":718},"Public sector",{"href":281,"dataGaName":282,"dataGaLocation":568},{"text":720,"config":721},"Education",{"href":722,"dataGaName":723,"dataGaLocation":568},"/solutions/education/","education",{"text":725,"config":726},"Financial services",{"href":727,"dataGaName":728,"dataGaLocation":568},"/solutions/finance/","financial services",{"title":289,"links":730},[731,733,735,737,740,742,745,747,749,751,753,755,757],{"text":301,"config":732},{"href":303,"dataGaName":304,"dataGaLocation":568},{"text":306,"config":734},{"href":308,"dataGaName":309,"dataGaLocation":568},{"text":311,"config":736},{"href":313,"dataGaName":314,"dataGaLocation":568},{"text":316,"config":738},{"href":318,"dataGaName":739,"dataGaLocation":568},"docs",{"text":97,"config":741},{"href":340,"dataGaName":341,"dataGaLocation":568},{"text":743,"config":744},"What's new",{"href":388,"dataGaName":389,"dataGaLocation":568},{"text":334,"config":746},{"href":336,"dataGaName":337,"dataGaLocation":568},{"text":347,"config":748},{"href":349,"dataGaName":350,"dataGaLocation":568},{"text":355,"config":750},{"href":357,"dataGaName":358,"dataGaLocation":568},{"text":360,"config":752},{"href":362,"dataGaName":363,"dataGaLocation":568},{"text":365,"config":754},{"href":367,"dataGaName":368,"dataGaLocation":568},{"text":370,"config":756},{"href":372,"dataGaName":373,"dataGaLocation":568},{"text":375,"config":758},{"href":377,"dataGaName":378,"dataGaLocation":568},{"title":391,"links":760},[761,763,765,767,769,771,773,777,782,784,786,788],{"text":399,"config":762},{"href":401,"dataGaName":393,"dataGaLocation":568},{"text":404,"config":764},{"href":406,"dataGaName":407,"dataGaLocation":568},{"text":412,"config":766},{"href":414,"dataGaName":415,"dataGaLocation":568},{"text":417,"config":768},{"href":419,"dataGaName":420,"dataGaLocation":568},{"text":422,"config":770},{"href":424,"dataGaName":425,"dataGaLocation":568},{"text":427,"config":772},{"href":429,"dataGaName":430,"dataGaLocation":568},{"text":774,"config":775},"Sustainability",{"href":776,"dataGaName":774,"dataGaLocation":568},"/sustainability/",{"text":778,"config":779},"Diversity, inclusion and belonging (DIB)",{"href":780,"dataGaName":781,"dataGaLocation":568},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":432,"config":783},{"href":434,"dataGaName":435,"dataGaLocation":568},{"text":442,"config":785},{"href":444,"dataGaName":445,"dataGaLocation":568},{"text":447,"config":787},{"href":449,"dataGaName":450,"dataGaLocation":568},{"text":789,"config":790},"Modern Slavery Transparency Statement",{"href":791,"dataGaName":792,"dataGaLocation":568},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":794},[795,798,801],{"text":796,"config":797},"Terms",{"href":620,"dataGaName":621,"dataGaLocation":568},{"text":799,"config":800},"Cookies",{"dataGaName":630,"dataGaLocation":568,"id":631,"isOneTrustButton":126},{"text":802,"config":803},"Privacy",{"href":625,"dataGaName":626,"dataGaLocation":568},{"header":805,"blurb":806,"button":807,"secondaryButton":812},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":808,"config":809},"Get your free trial",{"href":810,"dataGaName":143,"dataGaLocation":811},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":606,"config":813},{"href":147,"dataGaName":148,"dataGaLocation":811},1778880040446]