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
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
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
Logs are sent asynchronously to avoid impacting tool performance.
Requirements
- Python 3.8 or higher
- Dependencies:
- httpx
- pydantic
License
MIT
Project details
Release history Release notifications | RSS feed
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.0.tar.gz
(4.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file observee-0.1.0.tar.gz.
File metadata
- Download URL: observee-0.1.0.tar.gz
- Upload date:
- Size: 4.3 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
450492699a24487b0ecb8926930400e38c2e7495e0d547d5650dba1335926b66
|
|
| MD5 |
dc0d224d90b79c6ed38eb6f472556a51
|
|
| BLAKE2b-256 |
16d3944a585fd395ad257ba42449fb02171f1383c6eff26b01c4f84f520e31c3
|
File details
Details for the file observee-0.1.0-py3-none-any.whl.
File metadata
- Download URL: observee-0.1.0-py3-none-any.whl
- Upload date:
- Size: 3.3 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
87ec467fc3b901d742a613f63a95a64e8a1567dd28acef09f8c7cd63f665c0eb
|
|
| MD5 |
9ce8e58be3916243ee1793351817167d
|
|
| BLAKE2b-256 |
f6bedf1465c79d7370c48333b508bda26097b84bec404da126bde70e4a613ad9
|