Skip to main content
Glama
Javohirxon04

UZCBU MCP Server

by Javohirxon04
README.md
# UZCBU MCP Server

O'zbekiston Markaziy Banki (CBU.uz) rasmiy valyuta kurslarini istalgan MCP-mos AI
assistentiga (Claude Desktop, Claude Code va boshqalar) ulaydigan **Model Context
Protocol (MCP) server**.

MCP — bu 2024-2025-yillarda paydo bo'lgan va 2026-yilga kelib AI dunyosida keng
tarqalayotgan ochiq standart bo'lib, u AI modellarini tashqi ma'lumot va
tizimlarga ulash uchun ishlatiladi. Bu loyiha O'zbekiston uchun shunday
serverlardan biri.

## Nima qila oladi

- `get_all_rates` — bugungi barcha valyutalarning rasmiy kursini qaytaradi
- `get_exchange_rate` — bitta valyuta (masalan USD) uchun bugungi kursni qaytaradi
- `get_historical_rate` — ma'lum bir o'tgan sana uchun kursni qaytaradi
- `convert_currency` — ikki valyuta o'rtasida rasmiy kurs bo'yicha konvertatsiya
  qiladi (masalan 100 USD necha EUR bo'lishini hisoblaydi)

Ma'lumot manbai: [cbu.uz](https://cbu.uz) rasmiy ochiq JSON API'si. Hech qanday
API kalit yoki ro'yxatdan o'tish talab qilinmaydi.

## O'rnatish

```bash
git clone https://github.com/<sizning-username>/uzcbu-mcp-server.git
cd uzcbu-mcp-server
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt
```

## Qo'lda ishga tushirish (test uchun)

```bash
python -m uzcbu_mcp.server
```

Server standart MCP `stdio` transporti orqali ishga tushadi va MCP mijozidan
so'rov kutadi.

## Claude Desktop'ga ulash

Claude Desktop konfiguratsiya faylini oching (`claude_desktop_config.json`) va
quyidagini qo'shing:

```json
{
  "mcpServers": {
    "uzcbu-currency": {
      "command": "python",
      "args": ["-m", "uzcbu_mcp.server"],
      "cwd": "/to'liq/yo'l/uzcbu-mcp-server"
    }
  }
}
```

Claude Desktop'ni qayta ishga tushiring. Endi Claude'dan "bugungi dollar kursi
qancha?" yoki "100 dollarni yevroga o'girib ber" deb so'rasangiz, u sizning
serveringizdagi tool'larni avtomatik chaqiradi.

## Testlash

Tarmoqqa chiqmasdan (mock ma'lumot bilan) logikani tekshirish uchun:

```bash
python test_offline.py
```

## Loyiha tuzilmasi

```
uzcbu-mcp-server/
├── uzcbu_mcp/
│   ├── __init__.py
│   └── server.py          # MCP server va barcha tool'lar
├── test_offline.py        # Mock ma'lumot bilan offline testlar
├── requirements.txt
├── pyproject.toml
└── README.md
```

## Nega bu loyiha ajralib turadi

Bu shunchaki "API wrapper" emas — bu AI ekotizimining yangi standarti bo'lgan
Model Context Protocol asosida qurilgan, ya'ni har qanday MCP-mos AI mijoz
(faqat bitta chatbot emas) undan foydalana oladi. O'zbekiston kontekstidagi
ma'lumot (rasmiy Markaziy Bank kurslari) bilan ishlaydigan MCP serverlar
hozircha juda kam.

## Kengaytirish g'oyalari

- Boshqa CBU statistik ma'lumotlarini (inflyatsiya, foiz stavkalari) qo'shish
- Natijalarni keshlash (bir necha daqiqa) orqali tezlashtirish
- Telegram bot yoki N8N workflow bilan integratsiya qilish
- HTTP/SSE transportini qo'shib, uzoqdan (remote) ishlaydigan server qilish

## Litsenziya

MIT