semvec/pypi-packages huggingface dataset:
iflow-mcp_neoai-agent-rds-mcp 0.1.0
A Model-Controlled Panel for managing Amazon RDS instances
Requires Python: >=3.8

# RDS MCP Server

A Model Context Protocol (MCP) server for monitoring and analyzing Amazon RDS(MySQL, PostgreSQL) instances information, metrics and slowquery logs.

## Installation

Install directly from GitHub using pipx:

```bash
# Install
pipx install git+https://github.com/neoai-agent/rds-mcp.git

# Or run without installation
pipx run git+https://github.com/neoai-agent/rds-mcp.git
```

## Quick Start

### Authentication Options

The server supports multiple AWS authentication methods:

#### Option 1: IAM Roles (Recommended for EC2/ECS)
When running on AWS infrastructure with IAM roles attached, you can omit AWS credentials:

```bash
rds-mcp --openai-api-key "YOUR_OPENAI_API_KEY" --region "YOUR_AWS_REGION"
```

#### Option 2: AWS Access Keys
For local development or when IAM roles are not available:

```bash
rds-mcp --access-key "YOUR_AWS_ACCESS_KEY" --secret-access-key "YOUR_AWS_SECRET_KEY" --region "YOUR_AWS_REGION" --openai-api-key "YOUR_OPENAI_API_KEY"
```

#### Option 3: Environment Variables
You can also set AWS credentials via environment variables:
```bash
rds-mcp --access-key "YOUR_AWS_ACCESS_KEY" --secret-access-key "YOUR_AWS_SECRET_KEY" --region "YOUR_AWS_REGION" --openai_api_key "YOUR_OPENAI_API_KEY"
```

**Note**: When using IAM roles, the server will automatically use the default AWS credential chain, which includes IAM roles, environment variables, and AWS credentials file.

## Available Tools

The server provides the following tools for RDS instance management and monitoring:

1. Get RDS instance details:
```python
await get_db_info(
    database_name="your-db-instance",
    region="your-aws-region"
)
```

2. Get database metrics:
```python
await get_database_metrics(
    database_name="your-db-instance",
    time_range_minutes=30
)
```

3. Get slow queries:
```python
await get_database_queries(
    database_name="your-db-instance",
    time_range_minutes=30
)
```

4. Get instance performance metrics:
```python
await get_top_rds_load(
    database_name="your-db-instance",
    time_range_minutes=30
)
```

## Development

For development setup:
```bash
git clone https://github.com/neoai-agent/rds-mcp.git
cd rds-mcp
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e ".[dev]"
```

## License

MIT License - See [LICENSE](LICENSE) file for details
py-easy-tiehu 1.0.0
一个简化铁虎停车系统API使用的Python工具包，提供设备管理、事件订阅等功能的便捷封装。
Requires Python: >=3.6

# py-easy-tiehu

一个简化铁虎停车系统API使用的Python工具包，提供设备管理、事件订阅等功能的便捷封装。

## 功能特性

- **认证管理**：支持铁虎停车系统的签名认证
- **请求签名**：自动生成符合API规范的请求签名
- **同步与异步**：同时支持同步和异步操作
- **响应处理**：统一的响应处理机制，自动验证响应结果
- **类型提示**：完整的类型注解，提供良好的IDE支持

## 安装

### 使用pip安装

```bash
pip install py-easy-tiehu
```

### 从源码安装

```bash
git clone https://gitee.com/guolei19850528/py_easy_tiehu.git
cd py_easy_tiehu
pip install -e .
```

## 依赖

- httpx
- jsonschema
- jsonpath-ng

## 快速开始

### 基本使用

```python
from py_easy_tiehu.pklot import Pklot

# 初始化Pklot实例
pklot = Pklot(
    base_url="http://ykt.test.cxyun.net.cn:7303",  # 铁虎停车系统地址
    parking_id="YOUR_PARKING_ID",  # 停车场ID
    app_key="YOUR_APP_KEY"  # 应用密钥
)

# 发送API请求
response = pklot.request(
    url="/cxzn/interface/queryPklot",
    json={
        "parkingId": pklot.parking_id,
    }
)

print(f"请求结果: {response.validated}")
if response.validated:
    print(f"返回数据: {response.value}")
else:
    print(f"错误信息: {response.json}")
```

### 异步使用

```python
import asyncio
from py_easy_tiehu.pklot import Pklot

async def main():
    # 初始化Pklot实例
    pklot = Pklot(
        base_url="http://ykt.test.cxyun.net.cn:7303",
        parking_id="YOUR_PARKING_ID",
        app_key="YOUR_APP_KEY"
    )
    
    # 异步发送API请求
    response = await pklot.async_request(
        url="/cxzn/interface/queryPklot",
        json={
            "parkingId": pklot.parking_id,
        }
    )
    
    print(f"请求结果: {response.validated}")
    if response.validated:
        print(f"返回数据: {response.value}")
    else:
        print(f"错误信息: {response.json}")

asyncio.run(main())
```

## API文档

### Pklot类

#### 初始化参数
- `base_url`：铁虎停车系统的基础URL
- `parking_id`：停车场ID
- `app_key`：应用密钥，用于签名生成
- `client_kwargs`：传递给httpx.Client的额外参数

#### 方法
- `signature(data)`：生成请求签名
- `client(**kwargs)`：创建同步客户端实例
- `async_client(**kwargs)`：创建异步客户端实例
- `request(client=None, **kwargs)`：同步请求方法
- `async_request(client=None, **kwargs)`：异步请求方法

### 响应处理

所有API调用都会返回`RequestResponse`对象，包含以下属性：
- `validated`：响应是否有效
- `value`：从响应中提取的值
- `json`：响应的JSON数据
- `response`：原始的httpx.Response对象

## 测试

运行测试用例：

```bash
python -m unittest test_pklot.py
```

## 项目结构

```
py-easy-tiehu/
├── py_easy_tiehu/
│   ├── __init__.py        # 模块初始化
│   └── pklot.py           # 铁虎停车系统API客户端实现
├── test_pklot.py          # 铁虎停车系统测试
├── setup.py               # 安装配置
├── requirements.txt       # 依赖声明
├── LICENSE                # 许可证
└── README.md              # 项目文档
```

## 许可证

MIT License

## 贡献

欢迎提交Issue和Pull Request！

## 联系方式

- 作者：guolei
- 邮箱：174000902@qq.com
- 项目地址：https://gitee.com/guolei19850528/py_easy_tiehu
topsis-naman-102316108 0.0.3
TOPSIS implementation as a command line tool
Requires Python: >=3.11

# Topsis-Naman-102316108
A command-line implementation of the TOPSIS (Technique for Order Preference by Similarity to Ideal Solution) multi-criteria decision-making method.

## Installation
```
pip install Topsis-Naman-102316108
```

## Usage
```
topsis <inputDataFile> <Weights> <Impacts> <OutputFile>
```

Example:
```
topsis data.csv "1,1,1,2" "+,+,-,+" result.csv
```

## Input File Requirements

- Must be in .csv format
- contain at least 3 columns
- Number of weights = number of impacts = number of criteria columns
- First column should contain alternatives (non-numeric allowed)
- From second column onward, all values must be numeric
- Impacts must be either '+' or '-'
- Weights and impacts must be comma separated