Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Bound pre-lifecycle bootstrap attempts in server initialization

Open
#1,315 0 comments 0 reactions 1 assignee View on GitHub

Maintainers usually reply within 3 days

@DaleSeo is already working on this.

Since Oct 2, 2026.

Assessment

This issue has not been assessed yet.

Description

enhancement P2 T-service T-transport

Follow-up from #1248.

After #1248, serve_server stays in its bootstrap loop until a request selects a lifecycle. Malformed or unsupported requests get an error response and the loop continues. Discover probes also keep the loop open. This lets clients recover, for example after a bare tools/list without _meta. But a client can also keep the connection in the pre-lifecycle state forever by sending requests that never select a lifecycle.

Open question: should rmcp cap the number of pre-lifecycle attempts (or apply a timeout)? Or should the transport that owns the connection handle this?

Options:

  • Count rejected/bootstrap-neutral requests and return ServerInitializeError after N attempts.
  • Add a configurable bootstrap timeout.
  • Leave this to transports and document that expectation.
Dominant language
Rust
Stars
4k
Forks
654
Avg merge
3d 10h
Merged PRs (30d)
33

Getting set up

Open in Codespaces

Starts the project's dev container in your browser, under your own GitHub account.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from modelcontextprotocol/rust-sdk

All issues in modelcontextprotocol/rust-sdk

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.