The Perses MCP Server is a local Model Context Protocol (MCP) Server that enables the LLM hosts(Claude Desktop, VS Code, Cursor) to interact with the Perses Application in a standardized way.
Claude Desktop
perses-claude.mov
VS Code with GitHub Copilot
perses-mcp-demo-vs-code.mov
- percli
PERSES_TOKEN
- Login to your Perses server using the
percli
command line tool:
percli login <PERSES_SERVER_URL>
- After successful login, retrieve your token:
percli whoami --show-token
- Copy the token to use in your MCP server configuration.
To add this MCP server to Claude Desktop:
-
Create or edit the Claude Desktop configuration file at:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
You can easily access this file via the Claude Desktop app by navigating to Claude > Settings > Developer > Edit Config
.
- Add the following JSON block to the configuration file:
{
"mcpServers": {
"perses-mcp": {
"command": "<ABSOLUTE_PATH_TO_PERSES_MCP_BINARY>",
"args": [
"--perses-server-url",
"<PERSES_SERVER_URL>"
],
"env": {
"PERSES_TOKEN": "<PERSES_TOKEN>"
}
}
}
}
- Restart Claude Desktop for the changes to take effect.
To integrate the MCP server with VS Code GitHub Copilot, follow these steps:
-
Open User Settings (JSON) in VS Code:
- Press
Cmd + Shift + P
(on macOS) orCtrl + Shift + P
(on other platforms). - Type
Preferences: Open User Settings (JSON)
and select it.
- Press
-
Add the following JSON block to the User Settings (JSON) file:
{
"inputs": [
{
"type": "promptString",
"id": "perses-token",
"description": "PERSES_TOKEN to connect with Perses Application",
"password": true
}
],
"servers": {
"perses-mcp": {
"command": "<ABSOLUTE_PATH_TO_PERSES_MCP_BINARY>",
"args": [
"--perses-server-url",
"http://localhost:8080"
],
"env": {
"PERSES_TOKEN": "${input:perses-token}"
}
}
}
}
- Optionally, create a file named
.vscode/mcp.json
in your workspace and add the same JSON block. This allows you to share the configuration with others.
Tool | Description | Required Parameters |
---|---|---|
perses_list_projects |
List all projects | - |
Tool | Description | Required Parameters |
---|---|---|
perses_list_dashboards |
List all dashboards for a specific project | project |
Tool | Description | Required Parameters |
---|---|---|
perses_list_global_datasources |
List all global datasources | - |
perses_list_datasources |
List all datasources for a specific project | project |
Tool | Description | Required Parameters |
---|---|---|
perses_list_global_variables |
List all global variables | - |
perses_list_variables |
List all variables for a specific project | project |
The code is licensed under an Apache 2.0 license.