The Qlik Sense MCP Server provides a unified interface for interacting with Qlik Sense Enterprise APIs, enabling comprehensive application management, data analysis, and administrative operations.
Core Capabilities:
- Application Management: Retrieve application lists with filtering and pagination (
get_apps
), detailed metadata including object counts (get_app_details
,get_app_metadata
), and load scripts (engine_get_script
) - Data Analysis & Extraction: Extract field values with frequency (
engine_get_field_values
), generate statistical analysis including min/max/median/standard deviation (engine_get_field_statistics
), create hypercubes for advanced analysis (engine_create_hypercube
), and export data in JSON/CSV formats (engine_create_data_export
) - Administrative Management: Access users (
get_users
), streams (get_streams
), data connections (get_data_connections
), tasks (get_tasks
), extensions (get_extensions
), and content libraries (get_content_libraries
) - Task Automation: Execute specific tasks by ID (
start_task
) for automated workflows - Engine API Integration: Direct interaction with Qlik Sense Engine API for document listing (
engine_get_doc_list
), application operations, sheet retrieval (engine_get_sheets
), and table data extraction (engine_get_table_data
) - Security & Performance: Certificate-based authentication for secure access, optimized queries, and pagination for efficient data retrieval
Uses .ENV files for configuration management of Qlik Sense connection details, authentication credentials, and API settings.
Integrates with GitHub Actions for automated build and publication processes to PyPI when new version tags are pushed.
Supports installation from PyPI and automated publication of new versions through GitHub Actions workflows.
Provides unified interface for Qlik Sense Enterprise Repository API and Engine API operations, enabling access to applications, users, data models, analytics, and data export functionality through 21 specialized tools.
Qlik Sense MCP Server
Model Context Protocol (MCP) server for integration with Qlik Sense Enterprise APIs. Provides unified interface for Repository API and Engine API operations through MCP protocol.
Table of Contents
- Overview
- Features
- Installation
- Configuration
- Usage
- API Reference
- Architecture
- Development
- Troubleshooting
- License
Overview
Qlik Sense MCP Server bridges Qlik Sense Enterprise with systems supporting Model Context Protocol. Server provides 7 essential tools for application metadata retrieval and data analysis operations.
Key Features
- Unified API: Single interface for Qlik Sense Repository and Engine APIs
- Security: Certificate-based authentication support
- Performance: Optimized queries and direct API access
- Analytics: Advanced data analysis and hypercube creation
- Metadata: Comprehensive application and field information
Features
Available Tools
Tool | Description | API | Status |
---|---|---|---|
get_apps | Get comprehensive list of applications with metadata | Repository | ✅ |
get_app_details | Get compact app overview (metadata, fields, master items, sheets/objects) | Engine | ✅ |
engine_get_script | Extract load script from application | Engine | ✅ |
engine_get_field_statistics | Get comprehensive field statistics | Engine | ✅ |
engine_create_hypercube | Create hypercube for data analysis | Engine | ✅ |
get_app_field | Return values of a field with pagination and wildcard search | Engine | ✅ |
get_app_variables | Return variables split by source with pagination and wildcard search | Engine | ✅ |
Installation
Quick Start with uvx (Recommended)
The easiest way to use Qlik Sense MCP Server is with uvx:
This command will automatically install and run the latest version without affecting your system Python environment.
Alternative Installation Methods
From PyPI
From Source (Development)
System Requirements
- Python 3.12+
- Qlik Sense Enterprise
- Valid certificates for authentication
- Network access to Qlik Sense server (ports 4242 Repository, 4747 Engine)
- Ensure your MCP client model can handle large JSON responses; prefer small limits in requests during testing
Setup
- Setup certificates
- Create configuration
Configuration
Environment Variables (.env)
MCP Configuration
Create mcp.json
file for MCP client integration:
Usage
Start Server
Example Operations
Get Applications List
Analyze Application
Create Data Analysis Hypercube
Get Field Statistics
API Reference
get_apps
Retrieves comprehensive list of Qlik Sense applications with metadata, pagination and filtering support.
Parameters:
limit
(optional): Maximum number of apps to return (default: 50, max: 1000)offset
(optional): Number of apps to skip for pagination (default: 0)name_filter
(optional): Filter apps by name (case-insensitive partial match)app_id_filter
(optional): Filter by specific app ID/GUIDinclude_unpublished
(optional): Include unpublished apps (default: true)
Returns: Object containing paginated apps, streams, and pagination metadata
Example (default - first 50 apps):
Example (with name filter):
get_app_details
Gets comprehensive application analysis including data model, object counts, and metadata.
Parameters:
app_id
(required): Application identifier
Returns: Detailed application object with data model structure
Example:
engine_get_script
Retrieves load script from application.
Parameters:
app_id
(required): Application identifier
Returns: Object containing script text and metadata
Example:
get_app_field
Returns values of a single field with pagination and optional wildcard search.
Parameters:
app_id
(required): Application GUIDfield_name
(required): Field namelimit
(optional): Number of values to return (default: 10, max: 100)offset
(optional): Offset for pagination (default: 0)search_string
(optional): Wildcard text mask with*
and%
supportsearch_number
(optional): Wildcard numeric mask with*
and%
supportcase_sensitive
(optional): Case sensitivity forsearch_string
(default: false)
Returns: Object containing field values
Example:
engine_get_field_statistics
Retrieves comprehensive field statistics.
Parameters:
app_id
(required): Application identifierfield_name
(required): Field name
Returns: Statistical analysis including min, max, average, median, mode, standard deviation
Example:
engine_create_hypercube
Creates hypercube for data analysis.
Parameters:
app_id
(required): Application identifierdimensions
(required): Array of dimension fieldsmeasures
(required): Array of measure expressionsmax_rows
(optional): Maximum rows to return (default: 1000)
Returns: Hypercube data with dimensions, measures, and total statistics
Example:
Architecture
Project Structure
System Components
QlikSenseMCPServer
Main server class handling MCP protocol operations, tool registration, and request routing.
QlikRepositoryAPI
HTTP client for Repository API operations including application metadata and administrative functions.
QlikEngineAPI
WebSocket client for Engine API operations including data extraction, analytics, and hypercube creation.
QlikSenseConfig
Configuration management class handling environment variables, certificate paths, and connection settings.
Development
Development Environment Setup
Version Management
Adding New Tools
- Add tool definition in server.py
- Add handler in server.py
- Implement method in API client
Troubleshooting
Common Issues
Certificate Errors
Solution:
- Verify certificate paths in
.env
- Check certificate expiration
- Set
QLIK_VERIFY_SSL=false
for testing
Connection Errors
Solution:
- Verify port 4747 accessibility
- Check server URL correctness
- Verify firewall settings
Authentication Errors
Solution:
- Verify
QLIK_USER_DIRECTORY
andQLIK_USER_ID
- Check user exists in Qlik Sense
- Verify user permissions
Diagnostics
Test Configuration
Test Repository API
Performance
Optimization Recommendations
- Use filters to limit data volume
- Limit result size with
max_rows
parameter - Use Repository API for metadata (faster than Engine API)
Benchmarks
Operation | Average Time | Recommendations |
---|---|---|
get_apps | 0.5s | Use filters |
get_app_details | 2-5s | Analyze specific apps |
engine_create_hypercube | 1-10s | Limit dimensions and measures |
engine_get_field_statistics | 0.5-2s | Use for numeric fields |
Security
Recommendations
- Store certificates securely - exclude from git
- Use environment variables for sensitive data
- Limit user permissions in Qlik Sense
- Update certificates regularly
- Monitor API access
Access Control
Create user in QMC with minimal required permissions:
- Read applications
- Access Engine API
- View data (if needed for analysis)
License
MIT License
Copyright (c) 2025 Stanislav Chernov
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Project Status: Production Ready | 7/7 Tools Working | v1.2.0
Installation: uvx qlik-sense-mcp-server
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Provides unified interface for Qlik Sense Enterprise APIs through Model Context Protocol, offering 21 tools for managing applications, data, users, and analytics operations.
- Table of Contents
- Overview
- Features
- Installation
- Configuration
- Usage
- API Reference
- Architecture
- Development
- Troubleshooting
- Performance
- Security
- License
Related Resources
Related MCP Servers
- AsecurityFlicenseAqualityEnables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.Last updated -7833JavaScript
- AsecurityAlicenseAqualityAn implementation of the Model Context Protocol for the Opik platform that provides a unified interface for accessing Opik's capabilities, supporting multiple transport mechanisms for flexible integration with IDEs and other environments.Last updated -19153TypeScriptApache 2.0
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI agents to interact with 30+ Ethereum-compatible blockchain networks, providing services like token transfers, contract interactions, and ENS resolution through a unified interface.Last updated -28779302TypeScriptMIT License
- -security-license-qualityComprehensive Model Context Protocol server that enables AI agents to interact with 30+ Ethereum-compatible blockchain networks, supporting token transfers, smart contract interactions, and ENS name resolution through a unified interface.Last updated -1TypeScriptMIT License