{"name":"io.github.ThoTischner/observability-mcp","slug":"thotischner-observability-mcp","title":null,"description":"Unified observability gateway for AI agents — Prometheus, Loki & more, with anomaly detection.","url":"https://mcp.market/server/thotischner-observability-mcp","rating":null,"grade":"B","score":77,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":36,"stars":6,"forks":1,"downloads_week":309,"last_push_at":"2026-09-15T12:27:14.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/ThoTischner/observability-mcp","website":null,"version":"3.9.9","remotes":[],"packages":[{"registryType":"npm","identifier":"@thotischner/observability-mcp","version":"3.9.9","transport":{"type":"stdio"},"environmentVariables":[{"description":"Set to 'stdio' when an MCP client spawns the package directly (the npx default starts the HTTP gateway + Web UI on :3000 instead).","format":"string","name":"MCP_TRANSPORT"},{"description":"Prometheus base URL to connect as a metrics source (optional; sources are also configurable via the Web UI / sources.yaml).","format":"string","name":"PROMETHEUS_URL"},{"description":"Loki base URL to connect as a logs source (optional).","format":"string","name":"LOKI_URL"}]}],"tools":[{"name":"detect_anomalies","description":"Scan for anomalies across all monitored services (or a specific service). Detects metric deviations using z-score analysis against recent baseline, checks log error spikes, and correlates signals across metrics and logs. Returns anomalies with severity ratings and cross-signal correlations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_service_health","description":"Get an aggregated health overview for a service combining metrics AND logs. Returns a health score (0-100), status (healthy/degraded/critical), key metric values, log error summary, detected anomalies, and cross-signal correlations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_services","description":"List all monitored services discovered across all connected backends. Returns service names, their data sources, and signal types (metrics/logs).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_sources","description":"List all configured observability backends and their connection status. Use this to discover what data sources are available.","write_action":false,"price_micros":0,"input_schema":null},{"name":"query_logs","description":"Query logs for a service over a given timeframe. Returns log entries with a summary including error/warning counts and top error patterns. Filter by log level, a free-text/regex search, OR structured `labels` (exact-match on backend-extracted fields like method/status/url/environment — far more reliable than regex on structured JSON logs).","write_action":false,"price_micros":0,"input_schema":null},{"name":"query_metrics","description":"Query a specific metric for a service over a given timeframe. Returns time-series data with pre-computed summary statistics (current, average, min, max, trend). Available metrics: cpu, memory, error_rate, request_rate, latency_p99, latency_p50, latency_avg.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":77,"grade":"B","scanned_at":"2026-09-19T21:04:06.554Z","report":{"scannerVersion":"0.1.8","scannedAt":"2026-09-19T21:04:06.561Z","components":{"code":{"score":15,"max":25,"notes":["446 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 4 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"dist/auth/policy/engine.d.ts: …is module) * - External OPA via HTTP eval (slice 4) * * Both surfaces share the s…"},{"id":"net.raw-ip","severity":"medium","component":"code","title":"Network call to a raw IP address","evidence":"dist/middleware/ssrfGuard.test.js: …eus.example.com/api/v1/query\", \"https://8.8.8.8/x\", \"https://1.1.1.1/x\", ]) …"}],"inputs":{"packages":[{"registryType":"npm","identifier":"@thotischner/observability-mcp","version":"3.9.9","found":true,"license":"Apache-2.0","hasInstallScripts":false,"dependencyCount":15,"publishedAt":"2026-09-13T12:46:23.728Z","repositoryUrl":"git+https://github.com/ThoTischner/observability-mcp.git"}],"repo":{"found":true,"owner":"ThoTischner","repo":"observability-mcp","archived":false,"pushedAt":"2026-09-15T12:27:14Z","stars":6,"forks":1,"openIssues":6,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/9863411?v=4","ownerCreatedAt":"2014-11-20T11:34:50Z","license":"Apache-2.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/9863411?v=4&s=128","source":"registry"},"presence":{"stars":6,"forks":1,"downloadsWeek":309,"license":"Apache-2.0","lastPushAt":"2026-09-15T12:27:14.000Z","score":36}}}},"grade_history":[],"reviews":[]}