sentry-mcp 0.3.0

A minimal MCP server for Sentry
Documentation
mod api_client;
mod tools;

use rmcp::{ServiceExt, transport::stdio};
use tools::SentryTools;
use tracing::info;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    tracing_subscriber::fmt()
        .with_env_filter(
            tracing_subscriber::EnvFilter::from_default_env()
                .add_directive("sentry_mcp=info".parse()?)
                .add_directive("reqwest::connect=debug".parse()?)
                .add_directive("rmcp=warn".parse()?)
                .add_directive("hyper=warn".parse()?)
                .add_directive("hyper_util=warn".parse()?),
        )
        .with_writer(std::io::stderr)
        .with_ansi(false)
        .init();
    info!("Starting sentry-mcp MCP server");
    let tools = SentryTools::new();
    let service = tools.serve(stdio()).await?;
    service.waiting().await?;
    Ok(())
}