confluence-knowledge (local MCP service)
Local companion service for the confluence-knowledge Copilot agent.
See ../../docs/confluence-knowledge.md for the full guide.
- GET-only
ConfluenceClient— non-GET raisesSecurityExceptionpre-flight. - Recursive subtree crawl (Cloud v2 + Data Center), resumable.
- Local ONNX embeddings (
bge-m3, quantized) + sparse leg (Qdrant/bm25)- reranker (
bge-reranker-v2-m3, quantized) — MIT/Apache-2.0, pinned inmodels.lock.json, no torch, never a cloud embedding call.
- reranker (
- SQLite + FTS5 + vector-blob index under
.conf_knowledge_index/. - Credentials via OS keyring / env var / chmod-600
.conf_auth.json.
Dev
python3.11+ -m venv .venv && .venv/bin/pip install -e '.[dev]'
.venv/bin/python -m pytest # all offline — no network needed
.venv/bin/python -m ruff check src tests
Before every release, run the end-to-end smoke test. It spawns the real stdio server through the MCP client SDK and uses the real models against a fake Confluence on localhost, with simulated network latency:
.venv/bin/pip install -e '.[models]'
CONF_KNOWLEDGE_HOME=/tmp/ck/home .venv/bin/confluence-knowledge prepare-models
CONF_KNOWLEDGE_HOME=/tmp/ck/home .venv/bin/python scripts/e2e_smoke.py # ends with "E2E OK"
e2e_bootstrap.py goes further — it replays the agent's entire install flow
in a sandboxed $HOME (python discovery → venv → pip install from the
shipped dist/ bundle → models → credentials → register → the real server
over stdio → a full Q&A round-trip). Run it before every release:
CK_MODEL_CACHE=/tmp/ck/home/models .venv/bin/python scripts/e2e_bootstrap.py # "E2E BOOTSTRAP OK"
CLI
| Command | Purpose |
|---|---|
confluence-knowledge setup |
guided env/site/token setup (hidden input, keyring) |
confluence-knowledge prepare-models |
fetch pinned local models once |
confluence-knowledge doctor |
verify config + heartbeat + models |
confluence-knowledge serve |
run the stdio MCP server (what the IDE launches) |
confluence-knowledge clean |
delete the local index (~/.confluence-knowledge/work unless CONF_KNOWLEDGE_WORKDIR is set) |
Metadata
Release files for confluence-knowledge 0.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| confluence_knowledge-0.7.0.tar.gz | 90.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| confluence_knowledge-0.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 160.4 kB
Release files / confluence_knowledge-0.7.0.tar.gz
| Download URL | confluence_knowledge-0.7.0.tar.gz |
|---|---|
| Size | 90.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b411bfa9aac263e87b7e4d1753f76c872244e3009c16b4af5c8125901bf24f14
|
|
BLAKE2b-256 checksum How to use checksums |
7243290b7c91c28bd3eeb23de211910080e91362ba7c65cf42b24afc547fe85f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / confluence_knowledge-0.7.0-py3-none-any.whl
| Download URL | confluence_knowledge-0.7.0-py3-none-any.whl |
|---|---|
| Size | 69.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9c89a4fbc72365c5367494ed3d8debce1b4b68ed7dafc60f379cb0ca86946bc4
|
|
BLAKE2b-256 checksum How to use checksums |
a513ca79b863481a0a6c1c6085cd3fd0da9c06b4476df21fc786645f932e8b63
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for confluence-knowledge 0.7.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.