semvec/pypi-packages huggingface dataset:
umami-mcp-server 0.1.1
MCP server exposing Umami analytics (Cloud + self-hosted)
Requires Python: >=3.11

# Umami MCP Server

MCP server that exposes Umami Cloud analytics via tools.

## Tools

- `get_websites` - List all your websites
- `get_stats` - Get visitor statistics
- `get_pageviews` - View page traffic over time
- `get_metrics` - See browsers, countries, devices, and more
- `get_active` - Current active visitors

## Requirements

- Python 3.13+
- `uv`

## Configure

Umami Cloud API base URL: `https://api.umami.is/v1`

Environment variables:

- `UMAMI_API_KEY` - Umami Cloud API key (required for Umami Cloud)
- `UMAMI_USERNAME` - Umami username (self-hosted only)
- `UMAMI_PASSWORD` - Umami password (self-hosted only)
- `UMAMI_API_BASE` (optional) - defaults to `https://api.umami.is/v1`

Auth rules:

- Umami Cloud: only `UMAMI_API_KEY` is supported.
- Self-hosted: you can use `UMAMI_API_KEY` or `UMAMI_USERNAME` + `UMAMI_PASSWORD`.
- You must configure at least one of these: `UMAMI_API_KEY` OR (`UMAMI_USERNAME` and `UMAMI_PASSWORD`).
- For self-hosted username/password auth, set `UMAMI_API_BASE` to your instance API root (e.g. `https://your-umami.example/api`).

All tool parameters that represent times accept ISO datetimes. If a datetime is missing a timezone, it is treated as UTC.

## Run locally

```bash
uvx run umami-mcp-server
```

## OpenCode MCP config

Example `~/.config/opencode/opencode.json` (replace the API key and adjust the path if your clone lives elsewhere):

```json
{
  "$schema": "https://opencode.ai/config.json",
  "theme": "system",
  "mcp": {
    "umami": {
      "type": "local",
      "command": [
        "uvx",
        "umami-mcp-server"
      ],
      "environment": {
        "UMAMI_API_KEY": "YOUR_UMAMI_CLOUD_API_KEY",
        "UMAMI_API_BASE": "https://api.umami.is/v1"
      },
      "enabled": true,
    }
  }
}
```

Self-hosted example:

```json
{
  "mcp": {
    "umami": {
      "type": "local",
      "command": ["uvx", "umami-mcp-server"],
      "environment": {
        "UMAMI_USERNAME": "YOUR_USERNAME",
        "UMAMI_PASSWORD": "YOUR_PASSWORD",
        "UMAMI_API_BASE": "https://your-umami.example"
      }
    },
    "enabled": true,

  }
}
```
nadap 2.2.1
nadap validates and pre-process data structure, data types and values
Requires Python: >=3.10

# nadap

**N**amespace **A**ware **D**ata V**a**lidator and **P**re-processor

## Introduction

This Python module provides data validation against a data schema.
The data schema describes the structure, the data types and
all value limitations which a given data must match.

In addition data values at defined points within the data schema
can be referenced among each other. They can be tested on uniqueness
or if at some point in the data a value (consumer) is the same
value that is located at another point in data (producer).

Furthermore, input data can be enriched with default values or values
can be converted (i.e. into another data type).

## Documentation

A documentation about the concept, features, data types, API details
and examples can be found at
[Read the Docs](https://nadap.readthedocs.io/).

## License

This project is licensed under GPLv3.
See LICENSE file within this project.

## Contributing

The source code development is hosted at
[GitLab.com](https://gitlab.com/ko.no/nadap).