Metadata-Version: 2.4
Name: swisstip-core
Version: 0.2.4
Summary: Swiss TIP knowledge release format, validator and the four tool operations over a release
Author: Alexander Bobrovsky
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/bobrovsky420/hackathon2026
Project-URL: Source, https://github.com/bobrovsky420/hackathon2026
Project-URL: Issues, https://github.com/bobrovsky420/hackathon2026/issues
Keywords: mcp,grounding,switzerland,knowledge-release
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.14
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: pydantic<3,>=2.11
Dynamic: license-file

# swisstip-core

**Last update:** 15 September 2026

The shared library of Swiss TIP, the grounding MCP server for Swiss public
information. It ships two modules:

- `swisstip.core`: the Pydantic models of the knowledge release format and of
  the four tool contracts, the release validator and the readiness record.
- `swisstip.runtime`: the four tool operations (`get_coverage`, `search`,
  `resolve`, `get_evidence`) over a validated release, without any transport.

Most users install `swisstip-mcp` (the server) or `swisstip-builder` (the
workstation tools), which depend on this package at the same version.

## Use

Python 3.14 or newer.

```bash
pip install swisstip-core
swisstip-validate-release release.json
```

```python
from pathlib import Path

from swisstip.core.contracts import SearchRequest
from swisstip.runtime.service import ReleaseService

service = ReleaseService.from_file(Path("release.json"))
print(service.search(SearchRequest(query="Anmeldung Gemeinde Zürich")))
```

Knowledge releases are not on PyPI; they are published with the repository's
GitHub releases.

Licence: Apache-2.0.
