We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/oculairmedia/Letta-MCP-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
use eventsource_stream::Eventsource;
use futures::stream::StreamExt;
use http::response::Builder;
use reqwest::Response;
use reqwest::ResponseBuilderExt;
use url::Url;
#[tokio::test]
async fn populate_fields() {
let url = Url::parse("https://example.com").unwrap();
let response = Builder::new()
.status(200)
.url(url.clone())
.body(
"
:
event: my-event\r\ndata:line1
data: line2
:
id: my-id
:should be ignored too\rretry:42
data:second
data:ignored
",
)
.unwrap();
let response = Response::from(response);
let mut stream = response.bytes_stream().eventsource();
let event = stream.next().await.unwrap().unwrap();
assert_eq!("my-event", event.event);
assert_eq!(
"line1
line2",
event.data
);
assert_eq!("my-id", event.id);
assert_eq!(std::time::Duration::from_millis(42), event.retry.unwrap());
let event = stream.next().await.unwrap().unwrap();
assert_eq!("message", event.event);
assert_eq!("second", event.data);
let event = stream.next().await;
assert!(event.is_none());
}