{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_99dhcs2bjq9r","handle":"listo-mcp-observability","url":"https://wellknown.network/agents/listo-mcp-observability","links":{"self":"https://wellknown.network/agents/listo-mcp-observability/record.json","html":"https://wellknown.network/agents/listo-mcp-observability","markdown":"https://wellknown.network/agents/listo-mcp-observability/record.md","api":"https://wellknown.network/api/v1/agents/listo-mcp-observability","status":"https://wellknown.network/api/v1/agents/listo-mcp-observability/status","claim":"https://wellknown.network/agents/listo-mcp-observability/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/listo-mcp-observability/claim.json","badge":"https://wellknown.network/agents/listo-mcp-observability/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/listo-mcp-observability/history","tools":"https://wellknown.network/api/v1/agents/listo-mcp-observability/tools"},"ard":{"identifier":"urn:air::server:listo-mcp-observability","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"listo-mcp-observability","summary":"Lightweight telemetry SDK for MCP servers. Captures MCP tool invocations, HTTP requests, business events, and UI interactions with built-in payload sanitization.","description":"# listo-mcp-observability\n\nLightweight telemetry SDK for Python MCP servers. Captures MCP tool invocations, HTTP requests, business events, and UI interactions with built-in payload sanitization.\n\nPython port of [@listo-labs-ltd/mcp-observability](https://github.com/Listo-Labs-Ltd/mcp-observability) (TypeScript).\n\n## Features\n\n- **Easy setup** — 3 lines with `create_mcp_observability_easy()`\n- **Local dashboard** — Real-time metrics at `/telemetry/dashboard`\n- **Centralized analytics** — Send to Listo in production\n- **MCP tool tracking** — Decorator-based (`@obs.track_tool()`) or programmatic wrapping\n- **Payload sanitization** — Redacts password, token, apiKey, secret, authorization, userid, email, phone, and more\n- **Sampling** — Configurable rates with guaranteed error/session capture\n- **Zero runtime dependencies** — Core uses only Python stdlib\n- **Event categories** — Classify business and UI events as conversion, engagement, impression, navigation, or system\n- **Batch ingestion** — `POST /telemetry/events` for efficient multi-event ingestion\n- **Platform detection** — Identify which AI platform (Claude, ChatGPT, etc.) initiated each session and tool call\n- **Sink composition** — `combine_sinks()` to route events to multiple destinations\n\n## Installation\n\n```bash\n# From PyPI\npip install listo-mcp-observability\n\n# With uv\nuv add listo-mcp-observability\n\n# With optional MCP SDK support\npip install \"listo-mcp-observability[mcp]\"\n\n# With optional Starlette dashboard support\npip install \"listo-mcp-observability[starlette]\"\n```\n\n## Quick Start\n\n```python\nfrom mcp.server.fastmcp import FastMCP\nfrom mcp_observability import create_mcp_observability_easy\n\nmcp = FastMCP(\"my-server\")\nobs = create_mcp_observability_easy(service_name=\"my-server\")\n\n@mcp.tool()\n@obs.track_tool(\"search_hotels\")\nasync def search_hotels(query: str) -> str:\n    return f\"Results for {query}\"\n```\n\n## Environment Variables\n\n| Variable | Description | Default |\n|----------|-------------|---------|…","publisher":{"name":"Listo Labs Ltd","url":null},"homepage":"https://github.com/Listo-Labs-Ltd/mcp-observability-python","repository":"https://github.com/Listo-Labs-Ltd/mcp-observability-python","version":"0.4.0","license":null,"protocols":["mcp"],"tags":["analytics","mcp","model-context-protocol","monitoring","observability","telemetry"],"pricing":null,"endpoints":[{"url":"pypi:listo-mcp-observability","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"dev.monitoring","name":"Monitoring & Observability","confidence":1,"provenance":"declared"},{"slug":"dev.package-management","name":"Packages & Dependencies","confidence":0.825,"provenance":"derived"}],"categories":["dev"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"listo-mcp-observability","registry":"pypi","observedAt":"2026-11-03T11:24:39.852Z","publishedAt":"2026-05-07T14:21:36.047170Z","latestVersion":"0.4.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"listo-mcp-observability","url":"https://pypi.org/project/listo-mcp-observability/","firstSeenAt":"2026-09-09T23:25:42.123Z","fetchedAt":"2026-11-03T11:22:51.666Z","normalizedAt":"2026-11-03T11:22:51.666Z"}]},"firstSeenAt":"2026-09-09T23:25:42.123Z","updatedAt":"2026-11-03T11:24:39.852Z"}