Context7
Up-to-date docs for AI agents
作者による説明(英語の原文)
Query Spanlens LLM observability from Cursor, Claude Desktop, or Continue via MCP.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
SPANLENS_API_KEY, SPANLENS_BASE_URL「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"spanlens": {
"command": "npx",
"args": [
"-y",
"@spanlens/mcp-server"
],
"env": {
"SPANLENS_API_KEY": "your-value",
"SPANLENS_BASE_URL": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add spanlens --env SPANLENS_API_KEY=your-value --env SPANLENS_BASE_URL=your-value -- npx -y @spanlens/mcp-server動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"spanlens": {
"command": "npx",
"args": [
"-y",
"@spanlens/mcp-server"
],
"env": {
"SPANLENS_API_KEY": "your-value",
"SPANLENS_BASE_URL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"spanlens": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@spanlens/mcp-server"
],
"env": {
"SPANLENS_API_KEY": "your-value",
"SPANLENS_BASE_URL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
SPANLENS_BASE_URL envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント spanlens で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:SPANLENS_API_KEY
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.3.0)がレジストリに届いたのは39 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Context7, Codebase Memory, Exa
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Query your LLM observability data from inside Cursor, Continue, or Claude Desktop. Powered by Spanlens.
Ask your IDE's agent things like _"what's my OpenAI spend this week?"_, _"any cost anomalies?"_, or _"show me the most expensive trace today"_ — and get real answers from your Spanlens workspace through the Model Context Protocol.
Public-scope keys (sl_live_pub_*) are read-only — they can query your dashboard data but cannot trigger LLM proxy spend. This server refuses to start with a full-access key because the credential will live in a plaintext config file in your IDE.
Create one at [spanlens.io/projects](https://spanlens.io/projects) → the Public Keys card at the top → + New public key. Copy the sl_live_pub_… value when it's shown.
Cursor — ~/.cursor/mcp.json (or workspace .cursor/mcp.json )
{
"mcpServers": { "spanlens": { "command": "npx", "args": ["-y", "@spanlens/mcp-server"], "env": { "SPANLENS_API_KEY": "sl_live_pub_..." } } } }
Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": { "spanlens": { "command": "npx", "args": ["-y", "@spanlens/mcp-server"], "env": { "SPANLENS_API_KEY": "sl_live_pub_..." } } } }
Continue — ~/.continue/config.yaml
mcpServers:
The agent will discover seven tools and use them automatically when relevant.
| Question | Tool called |
|---|---|
| "How much have we spent on LLMs this week?" | get_stats |
| "Break down cost by model for the last 30 days" | get_stats(groupBy=model) |
| "Which provider is costing us the most this week?" | get_stats(groupBy=provider) |
| "Any cost or latency anomalies?" | get_anomalies |
| "Show me the 10 most recent error calls on gpt-4o" | query_requests |
| "List my recent agent runs" | list_traces |
"Walk me through trace abc123…" | get_trace |
| "What models could we swap to save money?" | get_savings |
| "Which end-user is driving the most spend?" | get_user_analytics |
| Tool | What it returns |
|---|---|
get_stats | Aggregate cost, request count, token usage, latency, error rate. Optional groupBy for a breakdown of cost, requests, latency and error rate: model returns one row per provider and model pair, and provider rolls those rows up into one row per provider, with latency and error rate weighted by request count. |
query_requests | Individual LLM requests with cost, latency, model, error message. Filter by model, provider, status, userId, since, limit. |
list_traces | Agent trace summaries (name, status, duration, span count, total tokens, total cost) for discovering trace IDs. Filter by limit, status, since, query. Pair with get_trace for the full span tree. |
get_trace | Full agent span tree for a trace ID — every LLM/tool/retrieval span with timing, tokens, cost. |
get_anomalies | Cost / latency / error-rate anomalies the platform has detected. Optional since (observation window) and sigma (sensitivity). |
get_savings | Model-swap recommendations with projected monthly savings and adoption status. |
get_user_analytics | Per-end-user usage breakdown — total cost, request count, models touched, recent calls. |
This server is designed for the IDE-config use case, where the credential sits in a plaintext file that's easy to leak (dotfile sync, screen shares, accidental commits). Two defenses:
/api/v1/me/key-info against your workspace, and verifies the key has scope=public. If you accidentally paste a full-access sl_live_* key, the server refuses to start with a clear error pointing at the correct key type./proxy/* or /ingest/* — the Spanlens server enforces this with a 403 + PUBLIC_KEY_WRITE_FORBIDDEN code. The blast radius of a leak is "competitor sees my usage stats", not "competitor runs up my OpenAI bill".| Environment variable | Default | Notes |
|---|---|---|
SPANLENS_API_KEY | _required_ | A sl_live_pub_* key from the Public Keys card on /projects. The server refuses to start without one, and refuses to start with a sl_live_* (full) key. |
SPANLENS_BASE_URL | https://api.spanlens.io | Override for self-hosted Spanlens. Trailing slashes are normalised. |
SPANLENS_TIMEOUT_MS | 30000 | How long each API call may take, in milliseconds, before it fails with a timeout error. Applies to the startup key check and to every tool call. Accepts a whole number from 1 to 600000. Any other value stops the server at startup with an error that names the variable. |
{
"mcpServers": { "spanlens": { "command": "npx", "args": ["-y", "@spanlens/mcp-server"], "env": { "SPANLENS_API_KEY": "sl_live_pub_...", "SPANLENS_BASE_URL": "https://spanlens.your-company.com" } } } }
MIT — see LICENSE in the repo root.