- Explore MCP Servers
- mcp-server-langfuse
Langfuse Prompt Management MCP Server
What is Langfuse Prompt Management MCP Server
The Langfuse Prompt Management MCP Server is a server that allows users to access and manage Langfuse prompts through the Model Context Protocol (MCP). It implements functionalities for prompt discovery and retrieval, enabling interactions with Langfuse’s prompt system.
Use cases
This server is useful for developers working with Langfuse to manage and use prompts in applications, streamline prompt retrieval, and facilitate integration with other clients and environments. It can be utilized in various applications including chatbots, text generation, and other interactive systems relying on dynamic prompts.
How to use
To use the MCP server, first install the necessary packages and build the project. Then, configure the MCP server in your application (like Claude Desktop or Cursor) by specifying the command to run the server and setting required environment variables for Langfuse API keys. Once set up, users can access and manage prompts directly.
Key features
Key features of the MCP server include listing all available prompts with optional pagination, retrieving specific prompts with compiled variables, and tools that replicate MCP functionality for compatibility with non-prompt-capable clients. It transforms Langfuse prompts into structured MCP prompt objects.
Where to use
The MCP server can be used in environments that support the Model Context Protocol, such as Claude Desktop and Cursor. It is designed for developers looking to integrate Langfuse prompts into their applications for enhanced user interaction and dynamic content generation.
Overview
What is Langfuse Prompt Management MCP Server
The Langfuse Prompt Management MCP Server is a server that allows users to access and manage Langfuse prompts through the Model Context Protocol (MCP). It implements functionalities for prompt discovery and retrieval, enabling interactions with Langfuse’s prompt system.
Use cases
This server is useful for developers working with Langfuse to manage and use prompts in applications, streamline prompt retrieval, and facilitate integration with other clients and environments. It can be utilized in various applications including chatbots, text generation, and other interactive systems relying on dynamic prompts.
How to use
To use the MCP server, first install the necessary packages and build the project. Then, configure the MCP server in your application (like Claude Desktop or Cursor) by specifying the command to run the server and setting required environment variables for Langfuse API keys. Once set up, users can access and manage prompts directly.
Key features
Key features of the MCP server include listing all available prompts with optional pagination, retrieving specific prompts with compiled variables, and tools that replicate MCP functionality for compatibility with non-prompt-capable clients. It transforms Langfuse prompts into structured MCP prompt objects.
Where to use
The MCP server can be used in environments that support the Model Context Protocol, such as Claude Desktop and Cursor. It is designed for developers looking to integrate Langfuse prompts into their applications for enhanced user interaction and dynamic content generation.
Content
Langfuse Prompt Management MCP Server
Model Context Protocol (MCP) Server for Langfuse Prompt Management. This server allows you to access and manage your Langfuse prompts through the Model Context Protocol.
Demo
Quick demo of Langfuse Prompts MCP in Claude Desktop (unmute for voice-over explanations):
https://github.com/user-attachments/assets/61da79af-07c2-4f69-b28c-ca7c6e606405
Features
MCP Prompt
This server implements the MCP Prompts specification for prompt discovery and retrieval.
-
prompts/list
: List all available prompts- Optional cursor-based pagination
- Returns prompt names and their required arguments, limitation: all arguments are assumed to be optional and do not include descriptions as variables do not have specification in Langfuse
- Includes next cursor for pagination if there’s more than 1 page of prompts
-
prompts/get
: Get a specific prompt- Transforms Langfuse prompts (text and chat) into MCP prompt objects
- Compiles prompt with provided variables
Tools
To increase compatibility with other MCP clients that do not support the prompt capability, the server also exports tools that replicate the functionality of the MCP Prompts.
-
get-prompts
: List available prompts- Optional
cursor
parameter for pagination - Returns a list of prompts with their arguments
- Optional
-
get-prompt
: Retrieve and compile a specific prompt- Required
name
parameter: Name of the prompt to retrieve - Optional
arguments
parameter: JSON object with prompt variables
- Required
Development
npm install
# build current file
npm run build
# test in mcp inspector
npx @modelcontextprotocol/inspector node ./build/index.js
Usage
Step 1: Build
npm install npm run build
Step 2: Add the server to your MCP servers:
Claude Desktop
Configure Claude for Desktop by editing claude_desktop_config.json
{
"mcpServers": {
"langfuse": {
"command": "node",
"args": [
"<absolute-path>/build/index.js"
],
"env": {
"LANGFUSE_PUBLIC_KEY": "your-public-key",
"LANGFUSE_SECRET_KEY": "your-secret-key",
"LANGFUSE_BASEURL": "https://cloud.langfuse.com"
}
}
}
}
Make sure to replace the environment variables with your actual Langfuse API keys. The server will now be available to use in Claude Desktop.
Cursor
Add new server to Cursor:
- Name:
Langfuse Prompts
- Type:
command
- Command:
LANGFUSE_PUBLIC_KEY="your-public-key" LANGFUSE_SECRET_KEY="your-secret-key" LANGFUSE_BASEURL="https://cloud.langfuse.com" node absolute-path/build/index.js
Limitations
The MCP Server is a work in progress and has some limitations:
- Only prompts with a
production
label in Langfuse are returned - All arguments are assumed to be optional and do not include descriptions as variables do not have specification in Langfuse
- List operations require fetching each prompt individually in the background to extract the arguments, this works but is not efficient
Contributions are welcome! Please open an issue or a PR (repo) if you have any suggestions or feedback.