refactor: remove SSE transport support from code and documentation (#97)

- Remove support and documentation for sse mode across all language README files
- Update CLI flags and help text to exclude references to sse mode
- Remove SSE server initialization in operation logic
- Adjust error messages to only mention stdio and http transport types
- Update logging setup to remove sse mode conditional logging

See the latest documentation: https://modelcontextprotocol.io/specification/2025-06-18/basic/transports

Signed-off-by: appleboy <appleboy.tw@gmail.com>

Reviewed-on: https://gitea.com/gitea/gitea-mcp/pulls/97
Co-authored-by: appleboy <appleboy.tw@gmail.com>
Co-committed-by: appleboy <appleboy.tw@gmail.com>
This commit is contained in:
appleboy
2025-09-27 08:01:56 +00:00
committed by Bo-Yi Wu (吳柏毅)
parent e9840cf6c0
commit 88471b5de0
6 changed files with 14 additions and 67 deletions

View File

@@ -133,21 +133,6 @@ To configure the MCP server for Gitea, add the following to your MCP configurati
} }
``` ```
- **sse mode**
```json
{
"mcpServers": {
"gitea": {
"url": "http://localhost:8080/sse",
"headers": {
"Authorization": "Bearer <your personal access token>"
}
}
}
}
```
- **http mode** - **http mode**
```json ```json
@@ -227,10 +212,10 @@ The Gitea MCP Server supports the following tools:
## 🐛 Debugging ## 🐛 Debugging
To enable debug mode, add the `-d` flag when running the Gitea MCP Server with sse mode: To enable debug mode, add the `-d` flag when running the Gitea MCP Server with http mode:
```sh ```sh
./gitea-mcp -t sse [--port 8080] --token <your personal access token> -d ./gitea-mcp -t http [--port 8080] --token <your personal access token> -d
``` ```
## 🛠 Troubleshooting ## 🛠 Troubleshooting

View File

@@ -133,21 +133,6 @@ cp gitea-mcp /usr/local/bin/
} }
``` ```
- **sse 模式**
```json
{
"mcpServers": {
"gitea": {
"url": "http://localhost:8080/sse",
"headers": {
"Authorization": "Bearer <your personal access token>"
}
}
}
}
```
- **http 模式** - **http 模式**
```json ```json
@@ -221,10 +206,10 @@ Gitea MCP 服务器支持以下工具:
## 🐛 调试 ## 🐛 调试
要启用调试模式,请在使用 sse 模式运行 Gitea MCP 服务器时添加 `-d` 标志: 要启用调试模式,请在使用 http 模式运行 Gitea MCP 服务器时添加 `-d` 标志:
```sh ```sh
./gitea-mcp -t sse [--port 8080] --token <your personal access token> -d ./gitea-mcp -t http [--port 8080] --token <your personal access token> -d
``` ```
## 🛠 疑难排解 ## 🛠 疑难排解

View File

@@ -133,21 +133,6 @@ cp gitea-mcp /usr/local/bin/
} }
``` ```
- **sse 模式**
```json
{
"mcpServers": {
"gitea": {
"url": "http://localhost:8080/sse",
"headers": {
"Authorization": "Bearer <your personal access token>"
}
}
}
}
```
- **http 模式** - **http 模式**
```json ```json
@@ -221,10 +206,10 @@ Gitea MCP 伺服器支持以下工具:
## 🐛 調試 ## 🐛 調試
要啟用調試模式,請在使用 sse 模式運行 Gitea MCP 伺服器時添加 `-d` 旗標: 要啟用調試模式,請在使用 http 模式運行 Gitea MCP 伺服器時添加 `-d` 旗標:
```sh ```sh
./gitea-mcp -t sse [--port 8080] --token <your personal access token> -d ./gitea-mcp -t http [--port 8080] --token <your personal access token> -d
``` ```
## 🛠 疑難排解 ## 🛠 疑難排解

View File

@@ -21,13 +21,13 @@ func init() {
&flagPkg.Mode, &flagPkg.Mode,
"t", "t",
"stdio", "stdio",
"Transport type (stdio, sse or http)", "Transport type (stdio or http)",
) )
flag.StringVar( flag.StringVar(
&flagPkg.Mode, &flagPkg.Mode,
"transport", "transport",
"stdio", "stdio",
"Transport type (stdio, sse or http)", "Transport type (stdio or http)",
) )
flag.StringVar( flag.StringVar(
&host, &host,
@@ -39,7 +39,7 @@ func init() {
&port, &port,
"port", "port",
8080, 8080,
"see or http port", "http port",
) )
flag.StringVar( flag.StringVar(
&token, &token,

View File

@@ -59,12 +59,12 @@ func parseBearerToken(authHeader string) (string, bool) {
if len(authHeader) < len(bearerPrefix) || !strings.HasPrefix(authHeader, bearerPrefix) { if len(authHeader) < len(bearerPrefix) || !strings.HasPrefix(authHeader, bearerPrefix) {
return "", false return "", false
} }
token := strings.TrimSpace(authHeader[len(bearerPrefix):]) token := strings.TrimSpace(authHeader[len(bearerPrefix):])
if token == "" { if token == "" {
return "", false return "", false
} }
return token, true return token, true
} }
@@ -92,15 +92,6 @@ func Run() error {
); err != nil { ); err != nil {
return err return err
} }
case "sse":
sseServer := server.NewSSEServer(
mcpServer,
server.WithSSEContextFunc(getContextWithToken),
)
log.Infof("Gitea MCP SSE server listening on :%d", flag.Port)
if err := sseServer.Start(fmt.Sprintf(":%d", flag.Port)); err != nil {
return err
}
case "http": case "http":
httpServer := server.NewStreamableHTTPServer( httpServer := server.NewStreamableHTTPServer(
mcpServer, mcpServer,
@@ -113,7 +104,7 @@ func Run() error {
return err return err
} }
default: default:
return fmt.Errorf("invalid transport type: %s. Must be 'stdio', 'sse' or 'http'", flag.Mode) return fmt.Errorf("invalid transport type: %s. Must be 'stdio' or 'http'", flag.Mode)
} }
return nil return nil
} }
@@ -127,3 +118,4 @@ func newMCPServer(version string) *server.MCPServer {
server.WithRecovery(), server.WithRecovery(),
) )
} }

View File

@@ -48,7 +48,7 @@ func Default() *zap.Logger {
MaxAge: 30, MaxAge: 30,
})) }))
if flag.Mode == "http" || flag.Mode == "sse" { if flag.Mode == "http" {
wss = append(wss, zapcore.AddSync(os.Stdout)) wss = append(wss, zapcore.AddSync(os.Stdout))
} }