diff --git a/pkg/extension/server.go b/pkg/extension/server.go
index 4e3c4fc2817869a32159cece4fb90706d3bbd36a..4ddb3143008efaeaaf70b5c74042feaece95b5df 100644
--- a/pkg/extension/server.go
+++ b/pkg/extension/server.go
@@ -73,6 +73,12 @@ func SingleExtension(extension Extension) ServerOption {
 	}
 }
 
+func WithRouteFn(fn RouteFn) ServerOption {
+	return func(c *Server) {
+		c.extensions = fn
+	}
+}
+
 type Server struct {
 	extensions RouteFn
 	wrapErr    WrapErrFn