adtech-crosswalk
Open-source AdTech agent toolkit — cross-provider taxonomy mappings, conversion utilities, and LLM-assisted tooling for the advertising technology ecosystem.
Taxonomy Mappings
Bidirectional mappings between AdTech category taxonomies from industry bodies and major platforms.
Taxonomy Types
| Type | Description |
|---|---|
ad_product |
Categories of advertised products |
audience |
Audience segment classifications |
content |
Content category classifications |
Structure
taxonomies/{taxonomy_type}/{provider}/{version}/taxonomy.json
mappings/{taxonomy_type}/{source}__{target}/mapping.json
Provider version conventions:
- IAB Tech Lab:
v1.0,v2.0(immutable snapshots) - Google:
latest(single folder,snapshot_datein metadata)
Mappings
Mapping folders use double-underscore to separate source from target:
iab_v2.0__google_latest = IAB Ad Product 2.0 → Google Product Type (latest)
Each mapping pair has a canonical file (source of truth, indexed by the provider with stable integer IDs) and a derived reverse file (auto-generated, never edited directly).
Discovery
index.json at the repo root lists all registered providers, taxonomies, and mappings. LLM agents should read index.json first to discover available paths.
Scripts
| Script | Purpose |
|---|---|
scripts/ingest/convert_iab_tsv.py |
Fetch IAB TSV → taxonomy.json |
scripts/ingest/convert_google_txt.py |
Fetch Google TXT → taxonomy.json |
scripts/validate.py |
Validate taxonomy.json and mapping.json schemas |
scripts/invert_mapping.py |
Generate reverse mapping from canonical |
Sources
- IAB Tech Lab Taxonomies: https://github.com/InteractiveAdvertisingBureau/Taxonomies
- Google Product Type Taxonomy: https://www.google.com/basepages/producttype/taxonomy.en-US.txt
MCP Server
adtech-crosswalk is available as an MCP server for any LLM agent that supports the Model Context Protocol.
Install
# Run directly with uvx (no install required)
uvx adtech-crosswalk
# Or install globally
pip install adtech-crosswalk
Configure
Add to your MCP client config (Claude Code, Cursor, Copilot, etc.):
{
"mcpServers": {
"adtech-crosswalk": {
"command": "uvx",
"args": ["adtech-crosswalk"]
}
}
}
Tools
| Tool | Description |
|---|---|
list_adtech_taxonomies |
Discover available providers, versions, and mapped pairs |
resolve_adtech_category |
Natural language → matching taxonomy entries (default: IAB, threshold: 0.75) |
get_adtech_mapping |
Category ID → cross-provider mappings, sorted by confidence |
Example
# Step 1 — discover
list_adtech_taxonomies()
# Step 2 — find the right category
resolve_adtech_category(raw_category="craft beer", providers=["iab"], version="v2.0")
→ { matches: [{ category_id: "1004", category_name: "Beer", relevance_score: 0.91 }] }
# Step 3 — get cross-provider mappings
get_adtech_mapping(provider="iab", version="v2.0", category_id="1004")
→ { source: {...}, mappings: [{ target_provider: "google", confidence: 0.95, ... }] }
Release files for adtech-crosswalk 0.1.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 | |
|---|---|---|---|
| adtech_crosswalk-0.1.0.tar.gz | 1.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| adtech_crosswalk-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.4 MB
Release files / adtech_crosswalk-0.1.0.tar.gz
| Download URL | adtech_crosswalk-0.1.0.tar.gz |
|---|---|
| Size | 1.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c5f736bb91b1c93bf427cbe7df6dbd3ee88d69fe5182a55acad7d2c8c1857e60
|
|
BLAKE2b-256 checksum How to use checksums |
10ded820df67cbf341483e614061af4fc4ffe7f0eadfc2651b7983e3649d8f61
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 17, 2026.
Transparency logRelease files / adtech_crosswalk-0.1.0-py3-none-any.whl
| Download URL | adtech_crosswalk-0.1.0-py3-none-any.whl |
|---|---|
| Size | 821.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f2e5cebbacefba831a9bb291f8fca1196a0cb3d8debbb8daa1cd3f59d241a6c9
|
|
BLAKE2b-256 checksum How to use checksums |
5830d125ab54768faaefb41cee788c7b6a0e155fd4ab05f50cb0e9edecfc8079
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 17, 2026.
Transparency log