wildberries-finances-mcp-server
<img src="https://badge.mcpx.dev?type=server" title="MCP Server"/>
# WB Finances MCP Server
MCP сервер для работы с API Wildberries Finances.
- Описаны все ручки из OpenAPI спецификации, выставлены как `Tool` (src/tools/api)
- Добавлены некоторые "кастомные" `Tool`ы (src/tools/custom)
## Установка
```bash
npm install
```
## Настройка
1. Создайте файл `.env` в корневой директории проекта(по примеру `.env.example`)
2. Добавьте следующие переменные окружения:
```
WB_FINANCES_OAUTH_TOKEN=your_oauth_token_here
```
## Запуск
### Разработка
```bash
npm run dev
```
### Продакшн
```bash
npm run build
npm start
```
### Дебаг
```bash
npx @modelcontextprotocol/inspector node ./build/index.js
```
## Использование
Сервер предоставляет следующие инструменты:
- `getReportDetailByPeriod` - Получение детализации по еженедельным отчётам реализации
- `getTotalCommissionByPeriod` - Подсчёт отчислений в пользу WB + НДС за период
- `getDocumentCategories` - Получение категорий документов
- `getDocumentList` - Получение списка документов
- `downloadDocument` - Загрузка одного документа
- `downloadDocumentsAll` - Загрузка нескольких документов
- `generateWeeklyReport` - Генерация еженедельного отчёта
#### Конфиг для Goose
Добавьте в конфиг Гуся(`~/.config/goose/config.yaml`):
```yaml
wildberries-finances-mcp:
args:
- /path/to/wildberries-finances-mcp-server/build/index.js
bundled: null
cmd: node
description: null
enabled: true
env_keys: []
envs: {}
name: wildberries-finances-mcp
timeout: 300
type: stdio
```
#### Конфиг для Cline:
```
"wildberries-finances-mcp": {
"autoApprove": [],
"disabled": false,
"timeout": 300,
"command": "node",
"args": [
"/path/to/wildberries-finances-mcp-server/build/index.js"
],
"type": "stdio"
}
```
## Безопасность
- API ключ должен храниться в переменных окружения
- Не включайте файл `.env` в систему контроля версий
- Используйте разные API ключи для разработки и продакшена
TDQS
Scored across 8 tools
Most tools are clearly distinct, especially document tools (getDocumentCategories, getDocumentList, downloadDocument, downloadDocumentsAll). However, report-related tools (getReportDetailByPeriod, getTotalCommissionByPeriod, generateWeeklyReport, calculateReportMetrics) have overlapping purposes that could cause misselection, though descriptions help differentiate them.
All names are camelCase but use inconsistent verb prefixes (get, download, generate, calculate) and vary in structure (e.g., downloadDocumentsAll vs downloadDocument). This mixed convention reduces predictability, though the naming is still readable.
Eight tools is an appropriate size for the Wildberries finances domain. The tool count is well-scoped, covering both report analysis and document management without unnecessary duplication or overwhelming the user.
The tool set covers essential operations: retrieving report details, calculating commissions, generating weekly reports, computing metrics, and managing documents. However, there is no explicit tool for listing available report periods or fetching raw sales data, which creates a minor gap in the workflow.