
This lesson is part of Learn MCP, our free course on the Model Context Protocol, within The MCP Guide.
In this lesson you will test yourself with 18 practice questions for the MCPA (Model Context Protocol Associate) exam. Each has four options, the answer and a one-line explanation linked to its source in the MCP spec.
Please read this first. These questions are unofficial. eSEOspace wrote every one of them from the public domain list on the Linux Foundation's MCPA exam page and the 2026-07-28 MCP specification. They are not taken from the real exam, we have not seen the real exam, and we make no claim that these questions resemble its style, difficulty or content. They are a study aid, not a predictor of your score.
Work through the MCPA study guide before you start, or use these questions to find your weak spots first.
Key Takeaways
- All 18 questions are original and unofficial, written from the public exam domains and the 2026-07-28 spec.
- They are spread across the five domains roughly in proportion to the official weights.
- Many questions test changes made in 2026-07-28, such as
server/discover, per-request versions and multi round-trip requests. - Every explanation links to the primary source, so a wrong answer becomes a reading assignment.
Step 1: Set up like a test
Cover the answers, set a timer and answer all 18 before checking. Mark each answer sure, unsure or guess. A lucky guess is still a gap.
Step 2: Answer the questions
MCP Fundamentals
1. Which message format do MCP clients and servers use to communicate? A) REST with JSON bodies B) JSON-RPC 2.0 C) gRPC with Protocol Buffers D) GraphQL
Answer: B. The specification overview says MCP uses JSON-RPC 2.0 messages between hosts, clients and servers.
2. Which server primitive is described as "model-controlled"? A) Prompts B) Resources C) Tools D) Completions
Answer: C. The server features overview lists prompts as user-controlled, resources as application-controlled and tools as model-controlled.
Architecture & Components
3. How many servers does a single MCP client communicate with? A) Exactly one B) Up to three C) Any number at once D) None; the host talks to servers directly
Answer: A. The architecture overview says each client is created by the host and "communicates with exactly one server."
4. In the 2026-07-28 spec, how does a client tell the server which protocol version it is using? A) Once, in an initialize request B) In each request's _meta, using io.modelcontextprotocol/protocolVersion C) In a URL query parameter D) In a session ID header
Answer: B. The Versioning and Compatibility page says every request declares its version in _meta; the initialize handshake was removed.
Interactions & Execution
5. A user asks a flight tool to book a date in the past. How should the server report this? A) A JSON-RPC protocol error with code -32602 B) A tool result with isError: true and a message explaining the problem C) No response, so the client times out D) An empty successful result
Answer: B. The Tools page treats input validation problems as tool execution errors with isError: true, so the model can self-correct.
6. A client calls a tool name the server has never defined. What is the expected response? A) A tool result with isError: true B) A standard JSON-RPC protocol error C) A notifications/message warning D) The server's full tool list
Answer: B. The Tools page lists "unknown tool" as a protocol error and shows a -32602 example.
7. A client sends a request using a protocol version the server does not support. What must the server do? A) Process it using its newest version B) Close the connection C) Return an UnsupportedProtocolVersionError listing the versions it supports D) Ask the user to upgrade by elicitation
Answer: C. The versioning page says the server MUST return this error, with a supported list, so the client can retry.
8. Which method must every server implementing the 2026-07-28 spec support, to advertise its versions, capabilities and identity? A) initialize B) ping C) server/discover D) tools/list
Answer: C. The 2026-07-28 changelog adds server/discover as a MUST for servers; clients may call it first but are not required to.
9. Under the multi round-trip request pattern, how does a server ask the client for extra information it needs to finish a request? A) It sends its own elicitation/create request to the client B) It returns a result with resultType: "input_required" and an inputRequests field C) It opens a second session D) It emits a log notification
Answer: B. The changelog says MRTR replaces server-initiated requests with an InputRequiredResult.
Security & Governance
10. An MCP server receives an access token whose audience is a different API. What should it do? A) Forward it to that API, since the user already consented B) Accept it if the signature is valid C) Reject it, because servers must not accept tokens not issued for them D) Accept it and log a warning
Answer: C. The Security Best Practices page says servers "MUST NOT accept any tokens that were not explicitly issued for the MCP server." See also token passthrough.
11. A tool from an unknown third-party server is annotated destructiveHint: false. How should a client treat that? A) As a guarantee the tool is safe B) As an untrusted hint C) As a reason to skip user consent D) As proof the server was reviewed
Answer: B. The Tools page says clients MUST consider annotations untrusted unless they come from trusted servers.
12. A server gives each user a cart ID that they pass back as a tool argument. Which practice does the spec require? A) Use sequential IDs so they are easy to debug B) Treat possession of the cart ID as proof of identity C) Never treat possession of the handle as authentication D) Put the cart ID in the user's access token
Answer: C. The Security Best Practices page says servers MUST NOT treat possession of a state handle as authentication and should bind handles to the user.
13. Which of these is a server MUST in the Tools page's security considerations? A) Show a confirmation dialog to the user B) Rate limit tool invocations C) Run only over stdio D) Cache every tool result
Answer: B. Servers MUST validate inputs, implement access controls, rate limit invocations and sanitize outputs, per the Tools page. Confirmation prompts are a client SHOULD.
14. A server needs a user's third-party API key during a request. Which elicitation approach does the spec require? A) Form mode, with the field marked secret B) URL mode, so the secret does not pass through the MCP client C) A free-text prompt to the model D) A resource the user uploads
Answer: B. The elicitation page says servers MUST NOT use form mode for secrets such as API keys and MUST use URL mode.
15. Which is listed by the spec as a common scope-design mistake? A) Starting with a minimal read-only scope B) Using step-up authorization for privileged tools C) Publishing all possible scopes in scopes_supported D) Accepting reduced-scope tokens
Answer: C. The Security Best Practices "Common Mistakes" list includes publishing every scope and using wildcard scopes.
Use Cases & Ecosystem
16. What does the official MCP Registry store? A) Server source code B) Compiled binaries C) Metadata that points to packages or remote URLs D) User reviews and ratings
Answer: C. The registry docs say it hosts metadata, while code lives on npm, PyPI, Docker Hub and similar. See the MCP Registry explained.
17. As of the 2026-07-28 spec, how should a new stdio server handle its logs? A) Send notifications/message to the client B) Print them to stdout C) Write them to stderr, or use OpenTelemetry for structured observability D) Store them as MCP resources
Answer: C. The Logging page marks the Logging feature deprecated and recommends stderr or OpenTelemetry.
18. A server supports the Tasks extension, but the client did not declare it. What must the server do? A) Return a task handle anyway B) Fall back to core protocol behavior or reject the request with an error C) Ask the user to install a new client D) Downgrade to the HTTP+SSE transport
Answer: B. The versioning page says the supporting party MUST revert to core behavior or reject the request when the other side lacks an extension.
Step 3: Score and review
Count your correct answers, then sort every miss and guess by domain. Open each linked page and write the rule in your own words. Questions 4, 7, 8 and 9 all cover 2026-07-28 changes; if you missed several, read why MCP became stateless.
Try it
Write three questions of your own for your weakest domain. Base each on one MUST or SHOULD from a spec page, with three plausible wrong answers. Writing questions forces you to read rules precisely.
Recap
You answered 18 original, unofficial questions covering all five MCPA domains, checked each against the 2026-07-28 spec, and turned your misses into a reading list. Next, the 4-week MCPA study plan spreads this work over a month.
Course navigation
Previous lesson: MCPA Study Guide: Domain by Domain.
Next lesson: A 4-Week MCPA Study Plan.
Back to the Learn MCP course outline.
Frequently asked questions
Are these real MCPA exam questions?
No. We wrote them ourselves from the public domain list and the MCP spec. They are not from the real exam, and candidates agree to keep the real exam confidential under the Linux Foundation's certification and confidentiality agreement. Avoid any site that claims to sell real questions.
If I score 18 out of 18, will I pass?
We can't say. We make no claim that these questions match the exam's difficulty or coverage. Use them to find gaps, not to predict a result.
What score do I need on the real exam?
The Linux Foundation's general multiple-choice exam FAQ says a score of 75% or above is needed to pass its multiple-choice exams. That FAQ does not name the MCPA specifically, so confirm the current rule in your exam checklist.
Why do so many questions cover the 2026-07-28 changes?
The exam page points candidates to that version, which changed core behavior such as the handshake. Older tutorials often describe the previous behavior.
Where are the official exam rules?
See Lesson 34: MCPA Exam Day for booking, ID and room rules, all taken from the Linux Foundation's candidate handbook.











