Monobank
MCP server for Monobank API — currency rates, client info, and account statements
Open source Open in the app JSON README (API)
About
MCP server for Monobank API — currency rates, client info, and account statements
Details
- Kind
- MCP servers
- Topic
- No topic detected
- Publisher
- akutishevsky
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 1.3.0
- Stars
- 8
- Forks
- 1
- Last push
- 2026-08-02T08:16:20Z
- Repository state
- ativo
- Language
- TypeScript
- License
- MIT
- Added
- 2026-08-29 03:02:24
- Updated
- 2026-08-29 03:02:24
- Origin id
io.github.akutishevsky/monobank-mcp-server
README
# Monobank MCP Server
MCP (Model Context Protocol) server for integrating with Monobank API.
## Quick Install
Download the latest `.mcpb` bundle from the [Releases](https://github.com/akutishevsky/monobank-mcp-server/releases) page and open it — Claude Desktop or Claude Code will handle the rest. You'll be prompted to enter your Monobank API token during installation.
## Prerequisites
- Node.js 18.0.0 or higher
- A Monobank API token. You can obtain it at: https://api.monobank.ua/
**Note:** Your API token is only used locally and is never tracked or transmitted anywhere except to Monobank's API.
## Available Tools
The server provides three tools:
1. **get_currency_rates** - Get currency exchange rates. Public endpoint; works without an API token.
2. **get_client_info** - Get client information, accounts and jars. Requires a token.
3. **get_statement** - Get the statement for an account or jar over a date range. Requires a token. Maximum range is 31 days + 1 hour.
### Behaviour worth knowing
- **Amounts are returned in currency units, not cents.** A balance of 100,000.00 UAH is reported as `100000`, not `10000000`. This applies to every monetary field in both `get_client_info` and `get_statement`, including `commissionRate`, which Monobank returns as an absolute amount despite its name.
- **Responses are cached in memory** so that Monobank's rate limits are not exceeded: 5 minutes for currency rates, 60 seconds for client info and for each distinct statement query. A repeated call inside that window returns the cached result instead of failing with `HTTP 429`.
- **Statement dates** are ISO 8601 `YYYY-MM-DD`, interpreted as UTC. The `to` date is **inclusive** — a statement from `2024-10-01` to `2024-10-31` covers all of October 31. Omit `to` to mean "up to now".
- **The statement `account` parameter defaults to `0`**, the client's default account. Account and jar identifiers returned by `get_client_info` are also accepted.
- **`MONOBANK_API_TOKEN` is only needed for `get_client_info` and `get_statement`.** The server starts without it and `get_currency_rates` keeps working; the two authenticated tools return an error explaining that the variable is unset.
## MCP Configuration
To use this server with an MCP client, add it to your configuration:
```json
{
"mcpServers": {
"monobank": {
"command": "npx",
"args": ["monobank-mcp-server"],
"env": {
"MONOBANK_API_TOKEN": "your_token_here"
}
}
}
}
```
## Example Prompts
### English
- "Show me the current USD to UAH exchange rate"
- "Get my account balance and recent transactions"
- "Show me all transactions from the last week"
- "What did I spend money on yesterday?"
- "Show my statement for October 2024"
- "Get all my credit card transactions from the last 3 days"
### Українською
- "Покажи поточний курс долара"
- "Скільки грошей на моїх рахунках?"
- "Покажи виписку за вчора"
- "На що я витратив гроші цього тижня?"
- "Покажи всі транзакції за жовтень"
- "Скільки я витратив на їжу за останній місяць?"
## MCPB (One-Click Installation)
This server is available as an MCPB bundle for one-click installation in Claude Desktop and Claude Code.
To build the `.mcpb` bundle locally:
```bash
npm run pack:mcpb
```
This produces `monobank-mcp-server.mcpb` which can be installed directly in any MCPB-compatible client. During installation, you'll be prompted to enter your Monobank API token securely.
## License
MIT