Add it to Claude Code
claude mcp add -e "LOKI_URL=${LOKI_URL}" loki-mcp-server -- uv run server.pyLOKI_URLMake your agent remember this setup
loki-mcp-server's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.
npx conare@latestFree · one command · indexes the sessions already on disk. Set up in the browser instead →
What it does
- Aggregate errors across your cluster with breakdowns by type
- Find crashing or restarting pods
- Regex-based log search across your cluster
- List available namespaces and query specific pods
Tools 5
get_error_summaryGet a summary of errors happening in your cluster.find_pod_restartsFind pods that have restarted or crashed recently.search_logsSearch logs with a regex pattern.list_namespacesList all namespaces that have logs in Loki.get_pod_logsGet logs for a specific pod.Environment Variables
LOKI_URLrequiredThe URL pointing to the Loki serviceTry it
Original README from mvs5465-test/loki-mcp-server
Loki MCP Server
An MCP (Model Context Protocol) server for semantic log querying via Loki. Designed to help AI models answer natural language questions about your cluster logs.
Features
- Error Summary: Aggregate errors across your cluster with breakdowns by type
- Pod Restart Detection: Find crashing/restarting pods
- Log Search: Regex-based log search across your cluster
- Namespace/Pod Discovery: List available namespaces and query specific pods
- Semantic Tool Design: Tool names and parameters match natural language questions
Tools
`get_error_summary`
Get a summary of errors happening in your cluster.
namespace: Filter to specific namespace (empty = all)hours: Look back this many hours (default: 1)
`find_pod_restarts`
Find pods that have restarted or crashed recently.
namespace: Filter to specific namespace (empty = all)hours: Look back this many hours (default: 1)
`search_logs`
Search logs with a regex pattern.
query: Regex pattern to search fornamespace: Filter to specific namespace (empty = all)hours: Look back this many hours (default: 1)limit: Maximum log lines to return (default: 100)
`list_namespaces`
List all namespaces that have logs in Loki.
`get_pod_logs`
Get logs for a specific pod.
pod_name: Pod name (supports wildcards likeollama*)namespace: Namespace of the pod (empty = search all)hours: Look back this many hours (default: 1)limit: Maximum log lines to return (default: 100)
Development
# Install dependencies
uv sync
# Run the server
uv run server.py
The server exposes FastMCP over streamable HTTP at /mcp (default port 8000).
Deployment (In-Cluster)
Add to your local-k8s-apps Helm values with:
- Deployment with the MCP server
- Exposed via HTTP on port 8000
- Environment variable:
LOKI_URLpointing to Loki service
The Ollama MCP bridge will load this server's tools and expose them to the model.