langfuse-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LANGFUSE_BASE_URL | Yes | Base URL of the Langfuse instance, e.g. https://cloud.langfuse.com (EU) or https://us.cloud.langfuse.com (US) or self-hosted URL. | |
| LANGFUSE_ENV_FILE | No | Optional path to a .env file to load instead of ./.env. | |
| LANGFUSE_PUBLIC_KEY | Yes | Project public key (pk-lf-…). | |
| LANGFUSE_SECRET_KEY | Yes | Project secret key (sk-lf-…). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| listTracesA | List Langfuse traces with filters. Returns summary metadata (use getTrace for the full observation tree). |
| getTraceB | Fetch a single trace by id including all nested observations. |
| listObservationsC | List observations (spans, generations, events) with filters. |
| getObservationA | Fetch a single observation by id. |
| listSessionsC | List sessions within a time range. |
| getSessionA | Fetch a session by id, including its traces. |
| listScoresC | List scores with filters. |
| getScoreC | Fetch a single score by id. |
| listScoreConfigsB | List score configurations (definitions for score names, ranges, and categories). |
| getScoreConfigC | Fetch a single score configuration by id. |
| listPromptsB | List prompt definitions tracked in Langfuse. |
| getPromptA | Fetch a prompt by name. Optionally pin to a specific version or label (e.g. 'production'). |
| listDatasetsB | List datasets configured in Langfuse. |
| getDatasetC | Fetch metadata for a dataset by its name. |
| listDatasetItemsC | List items in a dataset (inputs / expected outputs / metadata). |
| getDatasetItemC | Fetch a single dataset item by id. |
| listDatasetRunsC | List runs (evaluation rounds) for a dataset. |
| getDatasetRunB | Fetch a specific dataset run by name. |
| getMetricsC | Run a metrics query (counts, latency, cost, token usage). Pass a JSON query string per the Langfuse metrics API. |
| getDailyMetricsC | Fetch daily aggregated usage / cost / count metrics for traces and observations. |
| listModelsB | List models known to Langfuse (for cost / token attribution). |
| getModelB | Fetch a single model definition by id. |
| listProjectsA | List projects accessible to the current API key (typically a single project). |
| listCommentsC | List comments attached to traces, observations, sessions, or prompts. |
| getCommentA | Fetch a single comment by id. |
| getMediaC | Fetch metadata for a media attachment (image, audio, file) by id. |
| getHealthA | Pings the Langfuse public health endpoint. Useful to validate credentials and connectivity. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 27 tools
Each tool targets a distinct resource or operation (e.g., getComment vs. listComments, getMetrics vs. getDailyMetrics). The 'get' vs 'list' prefix clearly differentiates single-item retrieval from multi-item listing. There is no meaningful overlap.
All tools follow a consistent camelCase verb_noun pattern (e.g., getComment, listDatasets). The verbs are limited to 'get' and 'list', making the naming predictable and easy to understand.
27 tools is on the higher side but still reasonable for a platform like Langfuse, which exposes many entity types (traces, observations, datasets, prompts, etc.). The count is not excessive and each tool serves a clear purpose.
The server is entirely read-only; there are no tools for creating, updating, or deleting resources. This is a significant gap for a full-featured MCP server, as agents cannot perform mutations that are likely needed in many workflows.