Skip to content

Commit a42ec16

Browse files
committed
feat: 添加命令行标志以选择传输类型,支持 stdio 和 sse
1 parent b4ae7cc commit a42ec16

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

internal/server/server.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package server
22

33
import (
44
"context"
5+
"flag"
56
"fmt"
67
"mcp-alapi-cn/internal/config"
78
"mcp-alapi-cn/internal/handler"
@@ -72,5 +73,18 @@ func (s *Server) registerTools(doc *openapi3.T) error {
7273
}
7374

7475
func (s *Server) Serve() error {
76+
var transport string
77+
flag.StringVar(&transport, "t", "stdio", "Transport type (stdio or sse)")
78+
flag.StringVar(&transport, "transport", "stdio", "Transport type (stdio or sse)")
79+
flag.Parse()
80+
81+
if transport == "sse" {
82+
sseServer := server.NewSSEServer(s.mcpServer, server.WithBaseURL(":8080"))
83+
if err := sseServer.Start(":8080"); err != nil {
84+
return err
85+
}
86+
return nil
87+
}
88+
7589
return server.ServeStdio(s.mcpServer)
7690
}

0 commit comments

Comments
 (0)