pub async fn mcp_auth_middleware(
middleware: SecurityMiddleware,
) -> impl Fn(Request, Next) -> Pin<Box<dyn Future<Output = Result<Response, StatusCode>> + Send>> + CloneExpand description
Main MCP authentication middleware function for use with Axum
This is the primary entry point for integrating MCP security into an Axum application.
ยงExample
use axum::{Router, routing::get, middleware::from_fn};
use pulseengine_mcp_security_middleware::*;
#[tokio::main]
async fn main() {
let security_config = SecurityConfig::development();
let middleware = security_config.create_middleware().await.unwrap();
let app: Router = Router::new()
.route("/", get(|| async { "Hello, secure world!" }))
.layer(from_fn(move |req, next| {
let middleware = middleware.clone();
async move { middleware.process(req, next).await }
}));
// Start server...
}