Overview
What is PlainSignal MCP Server?
PlainSignal MCP Server is a Model Context Protocol (MCP) server implementation that provides tools for retrieving analytics reports and metrics from PlainSignal analytics data. It is intended for developers who want to integrate PlainSignal analytics into MCP-compatible applications, such as Claude Desktop.
How to use PlainSignal MCP Server?
Install the package from npm (@plainsignal/plainsignal-mcp) or build from source. Run the server with a PlainSignal access token via the --token command-line option or the PLAINSIGNAL_TOKEN environment variable. Optionally set a custom API base URL with --api-base-url or API_BASE_URL. For Claude Desktop, add a configuration snippet to claude_desktop_config.json.
Key features of PlainSignal MCP Server
- Retrieves analytics reports via the
getReporttool - Retrieves detailed metrics via the
getSubReporttool - Supports filtering and pagination for sub-reports
- Configurable API base URL and authentication token
- Communicates over STDIO using the MCP SDK
- Works with Node.js 14+ and ES modules
Use cases of PlainSignal MCP Server
- Query analytics reports for a domain over a custom time period
- Drill down into sub-metrics like page or entry page performance
- Integrate PlainSignal data into AI assistants like Claude Desktop
- Automate analytics retrieval with MCP-compatible clients
FAQ from PlainSignal MCP Server
How do I authenticate with the PlainSignal API?
Provide a PlainSignal access token via the --token command-line flag or set the PLAINSIGNAL_TOKEN environment variable.
What are the system requirements?
Node.js version 14 or later that supports ES modules. The server is published as an npm package and runs locally.
How can I customize the API base URL?
Use the --api-base-url option, set the API_BASE_URL environment variable, or pass a URL to the server constructor programmatically. The default is https://app.plainsignal.com/api/v1.
What tools does the server provide?
Two tools: getReport (retrieves an analytics report for a given domain and period) and getSubReport (retrieves detailed metrics for a specific aspect, with optional pagination and filters).
Can I use the server programmatically?
Yes. You can instantiate the PlainSignalStdioServer class with a token and optional API base URL, and run it as a child process or integrate it into your own MCP client.
Are there example clients available?
Yes. The repository includes an example client that demonstrates connecting, listing tools, and calling getReport, as well as a resources example client.