Spanlens runs on your own machine — the client starts it, so there is no endpoint to ping. 66 installs a week from npm. Last commit 6 Nov 2026.
Query Spanlens LLM observability from Cursor, Claude Desktop, or Continue via MCP.
We read the source, 3 d ago · rules 995398eba69f
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
const value = await redis.eval(
const child = spawn(pm, args, {
path = os.path.join(cwd, filename)
proc = subprocess.run( # noqa: S603 - argv is a fixed list, no shell
aria-label={`Delete ${a.name}`}
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add mcp-server -e 'SPANLENS_API_KEY=<SPANLENS_API_KEY>' -- npx -y @spanlens/mcp-server
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@spanlens/mcp-server"
],
"env": {
"SPANLENS_API_KEY": "<SPANLENS_API_KEY>"
}
}
}
}
[mcp_servers.mcp-server]
command = "npx"
args = ["-y", "@spanlens/mcp-server"]
env = { SPANLENS_API_KEY = "<SPANLENS_API_KEY>" }
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@spanlens/mcp-server"
],
"env": {
"SPANLENS_API_KEY": "<SPANLENS_API_KEY>"
}
}
}
}
{
"servers": {
"mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@spanlens/mcp-server"
],
"env": {
"SPANLENS_API_KEY": "<SPANLENS_API_KEY>"
}
}
}
}
Put your own value in place of
<SPANLENS_API_KEY> (Spanlens API key. Must be a scope=public key (sl_live_pub_*) issued from the Public Keys card at https://spanlens.io/projects — the server refuses to start with a full-access sl_live_* key).
The author’s registry entry marks it as required.
Optional settings from the registry entry, left out of the block above:
SPANLENS_BASE_URL (Override the API endpoint for self-hosted Spanlens. Default: https://api.spanlens.io).
Observability MCP server: query LLM cost/errors/latency & operate alerts/evals from Claude/Cursor
Query and analyse your data from Bitmovin Observability
stdio bridge for the SPOC MCP server — for Claude Desktop, Cursor, Zed
Drive an open 3DStreet scene tab from Claude Desktop or Claude Code via MCP tool calls.
MCP server for querying Foxhound traces from Claude Code, Cursor, and other MCP clients
Read-only analytics for Convex apps, queryable via MCP from Claude, Cursor, and other clients.
MCP server for validating and generating SOUL.md agent identity files from Claude Desktop.
Send WhatsApp messages from Cursor, Claude Code, and Codex via MCP.
Answers built from our own checks of this server.