Skip to main content

Python SDK for tool usage logging and monitoring

Project description

Observe Python SDK

A Python SDK for tool usage logging and monitoring.

Installation

pip install observee

Usage

You can set the MCP server name either globally or per decorator:

Global Configuration

from observee import ObserveeConfig, observee_usage_logger

# Set the MCP server name globally
ObserveeConfig.set_mcp_server_name("your-mcp-server-name")

@observee_usage_logger
async def your_function():
    # Your code here
    pass

API Key Configuration (Enterprise Customers Only)

from observee import ObserveeConfig

# Set your enterprise API key
ObserveeConfig.set_api_key("your-enterprise-api-key")

Per-Decorator Configuration

from observee import ObserveeConfig, observee_usage_logger

@observee_usage_logger
async def your_function():
    # Your code here
    pass

Features

  • Tool usage logging with async support
  • Automatic logging of:
    • Tool name
    • Input parameters
    • Response data
    • Execution duration
    • Error information (if any)
  • Configurable logging endpoint (defaults to Observe API)
  • Error handling and reporting
  • Performance tracking
  • Flexible MCP server name configuration
  • Enterprise API key support for enhanced features

Logging Details

The SDK automatically logs the following information for each tool usage:

  • MCP server name
  • Tool name (derived from function name)
  • Tool input parameters (as JSON)
  • Tool response
  • Execution duration in milliseconds
  • Any errors that occur during execution
  • API key (for enterprise customers only)

Logs are sent asynchronously to avoid impacting tool performance.

Requirements

  • Python 3.8 or higher
  • Dependencies:
    • httpx
    • pydantic

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

observee-0.1.3.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

observee-0.1.3-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

Details for the file observee-0.1.3.tar.gz.

File metadata

  • Download URL: observee-0.1.3.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.12.1.2 readme-renderer/44.0 requests/2.32.3 requests-toolbelt/1.0.0 urllib3/2.4.0 tqdm/4.67.1 importlib-metadata/8.7.0 keyring/25.6.0 rfc3986/1.5.0 colorama/0.4.6 CPython/3.10.16

File hashes

Hashes for observee-0.1.3.tar.gz
Algorithm Hash digest
SHA256 c922155f02ae7cf21cb9fa5488fbc80c6b1c9a2b1a425f23de290955d0ae2c4b
MD5 99580df3f1547d98fa53da3cd03ab1cb
BLAKE2b-256 03b59c41cb949af4e200be1698dfc45d557b4850ba9bdb612a159fc489c7bf68

See more details on using hashes here.

File details

Details for the file observee-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: observee-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 4.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.12.1.2 readme-renderer/44.0 requests/2.32.3 requests-toolbelt/1.0.0 urllib3/2.4.0 tqdm/4.67.1 importlib-metadata/8.7.0 keyring/25.6.0 rfc3986/1.5.0 colorama/0.4.6 CPython/3.10.16

File hashes

Hashes for observee-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6d6961502265a392a7ae90be5fd65fea6778bda969c258e57504fbdc374f1f98
MD5 c3d1472fee0c83b1c4202fbaab844746
BLAKE2b-256 85072694d49dcc6af817f8e52b94f582e238a44af727492dfd1e21472fd657d4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page