tech blog

Your stack, your rules: Introducing custom agents in GitHub Copilot for observability, IaC, and security

Every engineering team has its unwritten rules. How you structure Terraform modules. Which dashboards you trust. How database migrations must be handled (never at midnight). And your work stretches across more than your editor into observability, security, CI/CD, and countless third-party tools. GitHub Copilot isn’t just here to help you write code. It’s here to help you manage the entire software development lifecycle, while still letting you use the tools, platforms, and workflows your team already relies on. Custom agents bring that full workflow into Copilot. We’re introducing a growing ecosystem of partner-built custom agents for the GitHub Copilot coding agent (plus the option to create your own). These agents understand your tools, workflows, and standards—and they work everywhere Copilot works:  In your terminal through Copilot CLI for fast, end-to-end workflows In VS Code with Copilot Chat In github.com in the Copilot panel Let’s jump in.  Run custom agents in the GitHub Copilot CLI Copilot CLI is the fastest way to run multi-step tasks, automate workflows, and integrate agents into scripts or CI. If you live in the terminal, custom agents feel like native extensions of your workflow.  Get started with Copilot CLI > What custom agents actually are Custom agents are Markdown-defined domain experts that extend the Copilot coding agent across your tools and workflows. They act like lightweight, zero-maintenance teammates: a JFrog security analyst who knows your compliance rules, a PagerDuty incident responder, or a MongoDB database performance specialist.  Defining one looks like this: — name: readme-specialist description: Expert at creating and maintaining high-quality README documentation — You are a documentation specialist focused on README files. Your expertise includes: – Creating clear, structured README files following best practices – Including all essential sections: installation, usage, contributing, license – Writing examples that are practical and easy to follow – Maintaining consistency with the project’s tone and style Only work on README.md or documentation files—do not modify code files. Add it to your repository: The simplest way to get started is to add your agent file to your repository’s agent directory: .github/agents/readme-specialist.md Your agent appears instantly in:  GitHub Copilot CLI github.com in the control plane VS Code in Copilot Chat You can also define agents at: Repository level: .github/agents/CUSTOM-AGENT-NAME.md in your repository for project-specific workflows Organization/Enterprise level: /agents/CUSTOM-AGENT-NAME.md in a .github or .github-private repository for broader availability across all repositories in your org Try a partner-built custom agent in under 60 seconds Custom agents are just Markdown files. Add it to your repository and run it from GitHub Copilot CLI, VS Code, or github.com.  1. Pick the agent you want to try. All partner-built agents are available today (and we have these in our repository, too), including:  Observability: Dynatrace Expert, Elasticsearch agent Security: JFrog Security Agent, StackHawk Security Onboarding Databases: MongoDB Performance Advisor, Neon Migration Specialist, Neon Performance Analyzer, Neo4j Docker Client Generator DevOps & IaC: Terraform Agent, Arm Migration Agent, Octopus Release Notes Agent, DiffBlue Java Unit Test Custom Agent Incidents & project management: PagerDuty Incident Responder, Monday Bug Context Fixer Feature flags & experiments: LaunchDarkly Flag Cleanup, Amplitude Experiment Implementation Automation & APIs: Apify Integration Expert, Factory.ai Code Spec Custom Agent, Lingo.dev Internationalization Implementation Custom Agent 2. Add the agent to your repository.  .github/agents/<agent-name>.agent.md 3. Use it.From the Copilot CLI: copilot –agent=<agent-name> –prompt “<task>” From your VS Code:  Open Copilot Chat and select the agent Select the agent from the dropdown From github.com: Open the Copilot panel and select the Agents tab Choose the agent you added to your repository Describe your task Featured examples from our partners with real developer workflows Here are real engineering workflows, solved with a single command via custom agents. Trigger and resolve incidents faster (PagerDuty Incident Responder)  copilot –agent=pagerduty-incident-responder –prompt “Summarize active incidents and propose the next investigation steps.” Use this agent to:   Pull context from PagerDuty alerts Generate a clear overview of incident state Recommend investigation paths Draft incident updates for your team Fix vulnerable dependencies and strengthen your supply chain (JFrog Security Agent) copilot –agent=jfrog-security –prompt “Scan for vulnerable dependencies and provide safe upgrade paths.” Use this agent to:  Identify vulnerable packages Provide recommended upgrade versions Patch dependency files directly Generate a clear, security-aware pull request summary  Modernize database workflows and migrations (Neon)  copilot –agent=neon-migration-specialist –prompt “Review this schema migration for safety and best practices.” Use this agent to: Validate schema changes Avoid unsafe migrations Tune analytical workflows Optimize transformations and queries Speed up product experimentation and feature rollouts (Amplitude Experiment Implementation)  copilot –agent=amplitude-experiment-implementation –prompt “Integrate an A/B test for this feature and generate tracking events.” Use this agent to:  Generate experiment scaffolding Insert clean, consistent event tracking  Map variations to your product logic Ensure your data flows correctly into Amplitude Why this matters By encoding your team’s patterns, rules, and tool integrations into a reusable agent, Copilot actually understands how your team works—not just the code in front of it. Custom agents help:  Keep patterns consistent (Terraform conventions, database rules, security standards, etc.)  Stop repeating context by defining expectations once and reusing them everywhere Share expertise automatically so the entire team can follow best practices (even when your subject matter expert is on vacation or in a different timezone) Work directly with your tools using Model Context Protocol (MCP) servers to pull data from your DevOps, security, and observability systems The full catalog of custom agents from our partners We partnered across the ecosystem to create custom agents that solve real engineering problems.  Observability and monitoring Dynatrace Observability and Security Expert: Configure and optimize Dynatrace monitoring for your applications Elasticsearch Remediation Agent: Handle Elasticsearch configuration, query optimization, and observability setup Security and compliance JFrog Security Agent: Identify and remediate security vulnerabilities in your dependencies StackHawk Security Onboarding: Set up dynamic application security testing Database and data management MongoDB Performance Advisor: Analyze and optimize MongoDB query performance Neon Migration Specialist: Migrate databases to Neon’s serverless Postgres Neon Performance Analyzer: Find bottlenecks and optimization opportunities Neo4j Docker Client Generator: Generate Docker-based client code for Neo4j graph databases DevOps and infrastructure Terraform Infrastructure Agent:

tech blog

How to use GitHub Copilot Spaces to debug issues faster

Every developer knows this pain: you open an issue, and before you can write a single line of code, you’re hunting. You’re digging through old pull requests, searching for that design doc from three months ago, trying to remember which file has the security guidelines. That hunting phase? It takes forever. And it’s not even the actual work. And even if you want to bring AI into the picture, GitHub Copilot still needs the same thing you do: context. Without it, you get generic answers that don’t understand your codebase. GitHub Copilot Spaces fixes that. Spaces gives GitHub Copilot the project knowledge it needs—files, pull requests, issues, repos—so its responses are grounded in your actual code, not guesses. Are you a visual learner? Watch the full demo below. 👇 What is a space, again? Think of a space as a project knowledge bundle. You curate the files, docs, and decisions that matter for your project, and Copilot uses all of that when generating plans, explanations, or pull requests. You can: Add entire repositories or specific files, pull requests and issues (just paste the URL) Include text content like notes, video transcripts, or Slack messages Add design docs and architecture decisions Trigger Copilot coding agent directly from the space Use the space in your IDE through the GitHub MCP server The best part? Link it once and forget about it. Spaces automatically stay synced with the linked content. When your codebase updates, your space updates too. How to debug issues with spaces: 1. Start with an issue A contributor opened an issue reporting an unsafe usage of check_call in your project. As a maintainer, you might not know the best way to fix it immediately. On your own, you’d start by searching the repo, checking past pull requests, and combing through security guidelines just to figure out where to begin. With Spaces, you don’t have to do that manually. Create a space, add the issue and the key files or docs, and let Copilot reason across everything at once. 2. Create a space for your project Inside the space, add: Design patterns (e.g., /docs/security/check-patterns.md, /docs/design/architecture-overview.md) Security guidelines Accessibility recommendations The entire repository (for broad coverage) or a curated set of the most relevant files for your specific use case. Spaces work best when you’re intentional about what you include. The URL to the issue itself 3. Add Instructions for Copilot Each space includes an Instructions panel. This is where you tell Copilot how you want it to work inside your project. Here are some example instructions that will help with our task at hand:  You are an experienced engineer working on this codebase. Always ground your answers in the linked docs and sources in this space. Before writing code, produce a 3–5 step plan that includes: – The goal – The approach – The execution steps Cite the exact files that justify your recommendations. After I approve a plan, use the Copilot coding agent to propose a PR. These instructions keep Copilot consistent. It won’t hallucinate patterns that don’t exist in your repo because you’ve told it to cite its sources. 🌟 Related reading: How to write a great agents.md Learn best practices for building effective custom agents for Copilot, based on an analysis of over 2,500 repositories. Get the guide > 4. Ask Copilot to debug the issue With everything set up, ask Copilot: “Help me debug this issue.” Copilot already knows which issue you mean because it’s linked to the space. It parses through all the sources, then returns a clear plan: Goal: Fix unsafe usage of runBinaryCheck to ensure input paths are validated. Approach: Search the repo for usages of runBinaryCheck Compare each usage to the safe pattern in the security docs Identify the required refactor Prepare a diff for each file with unsafe usage This isn’t a generic LLM answer. It’s grounded in the actual project context. 5. Generate the pull request Once you approve the plan, tell Copilot: “Propose code changes using Copilot coding agent.” The agent generates a pull request with: The before version and the after version An explanation of what changed References to the exact files that informed the fix The instructions that guided its choices Every file in the pull request shows which source informed the suggestion. You can audit the reasoning before you merge. 6. Iterate if you need to Not happy with something? Mention @copilot in the pull request comments to iterate on the existing pull request, or go back to the space to generate a fresh one. Keep working with Copilot until you get exactly what you need. 7. Share your space with your team Spaces are private by default. But you can share them with specific individuals, your entire team, or your whole organization (if admins allow it). Enterprise admins control who can share what, so you stay aligned with your company’s security policies. Use GitHub Copilot Spaces from your IDE Spaces are now available in your IDE via the GitHub MCP Server. Install the MCP server, and you can call your spaces directly from your editor. Same curated context, same grounded answers, but right where you’re already working. Being able to call a space from the IDE has been a game changer for me. It lets me stay focused without switching between the browser and my editor, which cuts out a ton of friction in debugging. Coming soon Here’s what’s on the roadmap: Public API Image support  Additional file types like doc/docx and PDFs Three ways teams are using spaces right now 1. Code generation and debugging. Use spaces with Copilot coding agent to generate pull requests aligned with your patterns, security rules, and architecture. 2. Planning features. Link issues, design docs, and repos to plan features and draft requirements. Ask Copilot for a technical plan and it generates a pull request. 3. Knowledge sharing and onboarding. Spaces become living knowledge bases. New engineers onboard faster. Existing engineers stop answering the same questions repeatedly. Try it

tech blog

The new identity of a developer: What changes and what doesn’t in the AI era

For the past four years, the conversation about AI and software development has moved faster than most people can track. Every week, there is a new tool, a new benchmark, a new paper, or a new claim about what AI will or won’t replace. There is certainly noise, but even if sometimes data seems inconclusive or contradictory, we still know more now than three years ago about AI adoption.  With four years of AI adoption under our belt, we are also able to start seeing the shift in what it means to be a software developer. I lead key research initiatives at GitHub where I focus especially on understanding developers’ behavior, sentiment, and motivations. The time we are in with AI is pivotal, and I interview developers regularly to capture their current perspective. Most recently I conducted interviews to understand how developers see their identity, work, and preferences change as they work more closely than ever with AI. The TL;DR? The developers who have gone furthest with AI are working differently. They describe their role less as “code producer” and more as “creative director of code,” where the core skill is not implementation, but orchestration and verification. Let’s dive in for the more detailed findings, alongside key stats from the 2025 Octoverse report. What were the interviews about, and who did we recruit? As developers work more with AI and get familiar with its capabilities, their relationship with coding—an activity central to the developer identity—changes. How do developers feel about that? What is their new role as developers, and what skills are important? In our interviews, we heard from 22 advanced users of AI about their workflows, how they arrived at them, and their outlook on AI-assisted software development.  We define “advanced AI users” as developers who use AI for the majority of their coding, draw on several AI tools in parallel, and apply AI across a wide range of development tasks. We provide a more detailed note on who we recruited at the end of this post. 2023: Curiosity, hesitation, and identity questions Two years ago, we interviewed developers to understand their openness to having AI more deeply integrated into their workflow. At the time, code completions had become mainstream and agents were only a whisper in the AI space. Back then, we found developers eager to get AI’s help with complex tasks, not just filling in boilerplate code. Developers were most interested in:  Summaries and explanations to speed up how they make sense of code related to their task, and  AI-suggested plans of action that reduce activation energy. In contrast, developers wanted AI to stay at arm’s length (at least) on decision-making and generating code that implements whole tasks.  The explanation of that qualitative trend from 2023 is important. At the time, AI was seen as still unreliable for large implementations. But there was more to the rationale. Developers were reluctant to cede implementation because it was core to their identity.  That was our baseline in 2023, which we documented in a research-focused blog. Since then, developers’ relationship with AI has changed (and continues to evolve), making each view a snapshot. That makes it critical to update our understanding as the tools have evolved and developer behavior has consequently changed.  One of the interviewees in 2023 wrapped their hesitation in a question: “If I’m not writing the code, what am I doing?”  That question has been important to answer since then, especially as we hear future-looking statements about AI writing 90% of code. If we don’t describe what developers do if/when AI does the bulk of implementation, why would they ever be interested in embracing AI meaningfully for their work?    2025: Fluency, delegation, and a new center of gravity Fast forward to this year: we interviewed developers again, and this time, we focused on advanced users of AI. This was, in part, because we found a growing number of influential developer blogs focused on agentic workflows. They described sophisticated setups over time, and signalled optimism around coding with and delegating to AI (see here, here, and here for just a few examples). It was important to capture that rationale, assess if/how it’s shared by more AI-experienced developers, and understand what fuels it.  The developers we spoke with described their agentic workflows and how they reached AI fluency: relentless trial-and-error and pushing themselves to use AI tools every day for everything.  That was their method for gaining confidence in their AI strategy, from identifying which tools would be helpful for which task to prompting and iterating effectively. The tools did not feel magical or intuitive all the time, but their determination eventually led them to make more informed decisions: for example, when to work synchronously with an agent, when to have multiple agents working in parallel, or when to prompt an AI tool to “interview” them for more information (and how to check what it understands). None of these AI strategists started out that way. Most of them started as AI skeptics or timid explorers. As we synthesized the interviewees’ reported experiences, we identified that they matured in their knowledge and use of AI moving from Skeptic, to Explorer, to Collaborator, to Strategist. Each stage came with a better understanding of capabilities and limitations, and different expectations around speed, iteration, and accuracy. A developer that used AI to co-create solutions (a stage we call “AI Collaborator”) knew to expect back-and-forth iteration with an agent. But when they were using exclusively code completions or boilerplate snippets (probably an “AI Skeptic”), they expected low-latency, one-shot success—or they quickly reverted to doing things without AI.  Interestingly, each stage in a developer’s comfort with AI had a matching evolution in the tools and workflows they felt ready to adopt: completions, then a chat and copy-paste workflow, then AI-enabled IDEs, and then multi-agent workflows. The advanced AI users we interviewed used several AI tools and agents in parallel, relying on a self-configured AI stack.  What looks from the outside like “new features” was, from

tech blog

Speed is nothing without control: How to keep quality high in the AI era

What’s the point of moving faster if you can’t trust the code you’re shipping? We’ve all been using AI in our workflows for a while now, and there’s no denying how much faster everyday development has become. Tasks that once took hours now finish in minutes. Entire features come together before you’ve even finished your morning coffee. But we’ve also experienced the other side of that speed: when AI is used without clear direction or guardrails, it can generate what’s often called AI slop—semi-functional code stitched together without context, quietly piling up bugs, broken imports, and technical debt. In this new era, being fast isn’t enough. Precision and quality are what set teams apart. “The best drivers aren’t the ones who simply go the fastest, but the ones who stay smooth and in control at high speed,” said Marcelo Oliveira, GitHub VP of product at GitHub Universe 2025. “Speed and control aren’t trade-offs. They reinforce each other.” So how do you get the best of both? How do you move fast and keep your code clean, reliable, and firmly under your direction? Here are three essential strategies: Tip #1: Treat speed and quality as a package deal  It’s very easy to accept AI-generated code that appears polished but hides underlying issues. However, speed without quality doesn’t help you ship faster, it just increases the risk of issues compounding down the road. That’s why the teams and organizations that succeed are the ones that pair AI-driven velocity with real guardrails. And that’s exactly what GitHub Code Quality (currently in public preview) helps you do. GitHub Code Quality is an AI- and CodeQL-powered analysis tool that surfaces maintainability issues, reliability risks, and technical debt across your codebase, right as you work. Here’s how to start using it: Enable with one clickTurn it on at the repository level and GitHub will analyze your code using a combination of CodeQL and LLM-based detection. This will give you a clear view of the maintainability and reliability issues in your codebase. Get automatic fixes inside every pull requestAs soon as you open a pull request, GitHub Code Quality flags unused variables, duplicated logic, runtime errors, and more. Here’s an example of pull request code that “works,” but isn’t production-ready: // fuelCalculator.js export function calculateFuelUsage(laps, fuelPerLap) { const lastLap = laps[laps.length – 1]; // unused variable function totalFuel(laps, fuelPerLap) { return laps.length * fuelPerLap; } // duplicated function function totalFuel(laps, fuelPerLap) { return laps.length * fuelPerLap; } return totalFuel(laps, fuelPerLap); GitHub Code Quality responds with AI + CodeQL-powered suggestions, including a one-click fix: -export function calculateFuelUsage(laps, fuelPerLap) { – const lastLap = laps[laps.length – 1]; // unused variable – – function totalFuel(laps, fuelPerLap) { – return laps.length * fuelPerLap; – } – – // duplicated function – function totalFuel(laps, fuelPerLap) { – return laps.length * fuelPerLap; – } – – return totalFuel(laps, fuelPerLap); -} +export function calculateFuelUsage(laps, fuelPerLap) { + if (!Array.isArray(laps) || typeof fuelPerLap !== “number”) { + throw new Error(“Invalid input”); + } + return laps.length * fuelPerLap; +} No triage or slowdown, just clean, reliable code. Enforce your quality barRulesets let you block merges that don’t meet your team’s standards. This keeps quality consistent without relying on reviewer willpower and without killing your velocity. Reveal (and fix) legacy technical debtThe AI Findings page highlights issues in files your team is already working in, helping you fix problems while they’re top of mind and reduce context switching. Bottom line: AI gives you speed. GitHub Code Quality gives you control. Together, they let you move faster and build better without ever trading one for the other. Learn more about GitHub Code Quality 👉 Tip #2: Be the driver, not the passenger  AI can generate code quickly, but quality has never come from automation alone. GitHub has always believed in giving you the tools to write your best code—from Copilot in the IDE, to GitHub Copilot code review in pull requests, to GitHub Code Quality—providing visibility into long-standing issues and tech debt, along with actionable fixes to help you address them. These features give you the power to set direction, standards, and constraints. The clearer your intent, the better AI can support you. Here’s a simple prompting framework that helps you do just that: Set the goal, not just the actionThink of your prompts like giving direction to another engineer: the more clarity you provide, the better the final output.  Bad prompt: refactor this file Better prompt: refactor this file to improve readability and maintainability while preserving functionality, no breaking changes allowed Establish constraints Examples: “No third-party dependencies” “Must be backwards compatible with v1.7” “Follow existing naming patterns” Provide reference context Link to related files, docs, existing tests, or architectural decisions. Decide the format of the output Pull request, diff, patch, commentary, or code block. With GitHub Copilot coding agent, you can even assign multi-step tasks like: Create a new helper function for formatting currency across the app. – Must handle USD and EUR – Round up to two decimals – Add three unit tests – Do not modify existing price parser – Return as a pull request Notice how you remain accountable for the thinking and the agent becomes accountable for the doing. Bottom line: AI accelerates execution, but your clarity—and GitHub’s guardrails—are what turn that acceleration into high-quality software. Learn more about coding agent 👉 Tip #3: Build visible proof of your thinking, not just your output As AI takes on more execution work, what sets effective developers apart is how clearly they communicate decisions, trade-offs, and reasoning. It’s no longer enough to write code, you need to show how you think, evaluate, and approach problems across the lifecycle of a feature.  Here’s a best practice to level up your documentation signal:  Create an issue that captures the why Write a brief summary of the problem, what success looks like, constraints, and any risks. Name your branch clearly and commit thoughtfully Use meaningful names and commit messages that narrate your reasoning, not just your

tech blog

MCP joins the Linux Foundation: What this means for developers building the next era of AI tools and agents

Over the past year, AI development has exploded. More than 1.1 million public GitHub repositories now import an LLM SDK (+178% YoY), and developers created nearly 700,000 new AI repositories, according to this year’s Octoverse report. Agentic tools like vllm, ollama, continue, aider, ragflow, and cline are quickly becoming part of the modern developer stack. As this ecosystem expands, we’ve seen a growing need to connect models to external tools and systems—securely, consistently, and across platforms. That’s the gap the Model Context Protocol (MCP) has rapidly filled.  Born as an open source idea inside Anthropic, MCP grew quickly because it was open from the very beginning and designed for the community to extend, adopt, and shape together. That openness is a core reason it became one of the fastest-growing standards in the industry. That also allowed companies like GitHub and Microsoft to join in and help build out the standard.   Now, Anthropic is donating MCP to the Agentic AI Foundation, which will be managed by the Linux Foundation, and the protocol is entering a new phase of shared stewardship. This will provide developers with a foundation for long-term tooling, production agents, and enterprise systems.  This is exciting for those of us who have been involved in the MCP community. And given our long-term support of the Linux Foundation, we are hugely supportive of this move. The past year has seen incredible growth and change for MCP.  I thought it would be great to review how MCP got here, and what its transition to the Linux Foundation means for the next wave of AI development. Before MCP: Fragmented APIs and brittle integrations LLMs started as isolated systems. You sent them prompts and got responses back. We would use patterns like retrieval-augmented generation (RAG) to help us bring in data to give more context to the LLM, but that was limited. OpenAI’s introduction of function calling brought about a huge change as, for the first time, you could call any external function. This is what we initially built on top of as part of GitHub Copilot.  By early 2023, developers were connecting LLMs to external systems through a patchwork of incompatible APIs: bespoke extensions, IDE plugins, and platform-specific agent frameworks, among other things. Every provider had its own integration story, and none of them worked in exactly the same way.  Nick Cooper, an OpenAI engineer and MCP steering committee member, summarized it plainly: “All the platforms had their own attempts like function calling, plugin APIs, extensions, but they just didn’t get much traction.” This wasn’t a tooling problem. It was an architecture problem. Connecting a model to the realtime web, a database, ticketing system, search index, or CI pipeline required bespoke code that often broke with the next model update. Developers had to write deep integration glue one platform at a time. As David Soria Parra, a senior engineer at Anthropic and one of the original architects of MCP, put it, the industry was running headfirst into an n×m integration problem with too many clients, too many systems, and no shared protocol to connect them. In practical terms, the n×m integration problem describes a world where every model client (n) must integrate separately with every tool, service, or system developers rely on (m). This would mean five different AI clients talking to ten internal systems, resulting in fifty bespoke integrations—each with different semantics, authentication flows, and failure modes. MCP collapses this by defining a single, vendor-neutral protocol that both clients and tools can speak. With something like GitHub Copilot, where we are connecting to all of the frontier labs models and developers using Copilot, we also need to connect to hundreds of systems as part of their developer platform. This was not just an integration challenge, but an innovation challenge.  And the absence of a standard wasn’t just inefficient; it slowed real-world adoption. In regulated industries like finance, healthcare, security, developers needed secure, auditable, cross-platform ways to let models communicate with systems. What they got instead were proprietary plugin ecosystems with unclear trust boundaries. MCP: A protocol built for how developers work Across the industry including at Anthropic, GitHub, Microsoft, and others, engineers kept running into the same wall: reliably connecting models to context and tools. Inside Anthropic, teams noticed that their internal prototypes kept converging on similar patterns for requesting data, invoking tools, and handling long-running tasks.  Soria Parra described MCP’s origin simply: it was a way to standardize patterns Anthropic engineers were reinventing. MCP distilled those patterns into a protocol designed around communication, or how models and systems talk to each other, request context, and execute tools. Anthropic’s Jerome Swanwick recalled an early internal hackathon where “every entry was built on MCP … went viral internally.” That early developer traction became the seed. Once Anthropic released MCP publicly alongside high-quality reference servers, we saw the value immediately, and it was clear that the broader community understood the value immediately. MCP offered a shared way for models to communicate with external systems, regardless of client, runtime, or vendor. Why MCP clicked: Built for real developer workflows When MCP launched, adoption was immediate and unlike any standard I have seen before. Developers building AI-powered tools and agents had already experienced the pain MCP solved. As Microsoft’s Den Delimarsky, a principal engineer and core MCP steering committee member focused on security and OAuth, said: “It just clicked. I got the problem they were trying to solve; I got why this needs to exist.” Within weeks, contributors from Anthropic, Microsoft, GitHub, OpenAI, and independent developers began expanding and hardening the protocol. Over the next nine months, the community added: OAuth flows for secure, remote servers Sampling semantics (These help ensure consistent model behavior when tools are invoked or context is requested, giving developers more predictable execution across different MCP clients.) Refined tool schemas Consistent server discovery patterns Expanded reference implementations Improving long-running task support Long-running task APIs are a critical feature. They allow builds, indexing operations, deployments, and other multi-minute jobs to be

tech blog

More Freedom, Better Value: How Lifecycle Extension Surpasses Evergreen//Forever

Key takeaways: PowerStore’s upgrade program offers unmatched flexibility, faster upgrades, and better TCO compared to Pure’s restrictive Evergreen//Forever program. With …   ​  ​Key takeaways: PowerStore’s upgrade program offers unmatched flexibility, faster upgrades, and better TCO compared to Pure’s restrictive Evergreen//Forever program. With … PowerStore Blog | Dell

tech blog

Power, Policy &AI: The Rules of the Race in 2026

How public-private partnerships are poised to accelerate innovation, scale solutions, and shape the future of artificial intelligence.   ​  ​How public-private partnerships are poised to accelerate innovation, scale solutions, and shape the future of artificial intelligence. Launch Blog | Dell

tech blog

From Big Bang to Light Speed: the AI Revolution Continues

Explore how the AI revolution is accelerating in 2026 with resilient AI factories, agentic systems, and sovereign frameworks driving innovation and business impact.   ​  ​Explore how the AI revolution is accelerating in 2026 with resilient AI factories, agentic systems, and sovereign frameworks driving innovation and business impact. Agentic AI Blog | Dell

tech blog

Explore Dell Private Cloud Lifecycle Management

Discover how Dell Private Cloud automates lifecycle management from Day 0 to Day 2 operations—from planning to optimization!   ​  ​Discover how Dell Private Cloud automates lifecycle management from Day 0 to Day 2 operations—from planning to optimization! Data Center Blog | Dell

tech blog

How IT Automation Fuels Lasting Innovation

Discover how IT automation liberates teams from manual tasks, accelerates digital transformation, and drives strategic innovation with Dell Automation Platform.   ​  ​Discover how IT automation liberates teams from manual tasks, accelerates digital transformation, and drives strategic innovation with Dell Automation Platform. Innovation Blog | Dell

tech blog

BNY: How a Legacy of Innovation Drives Modern Transformation

How does a 241-year-old company stay on the cutting edge? BNY transformed its IT foundation to lean into AI, turning its legacy of innovation into a modern powerhouse.   ​  ​How does a 241-year-old company stay on the cutting edge? BNY transformed its IT foundation to lean into AI, turning its legacy of innovation into a modern powerhouse. Customer Blog | Dell

tech blog

Metadata: Why Your Files Should Be As Smart As Objects

Discover how smart metadata transforms file storage into a powerful, self-describing resource for innovation and data intelligence.   ​  ​Discover how smart metadata transforms file storage into a powerful, self-describing resource for innovation and data intelligence. PowerScale Blog | Dell

tech blog

Empower Real Estate Pros with Dell 5G PCs

Stay connected, productive, and work confidently from anywhere with technology designed to help you move your real estate business forward.   ​  ​Stay connected, productive, and work confidently from anywhere with technology designed to help you move your real estate business forward. Dell Pro Blog | Dell

Scroll to Top