use axum::{ extract::State, response::Html, routing::get, Router, }; use std::sync::Arc; use crate::core::shared::state::AppState; pub async fn handle_sources_list_page( State(_state): State>, ) -> Html { let html = r#" Sources

Sources

Loading sources...

"#; Html(html.to_string()) } pub async fn handle_mcp_add_page( State(_state): State>, ) -> Html { let html = r#" Add MCP Server
← Back to Sources

Add MCP Server

Stdio Connection

The command to run the MCP server
"#; Html(html.to_string()) } pub async fn handle_mcp_catalog_page( State(_state): State>, ) -> Html { let html = r#" MCP Server Catalog
← Back to Sources

MCP Server Catalog

Loading catalog...
"#; Html(html.to_string()) } pub fn configure_sources_ui_routes() -> Router> { Router::new() .route("/suite/sources", get(handle_sources_list_page)) .route("/suite/sources/mcp/add", get(handle_mcp_add_page)) .route("/suite/sources/mcp/catalog", get(handle_mcp_catalog_page)) }