Skip to content

Latest commit

 

History

History
45 lines (33 loc) · 1.81 KB

L01.md

File metadata and controls

45 lines (33 loc) · 1.81 KB
id course-mcp-tools-l01
type course
title What MCP actually is (2026-07-28)
summary A stateless JSON-RPC 2.0 surface for tools — no handshake, no sessions, versions in _meta.
lang en-US
content_version 1
status reviewed
reviewed_on 2026-09-12
hints
title body
What this checkpoint tests
Understanding the shape before coding: MCP 2026-07-28 is a stateless JSON-RPC 2.0 surface — no initialize handshake, no sessions, versions travel in `_meta.protocolVersion`.
title body
Say what is absent
List what the old flow had that this spec removed: initialize, sessions, roots, sampling. If `initialize` arrives, the right answer is a -32601 error, not a handshake.
title body
When you are done
You can describe the whole lifecycle in one line: a request dict in, a response dict out.

What MCP actually is (2026-07-28)

Objective

A stateless JSON-RPC 2.0 surface for tools — no handshake, no sessions, versions in _meta.

The lesson

Read TASK.md, then run the verifier both ways. The 2026-07-28 specification removed the initialize handshake and sessions: servers answer tools/list and tools/call directly, and each request self-describes its protocol version through _meta. Poke the wire samples in scenario/requests/ by hand while you read.

Exercise

  • Predict the response to 04-removed-initialize.json before checking TASK.md
  • Map each expected starter failure to a spec line

Checkpoint

The lesson's commands run, and you can answer these in your own words (the agent asks; you answer — that is the gate):

  1. Which command did this lesson run, and what did it decide?
  2. What failed at the start, and why — in your own words?
  3. Before trusting a similar change next time, what would you check first?

Expected evidence

The command transcript and your answers.