semvec/pypi-packages huggingface dataset:
agnost-mcp 0.1.11
Analytics SDK for Model Context Protocol Servers
License: MIT
Requires Python: >=3.7

# Agnost Analytics SDK

[![PyPI version](https://badge.fury.io/py/agnost_mcp.svg)](https://badge.fury.io/py/agnost_mcp)
[![Python](https://img.shields.io/pypi/pyversions/agnost.svg)](https://pypi.org/project/agnost_mcp/)

Analytics SDK for tracking and analyzing Model Context Protocol (MCP) server interactions. Get insights into how your MCP servers are being used, monitor performance, and optimize user experiences.

## Installation

```bash
pip install agnost_mcp
```

## Basic Usage

```python
import agnost_mcp
from fastmcp import FastMCP

# Create FastMCP server
mcp = FastMCP("My Server")

@mcp.tool()
def calculate(operation: str, a: float, b: float) -> float:
    """Perform mathematical operations."""
    if operation == "add":
        return a + b
    elif operation == "multiply":
        return a * b
    return 0

# Enable analytics tracking
agnost_mcp.track(mcp, org_id="your-organization-id")
```

## Configuration

You can customize the SDK behavior using the configuration object:

```python
import agnost_mcp

# Create a custom configuration
config = agnost_mcp.config(
    endpoint="https://api.agnost.ai/api/v1",
    disable_input=False,    # Set to True to disable input tracking
    disable_output=False    # Set to True to disable output tracking
)

# Apply the configuration
agnost_mcp.track(
    server=server,
    org_id="your-organization-id",
    config=config
)
```

### Configuration Options

| Option | Type | Default | Description |
|--------|------|---------|-------------|
| `endpoint` | `str` | `"https://api.agnost.ai/api/v1"` | API endpoint URL |
| `disable_input` | `bool` | `False` | Disable tracking of input arguments |
| `disable_output` | `bool` | `False` | Disable tracking of output results |

## Contact

For support or questions, contact the founders: [founders@agnost.ai](mailto:founders@agnost.ai)
nlweb-pilabs-models 0.7.0
Pi Labs model providers for NLWeb
License: MIT
Requires Python: >=3.11

# NLWeb Pi Labs Models

Pi Labs LLM scoring provider for NLWeb.

## Overview

This package provides integration with Pi Labs scoring API for relevance scoring in NLWeb queries.

## Features

- **PiLabsProvider**: LLM provider that uses Pi Labs scoring API
- **PiLabsClient**: HTTP client for Pi Labs API
- Async scoring with httpx and HTTP/2 support
- Thread-safe client initialization

## Installation

```bash
pip install -e packages/providers/pilabs/models
```

## Usage

Configure in your `config.yaml`:

```yaml
llm:
  scoring:
    llm_type: pilabs
    endpoint: "http://localhost:8001/invocations"
    import_path: "nlweb_pilabs_models.llm"
    class_name: "PiLabsProvider"
```

## Requirements

- Python >= 3.11
- httpx with HTTP/2 support
- nlweb_core

## API

The Pi Labs provider expects:
- `request.query`: The user query
- `item.description`: The item to score
- `site.itemType`: The type of item

Returns:
- `score`: Relevance score (0-100)
- `description`: Item description
nlweb-cosmos-site-config 0.7.0
Azure Cosmos DB site configuration provider for NLWeb - stores and retrieves domain-specific elicitation configs
License: MIT
Requires Python: >=3.9

# NLWeb Azure Cosmos DB Site Config Provider

Azure Cosmos DB provider for site-specific configuration storage and lookup.

## Overview

This provider implements site configuration lookup using Azure Cosmos DB, enabling domain-specific query elicitation based on intents and required information checks.

## Features

- **Cosmos DB Integration**: Stores site configs in dedicated `site_configs` container
- **In-Memory Caching**: 5-minute TTL cache for fast lookups
- **Azure AD Support**: Managed Identity or API key authentication
- **Domain Normalization**: Handles www. prefix automatically

## Configuration

Configure in your `config.yaml`:

```yaml
site_config:
  default:
    endpoint_env: COSMOS_DB_ENDPOINT
    api_key_env: COSMOS_DB_KEY
    database_name_env: COSMOS_DB_DATABASE_NAME
    container_name: site_configs
    use_managed_identity: false
    cache_ttl: 300
```

## Usage

The provider is automatically initialized when site_config is configured:

```python
from nlweb_cosmos_site_config import CosmosSiteConfigLookup

# Initialized automatically from config via ProviderMap
# Direct instantiation example:
lookup = CosmosSiteConfigLookup(
    endpoint="https://your-cosmos.documents.azure.com",
    database_name="your-db",
    container_name="site_configs",
    cache_ttl=300,
)

# Get full config for a domain (all config types)
config = await lookup.get_config("yelp.com")

# Get a specific config type
elicitation = await lookup.get_config_type("yelp.com", "elicitation")
```

## Installation

```bash
pip install -e .
```

## License

MIT License - Copyright (c) 2025 Microsoft Corporation