Craft Suite API connector
The MCP connector for the ArtCraft suite. It serves every operation of the ArtCraft backend API as one typed tool (268 today), generated from the backend's published API description, and the suite's desktop apps as lazily loaded MCP upstreams (see the apps spec).
Backend tools
Each backend operation is the tool craft_suite_<operationId>, for example
craft_suite_list_tags_handler, craft_suite_omni_gen_image_models_handler,
craft_suite_omni_api_image_generate_handler or
craft_suite_omni_upload_image_media_file_handler. Inputs and outputs are typed
from the description. Reads (GET) are annotated read-only.
| Class | Operations | Policy |
|---|---|---|
| read | 92 | Runs directly |
| generation | 62 | Write: operator switch plus confirmation |
| upload | 24 | Write; the file part is base64 text, sent as a binary multipart part |
| account | 21 | Write (sessions, keys, credentials, profile) |
| moderation | 10 | Write |
| write | 59 | Write (folders, tags, bookmarks, ratings and other changes) |
Every refusal is a typed result {cancelled, operation, reason, write_class}:
BACKEND_NOT_CONFIGURED with no base URL, WRITES_DISABLED without the operator
switch, or the SDK confirmation refusal. Every write decision is logged to the
craft_suite_api.audit logger.
Package identity
The connector is craft-suite-api, imported as craft_suite_api, with the
craft-suite-mcp command and CRAFT_SUITE_API_ configuration prefix.
Usage
| Setting | Meaning |
|---|---|
CRAFT_SUITE_API_BASE_URL |
The backend HTTPS origin, without a path. Unset: every backend call refuses. |
CRAFT_SUITE_API_TOKEN_REF |
An SDK credential reference (for example env://CRAFT_SUITE_SESSION) sent as the session header. |
CRAFT_SUITE_API_ALLOW_WRITES |
Default false. Enables writes; each one still needs confirmation (elicited, or confirm=true). |
CRAFT_SUITE_API_ALLOW_PLAINTEXT |
Default false. Allows a credential over plain HTTP. |
TLS verification stays on. Redirects are not followed, each request is tried once with a 30 s timeout, and responses are capped at 16 MiB. Graph ingestion is unavailable.
{"name":"craft_suite_omni_gen_image_models_handler","arguments":{}}
Provenance
craft_suite_api/api_spec/backend.openapi.json is the backend's published API
description, kept byte for byte and pinned by sha256 in
craft_suite_api/api_spec/backend.source.json. Both ship in the package. When
the server first builds the backend tools, craft_suite_api/backend_spec.py
checks the pin and repairs the document's known defects in memory (missing
references, untyped parameters, multipart upload bodies, the session scheme).
Nothing generated is committed and there is no regenerate step. The backend
source is under its own source-available licence: only the interface
description is used. To take a new description, replace the pinned file,
update the sha256 and run python -m pytest tests -q.
Validation boundary
Tests use the real SDK HTTP, auth and MCP components with a fake transport at the backend boundary. Writes are proven there; live writes need the operator switch and a backend credential.
Metadata
Release files for craft-suite-api 0.8.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 | Actions |
|---|---|---|---|---|
| craft_suite_api-0.8.0.tar.gz | 2.3 MB | Without provenance | Details for craft_suite_api-0.8.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| craft_suite_api-0.8.0-py3-none-any.whl | Python 3 | none | any | Details for craft_suite_api-0.8.0-py3-none-any.whl |
Total release size: 2.6 MB
Release files / craft_suite_api-0.8.0.tar.gz
| Download URL | craft_suite_api-0.8.0.tar.gz |
|---|---|
| Size | 2.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5f22d7beafb9bddaa0cf95c283810d6afbc4aa6853067a8009bec68a1c97a031
|
|
BLAKE2b-256 checksum How to use checksums |
0522124e96102705079170259363dda4da2c82d066d6336399f64da2025df0a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.4
|
Release files / craft_suite_api-0.8.0-py3-none-any.whl
| Download URL | craft_suite_api-0.8.0-py3-none-any.whl |
|---|---|
| Size | 328.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3a8087cddf9ad7b732a85380a5c0a446c9bcbed1d3763f8829d188577952e2e5
|
|
BLAKE2b-256 checksum How to use checksums |
d522b013cd575097014e3beffb1a740af61e3d709eb5480c4a20f754a1de478e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.4
|
Security for craft-suite-api 0.8.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.
To learn more about protecting yourself from malicious actors, visit our package security documentation.