Skip to main content
Glama
lukew0824

plaid-mcp

by lukew0824

plaid-mcp

Самохостируемый MCP сервер, который позволяет Claude запрашивать ваши банковские счета, балансы и транзакции через Plaid.

Инструменты

Инструмент

Описание

accounts

Все привязанные банковские счета

balances

Текущие/доступные балансы и кредитные лимиты

transactions

Полная история транзакций за указанный период

total_spending

Общие расходы с разбивкой по категориям

transactions_by_category

Фильтрация транзакций по категории Plaid PFC

merchants

Все продавцы за указанный период, отсортированные по сумме расходов

transactions_by_merchant

Фильтрация транзакций по названию продавца

Как это работает

  • OAuth 2.1 + PKCE с Google в качестве провайдера идентификации

  • Список разрешенных email-адресов в качестве границы безопасности

  • Claude.ai получает 30-дневный токен доступа (bearer token); ваш токен доступа Plaid никогда не покидает ваш сервер

  • Caddy находится перед FastAPI, завершая TLS на порту 443 с автоматически выпускаемыми сертификатами Let's Encrypt и выполняя обратное проксирование на localhost:8080

Требования

  • Linux-сервер с публичным IP (в этом руководстве используется AWS EC2 t3.micro)

  • Доменное имя, указывающее на него (в этом руководстве используется бесплатный поддомен DuckDNS)

  • Аккаунт разработчика Plaid с доступом к production

  • Аккаунт Google Cloud для OAuth-клиента

Настройка

1. Plaid

  1. Создайте аккаунт Plaid на dashboard.plaid.com

  2. Запросите Production access в панели управления (Plaid рассмотрит вашу заявку — это может занять несколько дней)

  3. После одобрения сохраните client_id и Production секрет из раздела Team Settings → Keys

2. Google OAuth

  1. console.cloud.google.com → создайте проект

  2. APIs & Services → OAuth consent screen → настройте «Внешнее» (External) приложение, добавьте себя в качестве тестового пользователя

  3. APIs & Services → Credentials → Create credentials → OAuth client ID

  4. Тип приложения: Веб-приложение

  5. Авторизованные URI перенаправления: https://yourdomain.com/auth/google/callback (используйте ваш реальный домен из шага 4 ниже)

  6. Сохраните Client ID и Client secret

3. Сервер

Это руководство предполагает использование AWS EC2:

  1. Запустите инстанс Ubuntu 24.04 t3.micro

  2. Группа безопасности: входящий TCP 22 (SSH с вашего IP), 80, 443

  3. Выделите Elastic IP и привяжите его к инстансу

  4. Подключитесь по SSH: ssh -i your-key.pem ubuntu@<elastic-ip>

4. Домен

Бесплатный вариант с использованием DuckDNS:

  1. Войдите через Google/GitHub/Reddit

  2. Зарезервируйте поддомен (например, plaid-yourname)

  3. Установите IP на ваш Elastic IP

  4. Ваш домен теперь plaid-yourname.duckdns.org

Вернитесь к шагу 2.5 и установите URI перенаправления на https://plaid-yourname.duckdns.org/auth/google/callback.

5. Установка

На сервере:

git clone https://github.com/lukew0824/plaid-mcp.git
cd plaid-mcp
cp .env.example .env
nano .env   # fill in everything
./install.sh

Скрипт:

  • Устанавливает Python, Caddy и зависимости

  • Настраивает службу systemd (plaid-mcp)

  • Настраивает Caddy как обратный прокси с автоматическим HTTPS через Let's Encrypt

6. Подключение в Claude.ai

  1. Claude.ai → Settings → Connectors → Add custom connector

  2. URL: https://yourdomain.com/mcp

  3. Нажмите Connect

  4. Войдите с помощью аккаунта Google, соответствующего ALLOWED_EMAIL

  5. Только в первый раз: появится всплывающее окно Plaid Link — подключите свой банк

  6. Готово. Попробуйте: "Сколько я потратил на еду в прошлом месяце?"

Конфигурация

Значения .env:

Ключ

Описание

PLAID_ENV

production

PLAID_CLIENT_ID

Из панели управления Plaid

PLAID_PRODUCTION_SECRET

Из панели управления Plaid

GOOGLE_CLIENT_ID

Из Google Cloud Console

GOOGLE_CLIENT_SECRET

Из Google Cloud Console

ALLOWED_EMAIL

Единственный email Google, которому разрешена аутентификация

BASE_URL

Публичный HTTPS URL этого сервера (без слеша в конце)

DATABASE_URL

sqlite:///./plaid_mcp.db (по умолчанию работает для самохостинга)

Лицензия

MIT

Related MCP Connectors