semvec/pypi-packages huggingface dataset:
libosdp 3.1.0
Library implementation of IEC 60839-11-5 OSDP (Open Supervised Device Protocol)
Requires Python: >=3.8

# LibOSDP for Python

This package exposes the C/C++ library for OSDP devices to python to enable rapid
prototyping of these devices. There are two modules exposed by this package:

- `osdp_sys`: A thin wrapper around the C/C++ API; this is a low level API and
  is no longer recommended to use this directly.

- `osdp`: A wrapper over the `osdp_sys` to provide python friendly API; this
  implementation which is now powering the integration testing suit used to test
  all changes made to this project.

## Install

You can install LibOSDP from PyPI using,

```sh
pip install libosdp
```

Or, from github,

```sh
pip install -e "git+https://github.com/goToMain/libosdp#egg=libosdp&subdirectory=python"
```

Or, from source using,

```sh
git clone https://github.com/goToMain/libosdp --recurse-submodules
cd libosdp/python
python3 setup.py install
```

## Quick Start

### Control Panel Mode

```python
# Create a communication channel
channel = SerialChannel("/dev/ttyUSB0")

# populate osdp_pd_info_t from python
pd_info = [
    PDInfo(101, channel, scbk=KeyStore.gen_key()),
]

# Create a CP device and kick-off the handler thread and wait till a secure
# channel is established.
cp = ControlPanel(pd_info, log_level=LogLevel.Debug)
cp.start()
cp.sc_wait_all()

while True:
    ## Check if we have an event from PD
    led_cmd = { ... }
    event = cp.get_event(pd_info[0].address)
    if event:
        print(f"CP: Received event {event}")

    # Send LED command to PD-0
    cp.send_command(pd_info[0].address, led_cmd)
```

see [examples/cp_app.py][2] for more details.

### Peripheral Device mode:

```python
# Create a communication channel
channel = SerialChannel("/dev/ttyUSB0")

# Describe the PD (setting scbk=None puts the PD in install mode)
pd_info = PDInfo(101, channel, scbk=None)

# Indicate the PD's capabilities to LibOSDP.
pd_cap = PDCapabilities()

# Create a PD device and kick-off the handler thread and wait till a secure
# channel is established.
pd = PeripheralDevice(pd_info, pd_cap)
pd.start()
pd.sc_wait()

while True:
    # Send a card read event to CP
    card_event = { ... }
    pd.notify_event(card_event)

    # Check if we have any commands from the CP
    cmd = pd.get_command()
    if cmd:
        print(f"PD: Received command: {cmd}")
```

see [examples/pd_app.py][3] for more details.

[1]: https://libosdp.sidcha.dev/api/
[2]: https://github.com/goToMain/libosdp/blob/master/examples/python/cp_app.py
[3]: https://github.com/goToMain/libosdp/blob/master/examples/python/pd_app.py
aelklog 0.1.1
A simple logging package that sends logs asynchronously to ELK with customizable fields.
Requires Python: >=3.8

# aelklog

###  A simple logging package that sends logs asynchronously to ELK with customizable fields. 

### Usage
```python
import aelklog

log4km = aelklog.setup_logstash_logger(logger_name="raster_image_4km", logstash_host="192.168.77.8", logstash_port=5045)
log16km = aelklog.setup_logstash_logger(logger_name="raster_image_16km", logstash_host="192.168.77.8", logstash_port=5045)

def test4km():
    log4km.warning("test", extra={"custom_fields": {"who": "you"}})

def test16km():
    log16km.warning("test", extra={"custom_fields": {"who": "fangj"}})

if __name__ == '__main__':
    test4km()
    test16km()
```
iflow-mcp-cleanuri-url-shorterner 0.1.1
A URL shortener MCP server using CleanURI API
Requires Python: >=3.10

[![MseeP.ai Security Assessment Badge](https://mseep.net/pr/talismanic-cleanuri-url-shortener-mcp-badge.png)](https://mseep.ai/app/talismanic-cleanuri-url-shortener-mcp)

# URL Shortener MCP Tool

[![smithery badge](https://smithery.ai/badge/@Talismanic/cleanuri-url-shortener-mcp)](https://smithery.ai/server/@Talismanic/cleanuri-url-shortener-mcp)

<a href="https://glama.ai/mcp/servers/@Talismanic/cleanuri-url-shortener-mcp">
  <img width="380" height="200" src="https://glama.ai/mcp/servers/@Talismanic/cleanuri-url-shortener-mcp/badge" alt="URL Shortener MCP server" />
</a>

This project provides a simple URL shortening tool using the [CleanURI API](https://cleanuri.com/) and is designed to run as a [FastMCP](https://github.com/multiprompt/fastmcp) server tool.

## ✨ Features

- Shortens any given URL using the CleanURI API.
- Exposes the functionality as a tool via FastMCP.
- Includes proper error handling and response validation.
- Designed to run via `stdio` transport for integration with agent or tool-based systems.

## 🚀 Usage

### 1. Requirements

- Python 3.10+
- `httpx`
- `fastmcp`

## 2. Installation

### Installing via Smithery

To install URL Shortener Tool for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@Talismanic/cleanuri-url-shortener-mcp):

```bash
npx -y @smithery/cli install @Talismanic/cleanuri-url-shortener-mcp --client claude
```

### Manual Installation
```bash
uv add httpx 'mcp[cli]'
```
### Docker Installation:
```
docker build -t url-shortener .
```
### 3. Running
```
uv run main.py
```
For docker based use, we dont need to do anything here.


### 4. Adding in Claude Desktop

#### With the uv
```
{
  "mcpServers": {
    "url-shortener": {
      "command": "/Users/{userName}/.local/bin/uv",
      "args": [
        "--directory",
        "{path_to_repo}/cleanuri-url-shortener-mcp",
        "run",
        "main.py"
      ]
    }
  }
}
```

#### With Docker
```
{
  "mcpServers": {
    "url-shortener": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--init",
        "-e",
        "DOCKER_CONTAINER=true",
        "url-shortener"
      ]
    }
  }
}
```