semvec/pypi-packages huggingface dataset:
emcp 0.3.0
Essentials MCP server with filesystem, shell, and web tools
Requires Python: >=3.10

# `emcp`

Essentials MCP server with tools for filesystem operations, shell execution, and web search.


## Installation

To integrate `emcp`, add it to your MCP configuration file. Minimal setup with `uvx`:

```jsonc
{
  "command": "uvx",
  "args": [
    "emcp"
  ],
  "env": {}
}
```

You can also run it standalone with `uvx` or install the package from PyPI with `uv`:

```bash
uvx emcp
```

```bash
uv tool install emcp
```

### Requirements

- [`rg`](https://github.com/BurntSushi/ripgrep) (ripgrep) in your `PATH` for file search.


## Configuration

You can configure `emcp` through environment variables:

- `EMCP_WORKING_DIRECTORY`: the directory EMCP will restrict file operations to. Defaults to CwD.


## Usage

With `emcp`, the agent has access to a variety of file-system, shell and web tools.

### File System

All filesystem operations are restricted to the configured working directory.

- **fs_pwd**: Get the current working directory
- **fs_stat**: Get file/directory metadata (size, times, type, permissions)
- **fs_list**: List directory contents with size, type, and name
- **fs_read**: Read file contents with optional line ranges
- **fs_write**: Write content to a file using specified mode (w, a, etc.)
- **fs_search**: Search files by regex pattern using ripgrep
- **fs_replace**: Replace occurrences of a string in a file (precise edits)
- **fs_mkdir**: Create directories recursively
- **fs_rm**: Remove files or directories (with user confirmation for directories)

### Shell

- **shell_run**: Execute shell commands with an interactive permission system

On first use of a command, the user is prompted to allow/deny/always allow/never allow it.

### Web

- **web_search**: Search the web using DuckDuckGo


## Sandboxing

While `emcp` enforces _some_ restrictions, it's always safer to run MCP servers in sandboxed environments. Consider using one of:

- Containers, such as docker with a mounted external directory.
- (MacOS-only) `sandbox-exec`, with a profile that restricts file-system access.


## Development

Get the code:

```bash
git clone git@github.com:slezica/emcp.git
```

Run from source:

```bash
cd emcp
uv run emcp
```

Run tests:

```bash
cd emcp
uv run pytest
```

## License

None. Code is knowledge. Use it for good.
dnaio 1.2.4
Read and write FASTA and FASTQ files efficiently
Requires Python: >=3.10

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.10548864.svg
  :target: https://doi.org/10.5281/zenodo.10548864

.. image:: https://github.com/marcelm/dnaio/workflows/CI/badge.svg
    :alt: GitHub Actions badge

.. image:: https://img.shields.io/pypi/v/dnaio.svg?branch=main
    :target: https://pypi.python.org/pypi/dnaio
    :alt: PyPI badge

.. image:: https://codecov.io/gh/marcelm/dnaio/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/marcelm/dnaio
    :alt: Codecov badge

===========================================
dnaio processes FASTQ, FASTA and uBAM files
===========================================

``dnaio`` is a Python 3 library for very efficient parsing and writing of FASTQ and also FASTA files.
Since ``dnaio`` version 1.1.0, support for efficiently parsing uBAM files has been implemented.
This allows reading ONT files from the `dorado <https://github.com/nanoporetech/dorado>`_
basecaller directly.

The code was previously part of the
`Cutadapt <https://cutadapt.readthedocs.io/>`_ tool and has been improved significantly since it has been split out.

Example usage
=============

The main interface is the `dnaio.open <https://dnaio.readthedocs.io/en/latest/api.html>`_ function::

    import dnaio

    with dnaio.open("reads.fastq.gz") as f:
        bp = 0
        for record in f:
            bp += len(record)
    print(f"The input file contains {bp/1E6:.1f} Mbp")

For more, see the `tutorial <https://dnaio.readthedocs.io/en/latest/tutorial.html>`_ and
`API documentation <https://dnaio.readthedocs.io/en/latest/api.html>`_.

Installation
============

Using pip::

    pip install dnaio zstandard

``zstandard`` can be omitted if support for Zstandard (``.zst``) files is not required.

Features and supported file types
=================================

- FASTQ input and output
- FASTA input and output
- BAM input
- Compressed input and output (``.gz``, ``.bz2``, ``.xz`` and ``.zst`` are detected automatically)
- Paired-end data in two files
- Interleaved paired-end data in a single file
- Files with DOS/Windows linebreaks can be read
- FASTQ files with a second header line (after the ``+``) are supported

Limitations
===========

- Multi-line FASTQ files are not supported
- FASTQ and uBAM parsing is the focus of this library. The FASTA parser is not as optimized

Links
=====

* `Documentation <https://dnaio.readthedocs.io/>`_
* `Source code <https://github.com/marcelm/dnaio/>`_
* `Report an issue <https://github.com/marcelm/dnaio/issues>`_
* `Project page on PyPI <https://pypi.python.org/pypi/dnaio/>`_
pylon-pathfind 0.1.0
Weather-aware pathfinding for a mobile solar-car strategy system
Requires Python: >=3.9

# pylon_pathfind

A lightweight, **weather-aware** pathfinding library designed for the IoT‑Powered Mobile Weather Observation Station project.
It provides a clean API to compute shortest paths under dynamic penalties (e.g., rain, fog), and is ready to integrate on a Raspberry Pi.

## Install (local)

```bash
pip install .   # from the project root (the folder with pyproject.toml)
# or
pip install /path/to/pylon_pathfind-0.1.0-py3-none-any.whl
```

## Usage

```python
from pylon_pathfind import PathFinder, WeatherPenalties

pf = PathFinder()

# (optional) replace default penalties
pf.set_weather_penalties(WeatherPenalties(clear=1.0, rain=1.2, heavy_rain=1.8, fog=1.4))

# Load edges (name, name, distance_km)
edges = [
    ("Winterveld", "Reefentse", 24.0),
    ("Reefentse", "Temba", 12.0),
    ("Temba", "Klipdrift", 16.0),
    ("Temba", "Marokoleng", 7.3),
]
pf.load_edges(edges)

# Mark weather on a specific road (u->v)
pf.set_edge_condition(("Temba", "Klipdrift"), "rain")

# Compute best route (returns node_names_path, total_cost)
path_names, total = pf.find_path("Winterveld", "Marokoleng")
print(path_names, total)
```

## Key Concepts
- **Graph by names**: You can work entirely with human‑readable names (no indices necessary).
- **Weather conditions**: Attach a condition per directed edge; weights are multiplied by a penalty.
- **Pluggable algorithm**: Uses Dijkstra by default (suitable for non-negative weights).

## Raspberry Pi integration tips
- The package depends only on `networkx`. It runs fine on Raspberry Pi OS (Python ≥ 3.9).
- Keep the graph small and preloaded in JSON to avoid runtime parsing overhead.
- For live weather, map your sensor stream (BME280, Anemometer, GPS) to `set_edge_condition()` calls before computing routes.
toolkit-brazil 0.0.2
A Python module with a collection of useful tools for Brazilians (and anyone else who wants to use it)
Requires Python: >=3.10
Keywords: library, utility, utilities

![PyPI - License](https://img.shields.io/pypi/l/toolkit-brazil)
![PyPI - Version](https://img.shields.io/pypi/v/toolkit-brazil)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/toolkit-brazil)
![](https://img.shields.io/badge/Latest%20Release-Oct%2012,%202025-blue)
[![Github](https://img.shields.io/badge/github-toolkit--brazil-blue)](https://github.com/coloric/toolkit-brazil)
<br>
![Pepy Total Downloads](https://img.shields.io/pepy/dt/toolkit-brazil)
![PyPI - Downloads](https://img.shields.io/pypi/dd/toolkit-brazil)
![PyPI - Downloads](https://img.shields.io/pypi/dw/toolkit-brazil)
![PyPI - Downloads](https://img.shields.io/pypi/dm/toolkit-brazil)


# Introduction

A Python module with a collection of useful tools for Brazilians (and anyone else who wants to use it). <br>
Take a look at [CHANGELOG.md](https://github.com/coloric/toolkit-brazil/CHANGELOG.md) for the changes.


# Brief History
I started studying Python recently and wanted to do something that would be useful. Enjoy `toolkit-brazil`.


# Overview

Here's a quick overview of what the library has at the moment:

- Random generation of CPF and CNPJ numbers
- CPF and CNPJ validation
- Check which state a DDD belongs to
- Returns the capital of a state


## Authors

Ricardo Colombani - [@coloric](https://www.github.com/coloric)


## How to install

$ pip install toolkit-brazil


## License

[MIT](https://choosealicense.com/licenses/mit/)