semvec/pypi-packages huggingface dataset:
ohpygossh 0.0.15
A project to create a new cross-platform SSH wheel for Python.

# ohpygossh

A project to create a new cross-platform SSH wheel for Python.

<img width="617" alt="image" src="docs/assets/banner.png">


## Goals

1. An easy to install, multi-platform SSH wheel
1. Personal learning about Go
1. To explore [`gopy`](https://github.com/go-python/gopys)
1. To explore Python packaging & compiling.  What can we
do with available open source tooling?
1. To explore performance characteristics

## Code of Conduct

1. Respect and give kudos to all the work that's come
before.
    1. In particular, the Herculian efforts of [`gopy`], [`paramiko`] and [`asyncssh`].
    1. Please also be kind to all other open-source software projects you find.

It is paramount that we all play nicely.  To that end, please do your very best
not to create churn or spur conversations that may upset other developers,
and/or cause debate without offerinig solutions.

## Build wheel

The following steps should produce a wheel,
located at `dist/ohpygossh-0.0.15-py3-none-any.whl`

```bash
./make_and_validate_script.sh
```

## Naming

This project has to think about components in two different contexts.

To distinguish the two, use the following names:

* The Python module is imported as `ohpygossh`.
* The Golang package is used as `gohpygossh`.

NOTE: Currently, the `pyproject.toml` in this project is named for the
Golang package.  This may need to change as the project matures.

As a Python user:

* Install the library, with `pip install ohpygossh`
* Import functions and data structures, with `from ohpygossh.gohpygossh import ...`


## Reference

Based on:
* https://github.com/b-long/cookiecutter-gopy
* https://last9.io/blog/using-golang-package-in-python-using-gopy/

Learn Go:
* https://learnxinyminutes.com/docs/go/
* https://gist.github.com/prologic/5f6afe9c1b98016ca278f4d507e65510

[`gopy`]: https://github.com/go-python/gopy
[`paramiko`]: https://pypi.org/project/paramiko/
[`asyncssh`]: https://pypi.org/project/asyncssh/
chat-mcp 0.1.1
MCP客户端库，用于在对话中调用MCP工具
Requires Python: >=3.11

# Chat-MCP

**一个用于在对话中调用MCP（Model Context Protocol）工具的Python客户端库**

Chat-MCP 提供了一个简洁而强大的接口，让您能够轻松地将MCP服务器集成到AI agent项目中。通过两个简单的api，并配置好.env文件，就可以在开发agent和chat助手时高效的调用mcp服务。作为agentic项目的底层脚手架，分享大家使用。

## 核心特性

- **简洁的API设计**: 二个主要接口覆盖所有使用场景，提高agent应用开发效率
- **优化提示词**: 提高tools调用的成功率，持续优化中
- **异步架构**: 完全基于asyncio的高性能处理
- **智能工具管理**: 自动工具收集、过滤和并行执行
- **多模型支持**: 通过LiteLLM支持多种LLM提供商，支持本地模型配置


## 关键技术栈

- **[MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk)**: Model Context Protocol的官方Python实现
- **[LiteLLM](https://docs.litellm.ai/)**: 统一的LLM API接口库，支持100+模型
- **[Pydantic](https://docs.pydantic.dev/)**: 数据验证和设置管理框架

## 项目结构

```
chat-mcp/
├── docs/                 # 详细的开发文档和规范
├── src/chat_mcp/         # 主要源代码包
│   ├── tests/            # 测试套件
│   ├── __init__.py       # 公共API导出
│   ├── easy_chat.py      # 简化API接口
│   ├── ai_provider.py    # LLM提供商集成
│   ├── mcp_service.py    # MCP服务器管理
│   ├── mcp_chat_handler.py # 聊天处理逻辑
│   ├── ipc_handler.py    # 进程间通信处理
│   └── mcp_types.py      # 数据类型定义
├── temp_arxiv_storage/   # ArXiv演示数据存储
├── pyproject.toml        # uv项目配置
├── uv.lock              # 依赖锁定文件
└── main.py              # 演示入口
```


## 核心API

### MCPChatTool - 主要接口

```python
from chat_mcp import MCPChatTool

# 创建聊天工具实例
chat_tool = MCPChatTool()

# 启动MCP服务器，这里使用arxiv-mcp-server作为演示样例，可以添加多个不同的mcp server，只需要多次调用
server = await chat_tool.start_mcp_server(
    server_id="arxiv",
    name="ArXiv Research",
    command="uv",
    args=["tool", "run", "arxiv-mcp-server"]
)

# 进行对话
result = await chat_tool.chat_with_mcp(
    user_message="搜索关于机器学习的最新论文",
    enabled_server_ids=["arxiv"] # 这里可以不设置enabled_server_ids,默认所有server都会被添加
)
```

## 安装

使用 [uv](https://github.com/astral-sh/uv) (推荐):

```bash
uv add chat-mcp
```

或使用 pip:

```bash
pip install chat-mcp
```

## 快速开始

1. **配置环境变量** (创建 `.env` 文件):

LLM配置：使用litellm规范，可以自行配置，支持大部分模型包括自定义大模型

```env
OPENAI_API_KEY=your_openai_api_key
OPENAI_API_BASE=https://api.openai.com/v1
LLM_MODEL=gpt-3.5-turbo
```
如果是vllm本地模型可以如下配置

```env
MODEL_NAME="openai//{VLLM_MODEL_NAME(PATH)}"
OPENAI_API_KEY="xxxxxxxxxxxxxxxxxxxxxxxxxxx"
OPENAI_API_BASE="http://xxx.xxx.xxx.xxx:xxxx/v1"
```

其他模型都已自行尝试配置，具体参考litellm支持的模型

2. **基础使用**:

```python
import asyncio
from chat_mcp import MCPChatTool

async def main():
    # 创建聊天工具
    chat_tool = MCPChatTool()
    
    # 添加ArXiv服务器
    await chat_tool.start_mcp_server(
        server_id="arxiv",
        name="ArXiv Research", 
        command="uv",
        args=["tool", "run", "arxiv-mcp-server"]
    )
    
    # 开始对话
    result = await chat_tool.chat_with_mcp(
        user_message="帮我搜索最新的深度学习论文",
        system_prompt="你是一个研究助手，专门帮助用户搜索和分析学术论文。"
    )
    
    print(f"AI回答: {result['content']}")
    print(f"工具调用: {len(result['tool_calls'])} 次")

# 运行
asyncio.run(main())
```

## 许可证

MIT License - 详见 LICENSE 文件

---

*Chat-MCP: 让AI对话更智能，让工具调用更简单*
train-delay 1.0.0
TrainDelay is a Python package for tracking train delays at various stations using the Deutsche Bahn API. It collects real-time train data, processes delay information, and stores it in a MySQL database for further analysis

# TrainDelay 

TrainDelay is a Python package for tracking train delays at various stations using the Deutsche Bahn API. It collects real-time train data, processes delay information, and stores it in a MySQL database for further analysis.

## Features

- Fetches train timetable and delay data for specified stations
- Stores train data in a MySQL database
- Logs tracking operations and errors

## Requirements
1. Get a MySQL Server running on your machine, the database and tables will be created my the module
2. Register for the Deutsche Bahn API (free)
- Create a account at: https://developers.deutschebahn.com
- Create a new application using this url: https://developers.deutschebahn.com/db-api-marketplace/apis/application/new and choose a name that you want
- After that save you the client id and the client secret. You need it to interact with the api
- Navigate to all available apis page at: https://developers.deutschebahn.com/db-api-marketplace/apis/product and select the "Timetables" api
- And click the red subscribe button and select your application
- Now you are done and can start using the api

## Setup
1. Install train_delay using: `pip install train_delay`
2. import module 
```python
from train_delay import *
```
3. Create an AuthData object and a DatabaseConfig object
```python
auth_data = AuthData(YOUR_CLIENT_ID, YOUR_CLIENT_SECRET)  
database_config = DatabaseConfig(YOUR_DB_HOSTNAME, YOUR_DB_USER, YOUR_DB_PASSWORD, YOUR_DATABASE_NAME)
```
You can choose the YOUR_DATABASE_NAME freely. The module will create the database and necessary table where all trains will be stored.

4. Now you can create a TrainDelayTracker object
```python
train_delay_tracker = TrainDelayTracker(auth_data, database_config)
```

5. Track your desired train stations with the track_station() Method
```python
train_delay_tracker.track_station("Bonn")
```
6. You'll find your trains at YOUR_DATABASE_NAME.trains
![alt text](docs/db.png)

## Credits  
[deutsche_bahn_api](https://github.com/Tutorialwork/deutsche_bahn_ap)
bed-apy 0.2.5a0
A Bedrock WebSocket system for Minecraft Python modding

# Bed_APY  
### The WebSocket-powered bridge between Python & Minecraft Bedrock  

## 🚀 About This Project  
Bed_APY is an **independent, unofficial** Minecraft Bedrock tool that enables Python scripting by communicating with the game via **WebSockets**. This allows seamless command execution, automation, and custom gameplay mechanics—all **scripted in Python!**  

## 🔧 Features  
✅ **WebSocket-powered connection** → Sends & receives commands to Minecraft!  
✅ **Real-time execution** → Works asynchronously for smooth operation!  
✅ **Fully extensible API** → Create custom scripts & automation!  
✅ **Optimized data handling** → Efficiently manages Minecraft interactions!  

## 📜 Disclaimer  
Bed_APY is **not affiliated with, associated with, or approved by** Microsoft, Mojang Studios, or Minecraft™.  
This is an independent project created for educational and experimental purposes.  
All trademarks and copyrights belong to their respective owners.  

## 📂 How to use  
Run `pip install bed-apy` To install. For more help go to the [Wiki](https://github.com/ilovecoding99390/bed_apy/wiki).

## ✨ Story of This Project  
_Originally a small experiment, Bed_APY evolved into a powerful Minecraft scripting bridge that lets Python interact with Bedrock Edition using WebSockets—unlocking endless automation and creative possibilities._  
## The Story of the Name  
When I first started working on this, I called it **mc_api**—clear, right? Nope! When importing, I accidentally downloaded a **random Brazilian mc_api**, which caused a bit of a headache.  
Despite the confusion, mc_api stuck—until publishing, when I decided to rename it for easier installation.  

I first thought of **bed_api**, but it felt too generic. Then I tried **bed_pi** (Python + API = Pi), but that still seemed off. Finally, I landed on **bed_apy**:  
- **Bed = Bedrock** (easy!)  
- **APY = API + PYthon** (perfect!)  

And just like that, the name was **locked in!** 🚀🔥