Read-only MCP server for Shopify analytics with client credentials or static token auth.
Project description
flin-shopify-analytics-mcp
Read-only MCP Server fuer Shopify Analytics, verteilbar ueber PyPI.
Ziel: alle wichtigen Shop-Daten abfragen und insbesondere beantworten koennen:
- wer gekauft hat
- was gekauft wurde
- wie viel gekauft wurde
- wie viel Umsatz je Kunde entstanden ist
Features (v1, nur read)
shopify_list_orders: Orders mit Kunde, Betrag und Line-Itemsshopify_list_customers: Kunden mit Bestellanzahl und Amount Spentshopify_list_products: Produkte/Varianten mit SKU, Preis, Bestandshopify_customer_purchase_summary: Zusammenfassung pro Kundeshopify_sales_by_customer_product: Aggregation "wer hat was wie viel gekauft"
Der Server blockiert GraphQL mutation-Operationen explizit.
Voraussetzungen
- Python 3.10+
uv(empfohlen fueruvx) oderpip- Shopify App mit mindestens diesen Scopes:
read_ordersread_customersread_products
Nutzung
Option A: Direkt ueber PyPI mit uvx (empfohlen)
uvx --refresh -q flin-shopify-analytics-mcp@0.2.5 \
--domain your-store.myshopify.com \
--clientId your_client_id \
--clientSecret your_client_secret \
--apiVersion 2026-04
Option B: Lokal entwickeln
python -m venv .venv
source .venv/bin/activate
pip install -e .
flin-shopify-analytics-mcp --domain your-store.myshopify.com --clientId your_client_id --clientSecret your_client_secret
Auth-Optionen
Option 1: Client Credentials (neue Dev Dashboard Apps)
export SHOPIFY_STORE_DOMAIN="your-store.myshopify.com"
export SHOPIFY_CLIENT_ID="your_client_id"
export SHOPIFY_CLIENT_SECRET="your_client_secret"
export SHOPIFY_API_VERSION="2026-04"
Option 2: Legacy Static Access Token
export SHOPIFY_STORE_DOMAIN="your-store.myshopify.com"
export SHOPIFY_ADMIN_ACCESS_TOKEN="shpat_xxx"
export SHOPIFY_API_VERSION="2026-04"
Hinweis:
- Bei
client_credentialswird das Access Token automatisch angefordert und kurz vor Ablauf erneuert. - Wenn sowohl
SHOPIFY_ADMIN_ACCESS_TOKENals auchSHOPIFY_CLIENT_ID/SHOPIFY_CLIENT_SECRETgesetzt sind, gewinnt der statische Token-Modus.
MCP Client Konfiguration (Beispiel)
Claude Desktop mit uvx
{
"mcpServers": {
"shopify-analytics": {
"command": "uvx",
"args": [
"--refresh",
"-q",
"flin-shopify-analytics-mcp@0.2.5",
"--domain",
"your-store.myshopify.com",
"--clientId",
"your_client_id",
"--clientSecret",
"your_client_secret",
"--apiVersion",
"2026-04"
]
}
}
}
Alternative mit ENV
{
"mcpServers": {
"shopify-analytics": {
"command": "uvx",
"args": ["--refresh", "-q", "flin-shopify-analytics-mcp@0.2.5"],
"env": {
"SHOPIFY_STORE_DOMAIN": "your-store.myshopify.com",
"SHOPIFY_CLIENT_ID": "your_client_id",
"SHOPIFY_CLIENT_SECRET": "your_client_secret",
"SHOPIFY_API_VERSION": "2026-04"
}
}
}
}
Troubleshooting:
- Wenn Claude weiterhin eine alte oder fehlende Version meldet, liegt das fast immer am lokalen
uv-Index-Cache.--refresherzwingt die Aktualisierung. - Fuer einen einmaligen lokalen Reset hilft
uv cache clean flin-shopify-analytics-mcp.
Entwicklung
Python Tests:
python -m unittest discover -s py_tests -v
Release auf PyPI
- Version in
pyproject.tomlundflin_shopify_analytics_mcp/__init__.pyhochziehen. - Commit + Push nach
main. - GitHub Release mit Tag
vX.Y.Zerstellen. - Workflow
.github/workflows/release.ymlpublished automatisch auf PyPI (Trusted Publisher oderPYPI_API_TOKEN).
Hinweis:
- Fuer Trusted Publishing muss das PyPI-Projekt einmalig mit diesem GitHub-Repo/Workflow verknuepft sein.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file flin_shopify_analytics_mcp-0.2.5.tar.gz.
File metadata
- Download URL: flin_shopify_analytics_mcp-0.2.5.tar.gz
- Upload date:
- Size: 23.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ad3c9783dfbc17054d5bfd6ffd87c2db7d89a9c66a5c311f0b9cf4c3317fee3
|
|
| MD5 |
37ebbfe68e2d1902ac92a8f7aff73902
|
|
| BLAKE2b-256 |
84869bd3fb7ca9cb2b82f6d9b32ad68b6d76dc65c2502a9fba1893cade5c06b5
|
Provenance
The following attestation bundles were made for flin_shopify_analytics_mcp-0.2.5.tar.gz:
Publisher:
release.yml on flin-agency/flin-shopify-analytics-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flin_shopify_analytics_mcp-0.2.5.tar.gz -
Subject digest:
4ad3c9783dfbc17054d5bfd6ffd87c2db7d89a9c66a5c311f0b9cf4c3317fee3 - Sigstore transparency entry: 1271318493
- Sigstore integration time:
-
Permalink:
flin-agency/flin-shopify-analytics-mcp@37d06768ccc512f724ece6ac92a9f2e16af97c01 -
Branch / Tag:
refs/tags/v0.2.5 - Owner: https://github.com/flin-agency
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@37d06768ccc512f724ece6ac92a9f2e16af97c01 -
Trigger Event:
push
-
Statement type:
File details
Details for the file flin_shopify_analytics_mcp-0.2.5-py3-none-any.whl.
File metadata
- Download URL: flin_shopify_analytics_mcp-0.2.5-py3-none-any.whl
- Upload date:
- Size: 14.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6d4bd6c5cd005de308f38937c690c5f34dd065bbf5c79f0f6657674a226c1fc8
|
|
| MD5 |
568d4e7bc32e911637f32c64a5cdb220
|
|
| BLAKE2b-256 |
cab8e13ef10f35fdef4eee40f76771907e83140bd643fae6ef9c98dda861ab99
|
Provenance
The following attestation bundles were made for flin_shopify_analytics_mcp-0.2.5-py3-none-any.whl:
Publisher:
release.yml on flin-agency/flin-shopify-analytics-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flin_shopify_analytics_mcp-0.2.5-py3-none-any.whl -
Subject digest:
6d4bd6c5cd005de308f38937c690c5f34dd065bbf5c79f0f6657674a226c1fc8 - Sigstore transparency entry: 1271318545
- Sigstore integration time:
-
Permalink:
flin-agency/flin-shopify-analytics-mcp@37d06768ccc512f724ece6ac92a9f2e16af97c01 -
Branch / Tag:
refs/tags/v0.2.5 - Owner: https://github.com/flin-agency
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@37d06768ccc512f724ece6ac92a9f2e16af97c01 -
Trigger Event:
push
-
Statement type: