Skip to main content

oak_sql/mcp/
mod.rs

1#![doc = include_str!("readme.md")]
2use crate::lsp::SqlLanguageService;
3use oak_vfs::MemoryVfs;
4
5/// Starts an MCP (Model Context Protocol) server for SQL.
6pub async fn serve_sql_mcp(vfs: MemoryVfs) {
7    let service = SqlLanguageService::new(vfs);
8    let server = oak_mcp::McpServer::new(service);
9    let mut reader = tokio::io::BufReader::new(tokio::io::stdin());
10    let mut writer = tokio::io::stdout();
11    server.run(&mut reader, &mut writer).await.unwrap()
12}