JQ

jwaxman19/qlik-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

11 stars 10 forks 质量 66 趋势 18MIT

An MCP server to run qlik

概览

MCP Server for the Qlik Cloud API, enabling Claude to interact with Qlik applications and extract data from visualizations. List all Qlik applications available in the workspace - Optional inputs: - limit (number, default: 100): Maximum number of apps to return - offset (string): Pagination offset for next page - Returns: List of applications with their IDs and information Get all sheets in a Qlik application - Optional inputs: - app_id (string): The ID of the Qlik application (defaults to QLIK_APP_ID env variable) - Returns: List of sheets with their IDs, titles, and metadata Get all charts in a specific sheet - Required inputs: - sheet_id (string): The ID of the sheet to get charts from - Optional inputs: - app_id (string): The ID of the Qlik application (defaults to QLIK_APP_ID env variable) - Returns: List of charts with their IDs, types, and positions Get data from a specific chart - Required inputs: - sheet_id (string): The ID of the sheet containing the chart - chart_id...

README

以下为原文 README 节选,完整内容请查看原文。

Qlik MCP Server

MCP Server for the Qlik Cloud API, enabling Claude to interact with Qlik applications and extract data from visualizations.

Tools

qlik_get_apps

List all Qlik applications available in the workspace

  • Optional inputs:
    • limit (number, default: 100): Maximum number of apps to return
    • offset (string): Pagination offset for next page
  • Returns: List of applications with their IDs and information

qlik_get_app_sheets

Get all sheets in a Qlik application

  • Optional inputs:
    • app_id (string): The ID of the Qlik application (defaults to QLIK_APP_ID env variable)
  • Returns: List of sheets with their IDs, titles, and metadata

qlik_get_sheet_charts

Get all charts in a specific sheet

  • Required inputs:
    • sheet_id (string): The ID of the sheet to get charts from
  • Optional inputs:
    • app_id (string): The ID of the Qlik application (defaults to QLIK_APP_ID env variable)
  • Returns: List of charts with their IDs, types, and positions

qlik_get_chart_data

Get data from a specific chart

  • Required inputs:
    • sheet_id (string): The ID of the sheet containing the chart
    • chart_id (string): The ID of the chart to get data from
  • Optional inputs:
    • app_id (string): The ID of the Qlik application (defaults to QLIK_APP_ID env variable)
    • max_rows (number, default: 10000): Maximum total rows to retrieve
    • page_size (number, default: 1000): Number of rows per request
    • include_metadata (boolean, default: true): Include chart metadata in response
  • Returns: Chart data with headers, rows, and optional metadata

Setup

Create a Qlik Cloud API Key:

  1. Log in to your Qlik Cloud tenant
  2. Navigate to Settings > API keys
  3. Create a new API key with appropriate access
  4. Save the API key securely

Configure Environment:

Create a .env file with your Qlik Cloud credentials (see .env.example for a template):

QLIK_API_KEY=your_api_key_here
QLIK_BASE_URL=your_tenant_url
QLIK_APP_ID=your_default_app_id
MAX_ROWS_PER_REQUEST=1000
MAX_TOTAL_ROWS=10000
REQUEST_DELAY_MS=100
MAX_RETRIES=3
RETRY_DELAY_MS=1000

Usage with Docker

You can also run this MCP server using Docker:

# Build the Docker image
docker build -t qlik-mcp .

# Run the container
# Make sure to create a .env file first (copy from .env.example)
docker run --env-file .env qlik-mcp

Usage with Claude Desktop

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "qlik": {
      "command": "/path/to/deno",
      "args": ["run", "--allow-all", "--env-file=.env", "src/index.ts"],
      "cwd": "/path/to/qlik-mcp"
    }
  }
}

Using Node.js

{
  "mcpServers": {
    "qlik": {
      "command": "npx",
      "args": ["tsx", "src/index.ts"],
      "env": {
        "QLIK_API_KEY": "your_api_key_here",
在 GitHub 查看完整 README

安装

npx tsx src/index.ts
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "qlik": { "command": "/path/to/deno", "args": ["run", "--allow-all", "--env-file=.env", "src/index.ts"], "cwd": "/path/to/qlik-mcp" } } }