Skip to main content
Archived

This project has been archived by its maintainers, and is no longer receiving any updates.

quickshell-docs-mcp

Live Quickshell documentation for AI coding agents.

PyPI Python codecov


An MCP server that gives AI agents live access to the official Quickshell documentation, so they stop guessing QML API names from stale training data.

Also included:

  • Qt base types (Rectangle, RowLayout, ...) from doc.qt.io
  • Official example configs from quickshell-examples
  • Real-world implementations, searchable across the Caelestia and Noctalia shells

Every result carries its source URL. When implementations disagree with the docs, the docs win.

Table of Contents

Install

pip install quickshell-docs-mcp        # or: uvx quickshell-docs-mcp
From source
git clone https://github.com/franklinnolasco7/quickshell-docs-mcp
cd quickshell-docs-mcp
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
Nix
nix run github:franklinnolasco7/quickshell-docs-mcp
Docker
docker build -t quickshell-docs-mcp .
docker run --rm -i quickshell-docs-mcp     # speaks MCP over stdio

Configure

opencode (opencode.json):

{
  "mcp": {
    "quickshell-docs": {
      "type": "local",
      "command": ["/absolute/path/to/quickshell-docs-mcp/.venv/bin/quickshell-docs-mcp"],
      "enabled": true
    }
  }
}

Claude Desktop: same JSON under claude_desktop_config.json, wrapped in mcpServers. For HTTP transport, set QUICKSHELL_DOCS_MCP_TRANSPORT=http (plus optional HOST/PORT).

Set QUICKSHELL_DOCS_MCP_LOG=DEBUG for verbose request logging on stderr. Bulk doc indexes persist on disk (~/.cache/quickshell-docs-mcp, 30-day freshness). Relocate or disable with QUICKSHELL_DOCS_MCP_DISK_CACHE, re-tune with QUICKSHELL_DOCS_MCP_DISK_TTL_HOURS.

Tools

Tool What it does
quickshell_search Search type names, guide slugs, optionally full text including deep search over type pages. Call this before writing QML from memory.
quickshell_search_all One-call unified search across Quickshell docs/types, Qt types, official examples, and Caelestia/Noctalia implementations; grouped by source, ranked by relevance
quickshell_find_pattern Describe what you want to build ("Spotlight-style launcher") and get matching real-world implementations with per-pattern API hints and cross-project grouping
quickshell_list_versions Published doc versions and the latest
quickshell_list_types / quickshell_get_type Browse and fetch Quickshell QML type docs
quickshell_list_guide_pages / quickshell_get_guide_page Usage Guide pages as Markdown
quickshell_about / quickshell_changelog About and Changelog pages
quickshell_list_qt_types / quickshell_get_qt_type Qt-side types (QtQuick, Controls, Layouts, ...)
quickshell_list_examples / quickshell_get_example Official example configs
quickshell_search_implementations Find bar/OSD/IPC/... patterns in Caelestia or Noctalia
quickshell_get_implementation Read those files, narrowed via find=
quickshell_explain_error Explain a QML/Quickshell error and suggest a fix, grounded in actual docs
quickshell_validate_qml Statically validate QML source: unknown types, properties, signals, imports, and version-incompatible APIs
quickshell_stats Session call counts and cache-hit ratio

Page-fetching tools accept version="latest" (default) or an explicit version like "v0.3.0". Cache-backed tools accept refresh=True to bypass the 30-minute cache.

Static validation

quickshell_validate_qml statically checks a QML snippet before you run it: unknown Quickshell/Qt types, properties, signals, missing import Quickshell.* statements, obvious scalar type mismatches, and types absent from the requested Quickshell version. It returns structured diagnostics (severity, line/column, confidence, suggested alternatives, and a docs source URL per finding).

It is a lightweight heuristic that complements qmlls, not a replacement: it validates against the same live docs index the other tools use, treats JavaScript bodies as opaque, and reports anything it cannot verify as an info or warning diagnostic rather than a false error. Local component files (a root type matching the filename stem) are skipped rather than flagged.

{"source": "PanelWindow { foo: 123 }", "version": "latest", "filename": "panel.qml"}

Source Hierarchy

  1. Official documentation (quickshell.org, doc.qt.io), authoritative
  2. Official examples, next in line
  3. Caelestia / Noctalia results, practical references labeled real-world implementation

References

Data comes from these upstream sources:

Source URL What it provides
Quickshell docs https://quickshell.org Type references, usage guide, changelog
Qt docs https://doc.qt.io/qt-6 QtQuick base types (Rectangle, RowLayout, etc.)
Quickshell examples https://git.outfoxxed.me/quickshell/quickshell-examples Official example configs
Caelestia shell https://github.com/caelestia-dots/shell Real-world implementation references
Noctalia shell https://github.com/noctalia-dev/noctalia (legacy-v4) Real-world implementation references

Development

See CONTRIBUTING.md for setup, workflow, and how to submit changes.

Limitations

  • Deep type-page search (include_type_pages=True) fetches every type page once per machine (~15s cold, then cached on disk for 30 days across sessions; refresh=True forces a refetch). Plain name search stays instant.
  • Example configs may target a different Quickshell version than yours; listings include a last_modified date so you can judge their age.
  • quickshell_validate_qml is heuristic static analysis; it cannot see local components or dynamic JavaScript and does not replace qmlls. Property-level checks fetch the type's docs page (cached), so the first validation of a new type is network-bound.

License

MIT

Metadata

Release files for quickshell-docs-mcp 1.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for quickshell-docs-mcp 1.4.0
File Size Uploaded
quickshell_docs_mcp-1.4.0.tar.gz 187.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for quickshell-docs-mcp 1.4.0
File Interpreter ABI Platform
quickshell_docs_mcp-1.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 243.9 kB

Release files / quickshell_docs_mcp-1.4.0.tar.gz

Download URL quickshell_docs_mcp-1.4.0.tar.gz
Size 187.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d038644624d3d6a339cf70b6f24e28a55e89861fe5a8ee15c1a3b9f29207d3ee
BLAKE2b-256 checksum
How to use checksums
42441a2a329475f5a013234e8cb82d6d447805526d1e2aca693074cf1a3aa40d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log

Release files / quickshell_docs_mcp-1.4.0-py3-none-any.whl

Download URL quickshell_docs_mcp-1.4.0-py3-none-any.whl
Size 56.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1aa7a5c4d58037186a086514a6a957b5f8dd1ec8e3f1bf22ce8e67916b3434d9
BLAKE2b-256 checksum
How to use checksums
71a36e4259585667b0a380d93ad7d95389971a09acc7688fc36f7f6f48e48aff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page