GH-600 · Intermediate

GH-600 Cheat Sheet: MCP and Memory Decision Tables

No domain-by-domain walkthrough here — just the terms GH-600 assumes you know and the exact judgment calls (MCP type, memory strategy, root cause, autonomy level) the exam keeps asking you to make.

GH-600 at a Glance

Duration: 120 minutes
Passing score: 700 / 1000
Level: Intermediate
Languages: English
Delivery: Pearson VUE
Objectives checked: 2026-09-07

Microsoft's GH-600 pages don't publish a fixed question count or a flat USD price — both are set per region at scheduling time, so neither is listed here rather than guessed.

Built from Microsoft's official GH-600 skills-measured outline and docs.github.com's own Copilot/MCP documentation, not a generic template — every claim below traces to one of those two sources.

This page skips the domain-by-domain walkthrough on purpose. GH-600 questions rarely ask you to recite a definition — they describe a situation and ask which of two or three similar-looking options fits. That's a decision-table problem, not a narrative one, so that's the format below: a glossary for the vocabulary the exam assumes you already know, then five tables mapping "if the scenario says X" to "configure or classify it as Y."

Domain Weight at a Glance

DomainExam weight
Implement tool use and environment interaction20-25%
Prepare agent architecture and SDLC processes15-20%
Perform evaluation, error analysis, and tuning15-20%
Orchestrate multi-agent coordination15-20%
Manage memory, state, and execution10-15%
Implement guardrails and accountability10-15%

The Vocabulary GH-600 Assumes You Already Know

TermExpands toWhy it's on the exam
MCPModel Context ProtocolThe protocol an agent uses to call external tools/data sources. Local (command+args) or remote (HTTPS endpoint).
SDLCSoftware development lifecycleThe pipeline (plan, build, review, ship) that agents are integrated into, not replace.
HITLHuman-in-the-loopA required human checkpoint before an agent action proceeds — the guardrails domain's core mechanism.
COPILOT_MCP_Required secret/variable name prefixOnly Agents secrets or variables named with this prefix are exposed to an MCP server's configuration.
Registry onlyAn MCP allowlist enforcement modeRestricts MCP server usage to servers listed in a private registry, matched by server name/ID.
GITHUB_TOKENAuto-generated workflow tokenIts default permissions should be reviewed and scoped to minimum-required as part of least-privilege guardrails.
CODEOWNERSFile-path ownership fileCan require designated reviewer approval before agent-touched configuration changes take effect.
Context driftLoss of continuity during a long taskAn agent re-doing or contradicting earlier steps — the failure mode the memory/state domain targets.
Root-cause categoriesReasoning error / tool misuse / context-environment issueThe three buckets the evaluation domain uses to classify a failed agent run.
Autonomy levelRisk-based action classificationAgent actions are classified by operational, security, and compliance risk to decide how much human oversight each needs.
Least privilegeMinimum necessary accessScoping an agent's permissions and execution context to only what a task requires — a named guardrails sub-skill.
Agent lifecycleAdd / update / retireManaging an agent's existence inside a multi-agent workflow without disrupting active work or losing auditability.

Local vs. Remote MCP Server: Which the Question Wants

If the scenario says…Configure this
Need GitHub's own hosted tools (issues, PRs, code search) with no local installRemote MCP server at https://api.githubcopilot.com/mcp/, OAuth by default
Need to reach a private resource only your machine/runner can see (e.g. an internal database)Local MCP server, launched via a command + arguments
Server needs a credential (API key, connection string, token)Store it as an Agents secret/variable prefixed COPILOT_MCP_ — nothing else is exposed to the MCP config
Need to restrict which MCP servers can run at all, org-wide"Registry only" allowlist mode (name/ID match, bypassable via config edits) or an enterprise managed-settings.json (the more secure, GA method)

Common Mistake: Treating "Registry Only" as Airtight

GitHub's own documentation is explicit that "Registry only" enforcement matches on server name/ID, and that this matching "can be bypassed by editing configuration files" — strict enforcement that fully blocks non-registry servers isn't available through this mechanism. A question that asks for the more secure, generally available way to restrict MCP servers organization-wide wants an enterprise managed-settings.json, not "Registry only" alone.

Choosing a Memory Strategy

If the scenario describes…Use
Info only needed for the current task/sessionShort-term memory — discard once the task completes
A fact or preference that should persist and be reused across future tasksLong-term memory — but define expiration/pruning so stale data doesn't linger
Info that lives in a system outside the agent (a database, a ticketing tool)External memory — the agent queries it fresh rather than caching a copy
A repository-specific fact (e.g. a coding convention)Scope to that repository — GitHub's own Copilot memory keeps repo facts confined to their origin repo
A personal preference (e.g. a reviewer's preferred PR description style)Scope to the user — GitHub's own Copilot memory lets user preferences follow the person across repos

Root-Cause Classification for Failed Agent Runs

If the failure looks like…Classify and fix as
Agent drew the wrong conclusion despite having the right tools and contextReasoning error → revise instructions, workflow, or constraints
Agent had the right idea but called a tool incorrectly or used the wrong oneTool misuse → refine tool usage and tool access
Agent was missing information or hit an environment limitation it couldn't work aroundContext or environment issue → refine memory usage or fix the environment gap

Right-Sizing Autonomy by Risk

If the action is…Guardrail response
Low operational/security/compliance risk, easily reversible (e.g. a comment edit, a draft PR)Lower autonomy friction — avoid approval steps that don't materially reduce risk
Irreversible or compliance-sensitive (e.g. deleting customer data, changing a production secret)Require explicit authorization before the action executes
Default coding-agent behavior (per GitHub docs)Already restricted from pushing to a default branch or merging PRs; workflows an agent PR would trigger are blocked until someone with write access approves them

Quick Answers

What does this page cover that the GH-600 study guide doesn't?

The study guide explains why each domain is tested and how to allocate study hours. This page is glossary and decision tables only, for a final scan before the exam.

What is the COPILOT_MCP_ prefix and why does it matter?

It's the required name prefix for any secret or variable an MCP server needs. Only variables named with that prefix reach the MCP configuration — anything else is invisible to it.

What's the difference between a local and a remote MCP server?

Local is launched by a command and arguments on the executing machine. Remote is reached over HTTPS — GitHub's own hosted server authenticates by OAuth by default.

What are the three root-cause categories for agent failures?

Reasoning errors, tool misuse, and context or environment issues — each with its own fix, shown in the table above.

Does this GH-600 reference print or export cleanly?

Yes — every table here is plain HTML, so a browser print or "print to PDF" renders cleanly.

MSCertQuiz sells practice-exam access for GH-600 and other GitHub and Microsoft certifications; this cheat sheet is written by the same team that builds those questions.

Continue Your GH-600 Prep

Turn This Glossary Into a Passing Score

Start with free GH-600 questions covering every domain above.

Start Free GH-600 Practice