go-sdk/docs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Robert Findley 1943780255
mcp: validate tool names (#640)
Implement SEP 986, enforcing restrictions on tool names. Since we're
already at v1 we couldn't turn this into a panic, so use an error log
instead. This is consistent with the typescript SDK. A note is left in
our 'rough edges' doc to panic in v2.

Fixes #621
2025-11-19 17:01:50 -05:00
..
client.md docs: document support for resumability and redelivery (#606) 2025-10-27 14:00:58 -04:00
protocol.md docs: document support for resumability and redelivery (#606) 2025-10-27 14:00:58 -04:00
README.md docs: document known rough edges (#609) 2025-10-29 10:57:45 -04:00
rough_edges.md mcp: validate tool names (#640) 2025-11-19 17:01:50 -05:00
server.md mcp: update to jsonschema that does not validate structs (#511) 2025-09-22 15:28:04 -04:00
troubleshooting.md docs: document support for resumability and redelivery (#606) 2025-10-27 14:00:58 -04:00

Features

These docs mirror the official MCP spec. Use the index below to learn how the SDK implements a particular aspect of the protocol.

Base Protocol

  1. Lifecycle (Clients, Servers, and Sessions).
  2. Transports
    1. Stdio transport
    2. Streamable transport
    3. Custom transports
  3. Authorization
  4. Security
  5. Utilities
    1. Cancellation
    2. Ping
    3. Progress

Client Features

  1. Roots
  2. Sampling
  3. Elicitation

Server Features

  1. Prompts
  2. Resources
  3. Tools
  4. Utilities
    1. Completion
    2. Logging
    3. Pagination

TroubleShooting

See troubleshooting.md for a troubleshooting guide.

Rough edges

See rough_edges.md for a list of rough edges or API oversights that can't be addressed due to our compatibility promise. We'll revisit these if/when we move to a v2 of the SDK.