feat: add streamable HTTP transport support #101

Merged
goern merged 0 commits from refs/pull/101/head into main 2026-03-27 23:13:14 +00:00
goern commented 2026-03-27 23:07:27 +00:00 (Migrated from codeberg.org)

Closes #99

Summary

  • Add --transport http using MCP spec 2025-03-26 streamable HTTP transport via mcp-go's server.NewStreamableHTTPServer
  • Add --http-port flag (default: 8080) for configuring the listen port
  • Update README with new transport docs and configuration table
  • Include openspec plan and showboat demo

Why

Streamable HTTP is the recommended MCP transport as of spec 2025-03-26. It is required for Claude.ai's custom MCP connector and replaces SSE on the deprecation path.

Changes

File Change
pkg/flag/flag.go Add HTTPPort variable
cmd/cmd.go Add --http-port flag, update help text
operation/operation.go Add case "http": transport handler
README.md Document new transport and flag
demos/streamable-http-transport.md Showboat demo
docs/plans/streamable-http-transport.md Openspec plan

Test plan

  • go build ./... passes
  • go test ./... passes
  • forgejo-mcp --transport http starts and accepts MCP connections
  • --transport stdio and --transport sse still work
  • --transport invalid errors with updated valid options

Time spent: 15min

Closes #99 ## Summary - Add `--transport http` using MCP spec `2025-03-26` streamable HTTP transport via `mcp-go`'s `server.NewStreamableHTTPServer` - Add `--http-port` flag (default: 8080) for configuring the listen port - Update README with new transport docs and configuration table - Include openspec plan and showboat demo ## Why Streamable HTTP is the recommended MCP transport as of spec `2025-03-26`. It is required for Claude.ai's custom MCP connector and replaces SSE on the deprecation path. ## Changes | File | Change | |------|--------| | `pkg/flag/flag.go` | Add `HTTPPort` variable | | `cmd/cmd.go` | Add `--http-port` flag, update help text | | `operation/operation.go` | Add `case "http":` transport handler | | `README.md` | Document new transport and flag | | `demos/streamable-http-transport.md` | Showboat demo | | `docs/plans/streamable-http-transport.md` | Openspec plan | ## Test plan - [x] `go build ./...` passes - [x] `go test ./...` passes - [ ] `forgejo-mcp --transport http` starts and accepts MCP connections - [ ] `--transport stdio` and `--transport sse` still work - [ ] `--transport invalid` errors with updated valid options Time spent: 15min
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
agentic-forges/forgejo-mcp!101
No description provided.