Metadata-Version: 2.4
Name: xyfra-sdk
Version: 1.0.0
Summary: Xyfra Data Platform partner SDK (Python)
License: MIT
Requires-Python: >=3.10
Requires-Dist: httpx>=0.27.0
Requires-Dist: pydantic>=2.0
Provides-Extra: dev
Requires-Dist: ariadne-codegen>=0.13.0; extra == 'dev'
Requires-Dist: datamodel-code-generator>=0.25.0; extra == 'dev'
Requires-Dist: openapi-python-client>=0.21.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Description-Content-Type: text/markdown

# xyfra-sdk

Python SDK for the Xyfra Data Platform partner surface.

## Installation

```bash
pip install xyfra-sdk
```

## Usage

```python
import asyncio
from xyfra_sdk import XyfraClient, XyfraClientOptions

async def main():
    client = XyfraClient(XyfraClientOptions(
        base_url="https://api.xyfra.ai",
        refresh_token="xyfra-rt-...",
        tenant_id="tenant-123",
    ))
    await client.refresh()
    result = await client.call_tool("semantic.query", {"query": "..."})
    print(result)

asyncio.run(main())
```

## Codegen

The `scripts/` directory contains generators that consume the partner OpenAPI,
GraphQL SDL, and MCP schema artefacts and emit typed clients under
`xyfra_sdk/client/`.
