Skip to main content

claribi-mcp

Python client for the clariBI MCP Server.

The clariBI MCP Server lets you sign up users, list dashboards, run analyses, and generate reports via the Model Context Protocol. This SDK is a thin synchronous JSON-RPC client built on httpx with one typed Python method per registered server tool:

from claribi_mcp import Client

with Client(api_key="claribi_mcp_...") as client:
    client.initialize()
    dashboards = client.list_dashboards()
    print(dashboards.structured["items"])

    result = client.run_analysis(question="What was revenue last quarter?")
    print(result.text)

Install

pip install claribi-mcp

Authentication

Either:

from claribi_mcp import Client, BearerTokenAuth

def refresh():
    new_token, new_expires_at = some_oauth_refresh()
    return new_token, new_expires_at

client = Client(
    auth=BearerTokenAuth(
        access_token=initial_token,
        expires_at=initial_expires_at,
        refresh_callable=refresh,
    ),
)

Tool surface

The SDK exposes one typed method per server tool. Methods are auto-generated from the live /api/mcp-server/tool-catalog/ endpoint so they always match what the server actually supports.

Headline methods (read-only):

  • client.list_dashboards(limit=20, offset=0, search=None)
  • client.get_dashboard(dashboard_id=...)
  • client.list_reports(...), client.get_report(...)
  • client.list_data_sources(...), client.get_data_source_schema(...)
  • client.get_usage(), client.get_billing_status()
  • client.check_pricing(tier=None)

Write methods (require analysis:run, reports:write, etc. scopes):

  • client.run_analysis(question=..., wait_seconds=30)
  • client.get_analysis_status(job_id=...)
  • client.generate_report(name=..., template_id=None, output_format='pdf')
  • client.create_checkout_session(tier='professional', billing_period='monthly')

Signup methods (no auth required):

  • client.register_account(email=..., organization_name=..., accept_terms=True)
  • client.verify_email(pending_id=..., code=..., password=...)

Sign up via SDK

client = Client()  # no auth — public tools only
pending = client.register_account(
    email="me@example.com",
    organization_name="My Team",
    accept_terms=True,
)
pending_id = pending.structured["pending_id"]
code = input("Enter the 6-digit code from your email: ")
verified = client.verify_email(
    pending_id=pending_id,
    code=code,
    password="a-strong-password",
)
api_key = verified.structured["mcp_api_key"]
print(f"Save this key: {api_key}")

Codegen

Regenerate the typed tool surface against your server:

python scripts/codegen.py \
    --catalog https://claribi.com/api/mcp-server/tool-catalog/ \
    --output  claribi_mcp/generated

License

MIT.

Metadata

Release files for claribi-mcp 0.1.0

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

Source distribution (sdist)

Source distribution for claribi-mcp 0.1.0
File Size Uploaded
claribi_mcp-0.1.0.tar.gz 14.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for claribi-mcp 0.1.0
File Interpreter ABI Platform
claribi_mcp-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 27.1 kB

Release files / claribi_mcp-0.1.0.tar.gz

Download URL claribi_mcp-0.1.0.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
bf678514442c76cb264514507c5a056a9bd52b2708c7aa2a5f561e60d1be550d
BLAKE2b-256 checksum
How to use checksums
dbedaaec70301dcc3e1998405bdbfdd49e0f66dea82f29afbbdba57a2137f624
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 Jun 2, 2026.

Transparency log

Release files / claribi_mcp-0.1.0-py3-none-any.whl

Download URL claribi_mcp-0.1.0-py3-none-any.whl
Size 13.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
70fc883b335fa60c099a1ddce4da06e3c292db5e367c06f1e1a83c813f8cf4e4
BLAKE2b-256 checksum
How to use checksums
5eaea7aa5a0e5501e8e9f79d400f000f38696a495d98acc1e6a76eb5fbc4f939
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 Jun 2, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

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