semvec/pypi-packages huggingface dataset:
email-reply-parser-jimmy927 0.6.2
Email reply parser
License: MIT
Requires Python: >=3.8

# Email Reply Parser for Python
A port of GitHub's Email Reply Parser library, by the fine folks at [Zapier](https://zapier.com/).

Original port seems abandoned since 2020, this is an attempt to maintain it.

[![Python Tests](https://github.com/jimmy927/email-reply-parser/actions/workflows/pytest.yml/badge.svg)](https://github.com/jimmy927/email-reply-parser/actions/workflows/pytest.yml)
[![PyPI version](https://badge.fury.io/py/email-reply-parser-jimmy927.svg)](https://badge.fury.io/py/email-reply-parser-jimmy927)

## Summary

Email Reply Parser makes it easy to grab *only* the last reply to an on-going email thread.

Say you'd like to parse out a user's response to your transaction email messages:

```
Yes that is fine, I will email you in the morning.

On Fri, Nov 16, 2012 at 1:48 PM, Zapier <contact@zapier.com> wrote:

> Our support team just commented on your open Ticket:
> "Hi Royce, can we chat in the morning about your question?"
```

Email clients handle reply formatting differently, making parsing a pain. [We include tests for many cases](https://github.com/jimmy927/email-reply-parser/tree/master/test/emails). The parsed email:

```
Yes that is fine, I will email you in the morning.
```

## Installation

Using pip, install directly from PyPI:

```
pip install email-reply-parser-jimmy927
```

Or install the latest version from GitHub:

```
pip install git+https://github.com/jimmy927/email-reply-parser.git
```

## Tutorial

### How to parse an email message

Step 1: Import email reply parser package

```python
from email_reply_parser import EmailReplyParser
```

Step 2: Provide email message as type String

```python
EmailReplyParser.read(email_message)
```

### How to only retrieve the reply message

Step 1: Import email reply parser package

```python
from email_reply_parser import EmailReplyParser
```

Step 2: Provide email message as type string using parse_reply class method.

```python
EmailReplyParser.parse_reply(email_message)
```
mcp-duty-pharma 0.1.17
MCP Duty Pharma helps you locate pharmacies legally required to stay open during nights, weekends, and holidays
License: MIT
Requires Python: >=3.10
Keywords: 24/7, duty, emergency, mcp, open, pharma, pharmacy

# MCP Duty Pharma

MCP Duty Pharma helps you locate pharmacies legally required to stay open during nights, weekends, and holidays. Whether it's an emergency or just a late-night need, this tool ensures you always know where to go.

## 📋 System Requirements

- Python 3.10+

## 📦 Dependencies

Install all required dependencies:

```bash
# Using uv
uv sync
```

### Required Packages

- **fastmcp**: Framework for building Model Context Protocol servers
- **geoPy**: Python library for accessing and geocoding/reverse geocoding locations.
- **httpx**: HTTP client for Python, which provides a simple and intuitive API for making HTTP requests.

All dependencies are specified in `pyproject.toml`.

## 📑 Table of Contents

- [System Requirements](#-system-requirements)
- [Dependencies](#-dependencies)
- [MCP Tools](#%EF%B8%8F-mcp-tools)
- [Getting Started](#-getting-started)
- [Installation](#-installation)
- [Safety Features](#-safety-features)
- [Development Documentation](#-development-documentation)

## 🛠️ MCP Tools

This MCP server provides the following tools to Large Language Models (LLMs):

### get_nearby_duty_pharmacies

- Get ten closest pharmacies on duty today, sorted by distance to the given address.

## 🚀 Getting Started

Clone the repository:

```bash
git clone https://github.com/lsaavedr/mcp-duty-pharma.git
cd mcp-duty-pharma
```

## 📦 Installation

You can install this MCP server in either Claude Desktop or elsewhere. To use this server, add the following configuration to the settings file:

- in json format

```json
{
  "MCP Duty Pharma": {
    "command": "uv",
    "args": ["tool", "run", "mcp_duty_pharma"]
  }
}
```

- in yaml format

```yaml
mcpServers:
  - name: MCP Duty Pharma
    command: uv
    args:
      - tool
      - run
      - mcp_duty_pharma
```

🔒 Safety Features

- Rate Limiting: Each geocoding call is rate-limited (e.g., 1-second delay) to avoid excessive requests that violate usage limits.
- Error Handling: Catches geopy exceptions (timeouts, service errors) and returns safe [] results instead of crashing.

📚 Development Documentation

If you’d like to extend or modify this server:

- Check duty-pharma.py for how each tool is implemented and how duty-pharma is integrated.
- Look at geopy’s official docs for advanced usage like bounding boxes, language settings, or advanced data extraction.
- Look at regional government APIs for more data sources.