oto-core
Connector library for Oto — pure Python API clients for AI agents and automation. No CLI, no server: clients return plain dicts.
pip install oto-core # core (requests, france-opendata)
pip install "oto-core[google]" # + Google Workspace (Drive, Docs, Sheets, Gmail, Calendar, Tasks)
pip install "oto-core[browser]" # + browser-based scraping (LinkedIn, via o-browser)
pip install "oto-core[stock]" # + SIRENE stock queries (DuckDB/parquet)
What's inside
oto.tools.*— one client per service: French company data (SIRENE, INPI, BODACC, BOAMP, DVF via france-opendata), web search (Serper), email finding (Hunter), CRM (Attio, Folk), outreach (Lemlist, Kaspr, Fullenrich), Google Workspace, Slack, WhatsApp, Reddit, Pennylane, Silae (French payroll), and more.oto.config— three-tier secret resolution: environment variables → secret provider (SOPS/age, file, Scaleway Secret Manager) → defaults.oto.tools.common.FieldFilter— reusable response redaction (mask IBANs, anonymize names, drop fields) any connector can apply; driven by code or afield_filters.<service>policy in~/.otomata/config.yaml.
Ecosystem
| Package | Role |
|---|---|
| oto-core (this) | the clients — single source of truth |
| oto-cli | oto command-line façade |
| oto-backend | hosted platform (mcp.oto.ninja — MCP + REST, credential vault, orgs) |
from oto.tools.sirene import SireneClient
client = SireneClient() # reads SIRENE_API_KEY via oto.config
company = client.get_company("130025265")
Conventions: clients are import-lazy per optional dependency, raise on error (no silent fallbacks), and stay free of CLI/printing concerns.
MIT — © Otomata.
Release files for oto-core 1.85.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 | |
|---|---|---|---|
| oto_core-1.85.0.tar.gz | 400.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| oto_core-1.85.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 811.2 kB
Release files / oto_core-1.85.0.tar.gz
| Download URL | oto_core-1.85.0.tar.gz |
|---|---|
| Size | 400.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ee305cc12d818bdb0732f67ee7092a3f86773b9ea69571222721b682e2cf804
|
|
BLAKE2b-256 checksum How to use checksums |
77dfdfce77be5b8cf5cab40f0aadc3c9d2d2d962e6d2fc7d41cfecd61cb6be56
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.4
|
Release files / oto_core-1.85.0-py3-none-any.whl
| Download URL | oto_core-1.85.0-py3-none-any.whl |
|---|---|
| Size | 410.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6ccc92c3df9dc909fab9fffc56b3145fac84b4b108b18e28e1198c78a5c91c89
|
|
BLAKE2b-256 checksum How to use checksums |
e3e48ce3409bd9de71e2d0a0aeb93f6de261857ed67796a5f6917f1aa535b7ef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.4
|