Skip to main content

PyPI License

dss-ai-tools

Tools for exploring Data Shape Server (DSS) knowledge graph schemas — classes, properties, their relations, and namespaces — over the DSS HTTP API. There are three ways to use it, all sharing one small client:

Component What it is Where
CLI A single-file Python client (dss), standard library only. Requires Python >= 3.10. dss.py
Claude skill A self-contained Claude Code skill that drives the CLI. skill/
MCP server An MCP server exposing the same endpoints as tools. mcp-server/

The CLI implements the core functionality; the skill and MCP server bundle a copy of dss.py so each is self-contained. Run scripts/sync.sh after editing the canonical dss.py to refresh the copies.

Configure

All three approaches use the same environment variables:

export DSS_BASE_URL=https://dss.semtech.lv   # default
export DSS_TIMEOUT=30                        # optional, seconds

The CLI and MCP tools also accept a per-call override (--base-url / base_url).

CLI

python3 dss.py --help

Install from PyPI to get the dss command on your PATH:

pipx install dss-ai-tools     # provides the `dss` command
# or run without installing:
uvx --from dss-ai-tools dss --help

Or install from a checkout of this repo:

pipx install .          # provides the `dss` command (see pyproject.toml)

Commands

DSS refers to data schemas as ontologies and uses that term throughout its API; the CLI follows the same naming.

Command Description
ontologies [--variant ...] [--tag TAG] List the ontologies (schemas) loaded in DSS; --variant selects an alternate info view, --tag filters (with variant 3).
schema-tags List the tags used to group ontologies.
public-ns List the globally known namespace prefixes shared across ontologies.
namespaces <ont> List the namespace prefixes declared in one ontology.
classes <ont> [--limit N] [--filter STR] List classes in an ontology; narrow with a name filter.
properties <ont> [--limit N] [--filter REGEX] [--kind ...] List properties in an ontology, optionally by kind; narrow with a name filter.
resolve-class <ont> <name> Look up a class by its prefixed name; returns its metadata, including its id.
resolve-property <ont> <name> Look up a property by its prefixed name; returns its metadata, including its id.
class-out-properties <ont> <class_id> [--limit N] List the properties that originate from a class (outgoing).
class-in-properties <ont> <class_id> [--limit N] List the properties that point to a class (incoming).
class-pairs <ont> <p_list> List the (source, target) class pairs that a property connects.
call <ont> <fn> [--body JSON|-] [--param k=v ...] Generic API call: invoke any DSS function not covered by the commands above.

The class-* commands use numeric ids: get a class id from resolve-class and a property id from resolve-property.

Output is indented human-readable JSON by default; pass --compact for single-line (pipe-friendly).

dss ontologies | jq '.[].db_schema_name'
dss classes dbpedia --filter Person --limit 20
dss resolve-property dbpedia dbo:birthPlace
dss class-pairs war_sampo 116

Claude skill

skill/ is a self-contained Claude Code skill. Install it user-level:

mkdir -p ~/.claude/skills
cp -R skill ~/.claude/skills/dss

See docs/USAGE.md for setup, pointing it at a server, and example prompts.

MCP server

See mcp-server/README.md.

You can register it from the published PyPI package (no checkout needed).

Exit codes (CLI)

  • 0 — success, JSON on stdout
  • 2 — HTTP / transport / argument error, message on stderr
  • 130 — interrupted (Ctrl-C)

License

MIT

Release files for dss-ai-tools 0.5.2

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

Source distribution (sdist)

Source distribution for dss-ai-tools 0.5.2
File Size Uploaded
dss_ai_tools-0.5.2.tar.gz 20.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dss-ai-tools 0.5.2
File Interpreter ABI Platform
dss_ai_tools-0.5.2-py3-none-any.whl Python 3 none any Details

Total release size: 30.3 kB

Release files / dss_ai_tools-0.5.2.tar.gz

Download URL dss_ai_tools-0.5.2.tar.gz
Size 20.4 kB
Tags Source
SHA-256 checksum
How to use checksums
09053183836b25aff319d07494a023f88b6cff154da22b4c22678ffc83c7597f
BLAKE2b-256 checksum
How to use checksums
19ec19b0e83dc88baa7b5f31c39821afe8a397386342994e88545f9cdd61868b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / dss_ai_tools-0.5.2-py3-none-any.whl

Download URL dss_ai_tools-0.5.2-py3-none-any.whl
Size 9.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f93773f49674689498b82276053f6587a0eb1997b32dbf72b56b9299501d775a
BLAKE2b-256 checksum
How to use checksums
c2acff5856f5c3738f3be752febebb2a10cbee8a9858e34ca2c69500bb162e7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.5.2 This release

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

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