use async_trait::async_trait;
use mcp_protocol_types::{JsonRpcRequest, JsonRpcResponse};
use crate::error::ServerError;
#[async_trait]
pub trait Transport {
async fn receive_request(&mut self) -> Result<JsonRpcRequest, ServerError>;
async fn send_response(&mut self, response: JsonRpcResponse) -> Result<(), ServerError>;
}