feat(mcp): upgrade to MCP 2026-07-28 spec#62
Open
advancedresearcharray wants to merge 10 commits into
Open
Conversation
…iwifs#460) - Add headless `content` prop to KiwiPage for server-free markdown rendering - Add data-driven `data` prop to KiwiTree for static tree rendering - Create KiwiProvider context (connected/static/custom fetching modes + theme) - Extract remark/rehype plugin chain as standalone kiwiMarkdown exports - Add event callbacks: onWikiLinkClick, onHeadingVisible, onRename, onDelete - Configure Vite library build (vite.lib.config.ts) and tsconfig.lib.json - Update package.json: @kiwifs/ui, peerDependencies on React 19, npm exports Published as @kiwifs/ui@0.1.0 on npm. Co-authored-by: Lam Dao Que Anh <anhlam@Lams-MacBook-Air-9.local> Co-authored-by: Cursor <cursoragent@cursor.com>
Add spec2026Handler middleware for server/discover, Mcp-Method/Mcp-Name routing headers, cache hints on list/read responses, JSON Schema 2020-12 injection on tools/list, and external $ref rejection at registration. Stateless transport strips Mcp-Session-Id after delegate. Closes kiwifs#424
Add TestMCP2026DiscoverAndRoutingHeaders to verify server/discover, Mcp-Method headers, and stateless session stripping at the serve API layer. Include episodic run log for issue kiwifs#424. Co-authored-by: Cursor <cursoragent@cursor.com>
This reverts commit 83f3376.
Force-add pages/fixes/kiwifs-kiwifs/issue-424-mcp-2026-spec.md (gitignored by kiwifs-* pattern) and episodic verification note after reverting unrelated template files from the branch. Co-authored-by: Cursor <cursoragent@cursor.com>
Confirm all MCP regression tests pass and document 2026-07-03 verification for fleet PR handoff on feat/issue-424-mcp-2026-07-28. Co-authored-by: Cursor <cursoragent@cursor.com>
Record fleet takeover verification and PR push after confirming MCP 2026-07-28 tests pass on feat/issue-424-mcp-2026-07-28. Co-authored-by: Cursor <cursoragent@cursor.com>
…over Rebased onto origin/main; MCP 2026-07-28 tests green. Episodic log for PR kiwifs#424. Co-authored-by: Cursor <cursoragent@cursor.com>
77c2d29 to
dfc8fe3
Compare
Re-run full mcpserver and api test suites after hands-on delivery check. Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
spec2026Handlermiddleware around the stateless Streamable HTTP transport to implement MCP 2026-07-28 requirements:server/discover,Mcp-Method/Mcp-Namerouting headers,ttlMs/cacheScopecache hints on list/read responses, and JSON Schema 2020-12$schemainjection ontools/list.http(s)://$refin registered tool schemas at startup (SSRF guard per spec).Mcp-Session-Idafter delegate for stateless transport; legacy2024-11-05initialize remains compatible.github.com/mark3labs/mcp-gov0.49.0 → v0.55.1.Closes kiwifs#424
Test plan
go test ./internal/mcpserver/ -count=1— PASS (14.0s)go test ./internal/api/ -count=1— PASS (14.9s)go test ./internal/api/ -run MCP -count=1— PASS (2.3s)go test ./tests/ -run MCP -count=1— PASS (0.14s)$refrejection, stateless session strippingserve_integration_test.go