use mcp_server_fishcode2025::{router::RouterService, ByteTransport, Server};
use mcp_sqlite::server::SQLiteRouter;
use tokio::io::{stdin, stdout};
use tracing::{info, Level};
use tracing_subscriber::FmtSubscriber;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let subscriber = FmtSubscriber::builder()
.with_max_level(Level::INFO)
.finish();
tracing::subscriber::set_global_default(subscriber).expect("设置全局默认日志订阅者失败");
info!("启动自定义SQLite MCP服务器");
let router = SQLiteRouter::new(":memory:")?;
let router_service = RouterService(router);
let server = Server::new(router_service);
let transport = ByteTransport::new(stdin(), stdout());
info!("服务器已启动,使用stdio传输");
Ok(server.run(transport).await?)
}