A Model Context Protocol (MCP) server that provides integration with Sisense analytics platform. This server enables LLMs to interact with Sisense data models and create charts programmatically.
- Transport Support: Streamable HTTP/SSE (for HTTP-based clients like Claude Desktop)
- Three MCP Tools:
getDataSources: Retrieve Sisense data sources (or data models)getDataSourceFields: List all available fields for a specific data sourcebuildChart: Build charts from natural language prompts
- Per-Session Authentication: Sisense credentials passed via URL parameters
- TypeScript: Full type safety and modern ESM support
- Lightweight: Pure Node.js HTTP server, no heavy frameworks
- Fast: Optimized for Bun runtime, also runs on Node.js
- Bun >= 1.0.0 (recommended) or Node.js >= 18.0.0
- Sisense instance with API access
- Sisense API token
bun installStart the server:
bun run devThe server will display the connection URL:
Sisense MCP Server running on http://localhost:3000
Connect with:
http://localhost:3000/mcp?sisenseUrl=<SISENSE_URL>&sisenseToken=<SISENSE_TOKEN>
Endpoints:
Health: http://localhost:3000/health
Screenshots: http://localhost:3000/screenshots/
Configure Claude Desktop to connect using the full URL with your Sisense credentials:
http://localhost:3000/mcp?sisenseUrl=https://your-instance.sisense.com&sisenseToken=your-api-token
Or via ngrok/public URL:
https://your-ngrok-url.ngrok-free.app/mcp?sisenseUrl=https://your-instance.sisense.com&sisenseToken=your-api-token
| Parameter | Description |
|---|---|
sisenseUrl |
Full URL to your Sisense instance (e.g., https://instance.sisense.com) |
sisenseToken |
Sisense API authentication token |
PORT |
(Optional) Server port, defaults to 3000 |
The server automatically derives its public base URL from request headers, so it works correctly behind proxies like ngrok.
# Run server in development mode with hot reload
bun run dev
# Build the project
bun run build
# Run tests
bun test
# Type checking
bun run type-check
# Lint
bun run lint