17 lines
558 B
Rust
17 lines
558 B
Rust
use jsonrpsee::async_client::Client;
|
|
use jsonrpsee::core::client::ClientT;
|
|
use crate::rpc_helpers::{NoParams, ToRpcArg};
|
|
use crate::types::{InitializeRequestParams, InitializeResult};
|
|
|
|
struct McpClient {
|
|
client: Client,
|
|
}
|
|
|
|
impl McpClient {
|
|
async fn initialize(&self, params: InitializeRequestParams) -> Result<InitializeResult, anyhow::Error> {
|
|
let result: InitializeResult = self.client.request("initialize", params.to_rpc()).await?;
|
|
self.client.notification("notifications/initialized", NoParams).await?;
|
|
Ok(result)
|
|
}
|
|
}
|