From 92e19c1be8be2c863af290b1bf78a19c7623b2c2 Mon Sep 17 00:00:00 2001 From: Jonathan Amsterdam Date: Wed, 3 Sep 2025 17:27:38 -0400 Subject: [PATCH] examples/server/auth-middleware: remove custom middleware (#405) The additional middleware added the TokenInfo the context. RequireBearerToken already does that. --- examples/server/auth-middleware/main.go | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/examples/server/auth-middleware/main.go b/examples/server/auth-middleware/main.go index dd1271e..75a38b8 100644 --- a/examples/server/auth-middleware/main.go +++ b/examples/server/auth-middleware/main.go @@ -206,19 +206,6 @@ func CreateResource(ctx context.Context, req *mcp.CallToolRequest, args createRe }, nil, nil } -// authMiddleware extracts token information and adds it to the context -func authMiddleware(next http.Handler) http.Handler { - return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - // In a real application, you would extract token info from the auth middleware's context - // For this example, we simulate the token info that would be available - ctx := context.WithValue(r.Context(), "user_info", &auth.TokenInfo{ - Scopes: []string{"read", "write"}, - Expiration: time.Now().Add(time.Hour), - }) - next.ServeHTTP(w, r.WithContext(ctx)) - }) -} - // createMCPServer creates an MCP server with authentication-aware tools func createMCPServer() *mcp.Server { server := mcp.NewServer(&mcp.Implementation{Name: "authenticated-mcp-server"}, nil) @@ -263,8 +250,8 @@ func main() { }, nil) // Apply authentication middleware to the MCP handler. - authenticatedHandler := jwtAuth(authMiddleware(handler)) - apiKeyHandler := apiKeyAuth(authMiddleware(handler)) + authenticatedHandler := jwtAuth(handler) + apiKeyHandler := apiKeyAuth(handler) // Create router for different authentication methods. http.HandleFunc("/mcp/jwt", authenticatedHandler.ServeHTTP)