Skip to main content
Glama

EMMA MCP — специализированный агент по муниципальным финансам для Blaylock Van

Консалтинговый проект NYU Stern · Весна 2026 · Марко Фигероа, Джастин Ганджиан, Эндрю Кэй, Исаак Мизрахи, Рошан Раджа · Профессор Марчиано


Что это такое

Пользовательский MCP-сервер (Model Context Protocol), который позволяет Claude считывать данные о рынке новых выпусков муниципальных облигаций напрямую с сайта EMMA (MSRB). Это пример уровня 4 (Tier-4) в нашей иерархии проектов — коннектор, принадлежащий фирме, к источнику данных, который не покрывается ни одним сторонним поставщиком.

EMMA — сайт Electronic Municipal Market Access, управляемый Советом по нормотворчеству в сфере муниципальных ценных бумаг (MSRB), является официальным публичным реестром всех муниципальных облигаций, проданных в США. Календари новых выпусков, официальные отчеты (Official Statements), детали на уровне CUSIP, цены недавних сделок — все это есть на EMMA. У сайта нет публичного API.

Этот MCP предоставляет 18 инструментов и 2 ресурса (файл правил CLAUDE.md и глоссарий EMMA_ABBREVIATIONS.md), которые Claude автоматически загружает при подключении. После установки банкир может задавать Claude вопросы на естественном языке, например: «выбери все непогашенные облигации Rady Children's Hospital и скачай самый последний OS», и Claude выполнит всю цепочку — поиск → поиск эмитента → детали выпуска → загрузка PDF → извлечение текста — примерно за 20 секунд.

Полную презентацию и информацию о том, почему это важно для Blaylock, см. в USAGE.mdWhy this exists.


Related MCP server: nyc-property-intel

Предварительные требования

Вам понадобятся четыре вещи на вашем ноутбуке. Если чего-то не хватает, инструкции по установке ниже помогут вам.

Требование

Что это

Проверка установки

Claude Desktop

Нативный клиент Anthropic для macOS/Windows (хост MCP)

claude.ai/download

Python 3.10+

Среда выполнения для сервера

Mac: python3 --version · Win: python --version

uv

Менеджер пакетов Python (автоматически управляет venv)

uv --version

Playwright Chromium

Headless-браузер, через который сервер управляет EMMA

Устанавливается одной командой ниже


Установка — Mac

# 1. Unzip this folder somewhere sensible
cd ~/Downloads
unzip emma-mcp.zip -d ~/emma-mcp
cd ~/emma-mcp

# 2. If you don't have uv:
brew install uv

# 3. Create the venv + install dependencies (one command)
uv sync

# 4. Install the headless browser Playwright drives
uv run playwright install chromium

# 5. Smoke-test the server (optional — confirms it boots)
uv run python server.py
# You should see the server start and wait on stdin.
# Press Ctrl+C to stop.

Подключение к Claude Desktop (Mac)

  1. Откройте Claude Desktop → SettingsDeveloperEdit Config. Это откроет claude_desktop_config.json.

  2. Добавьте запись emma внутри объекта mcpServers. Используйте абсолютный путь к .venv/bin/python, который только что создал uv sync, и абсолютный путь к server.py:

{
  "mcpServers": {
    "emma": {
      "command": "/Users/YOURNAME/emma-mcp/.venv/bin/python",
      "args": ["/Users/YOURNAME/emma-mcp/server.py"]
    }
  }
}
  1. Сохраните файл, полностью закройте Claude Desktop (Cmd+Q, а не просто закройте окно) и откройте его снова.

  2. В новом чате иконка молотка в поле ввода должна отображать инструменты EMMA. Это признак успешной установки.


Установка — Windows

# 1. Unzip this folder, e.g. to C:\emma-mcp
cd C:\emma-mcp

# 2. If you don't have Python: install from python.org (3.10 or later).
#    Check "Add Python to PATH" during install.

# 3. Install uv
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# 4. Create the venv + install deps
uv sync

# 5. Install Playwright's Chromium
uv run playwright install chromium

# 6. Smoke-test
uv run python server.py
# Ctrl+C to stop.

Подключение к Claude Desktop (Windows)

  1. Откройте %APPDATA%\Claude\claude_desktop_config.json в текстовом редакторе. (Вставьте этот путь в адресную строку проводника — Windows преобразует %APPDATA% в C:\Users\YOU\AppData\Roaming.)

  2. Используйте прямые слэши или двойные обратные слэши в путях JSON — одиночные обратные слэши Windows нарушают структуру JSON:

{
  "mcpServers": {
    "emma": {
      "command": "C:/emma-mcp/.venv/Scripts/python.exe",
      "args": ["C:/emma-mcp/server.py"]
    }
  }
}
  1. Сохраните файл, полностью закройте Claude Desktop (правой кнопкой мыши по иконке в трее → Quit), откройте снова.

  2. Проверьте наличие инструментов EMMA по иконке молотка в поле ввода.


Первый запрос — 60-секундная проверка

Откройте новый чат в Claude Desktop и вставьте:

Use the EMMA MCP to pull the upcoming new-issue calendar for the next week. Filter to NY state only. Return a clean table with issuer, par, dated, and sector.

Вы должны увидеть, как Claude вызывает get_new_issue_calendar с параметром state="NY", получает около 10-25 строк за несколько секунд и форматирует их в виде таблицы с URL-адресами EMMA. Если это работает, все остальные инструменты будут работать так же.

Для более впечатляющей демонстрации попробуйте:

Find Rady Children's Hospital on EMMA, pull their outstanding bonds, get the most recent issue's details, download the Official Statement, and summarize the rating language and use of proceeds from the first 10 pages.

Это выполнит всю цепочку из пяти инструментов от начала до конца примерно за 20 секунд.

Больше демонстрационных запросов в USAGE.md.


Устранение неполадок

Claude Desktop не показывает инструменты EMMA после перезапуска.

  • Убедитесь, что JSON валиден (python3 -m json.tool < claude_desktop_config.json — отсутствие вывода означает успех).

  • Убедитесь, что оба пути в конфигурации являются абсолютными и существуют. Относительные пути и ~ не работают.

  • Полностью закройте Claude Desktop (Cmd+Q / Quit в трее) — закрытие окна оставляет приложение запущенным.

  • Проверьте логи MCP в Claude Desktop по адресу ~/Library/Logs/Claude/mcp*.log (Mac) или %APPDATA%\Claude\logs\mcp*.log (Windows) на наличие конкретной ошибки.

playwright install chromium зависает или выдает ошибку.

  • При первой установке скачивается около 150 МБ, что занимает 1-2 минуты при домашнем интернет-соединении. Будьте терпеливы.

  • Если вы находитесь за корпоративным прокси-сервером, установите HTTPS_PROXY и HTTP_PROXY перед запуском.

Claude вызывает инструмент, и он возвращает "EMMA disclaimer loop" или время ожидания истекает.

  • EMMA устанавливает cookie с отказом от ответственности при первом посещении. Сервер предварительно задает его (Disclaimer6=msrborg), но очень редко EMMA меняет имя cookie. Перезапустите Claude Desktop, чтобы сбросить контекст браузера. Если проблема сохраняется, возможно, EMMA не работает — проверьте https://emma.msrb.org в обычном браузере.

Возвращаемая таблица показывает cusip_hash: ABC123… вместо 9-значного CUSIP.

  • Это сделано намеренно, а не является ошибкой. EMMA отображает CUSIP как изображения (правило лицензирования CGS), поэтому сервер не может считать их из HTML. PDF-файл официального отчета является авторитетным источником CUSIP. Используйте download_official_statement, а затем extract_pdf_text — на обложке и внутренней стороне обложки указаны реальные CUSIP.

Поиск "Rady Children's" находит детские больницы во Франклине (Огайо) и Питтсбурге (Пенсильвания), но не Rady.

  • Это известная особенность EMMA, а не ошибка сервера. Облигации Rady зарегистрированы через калифорнийский кондуит (CHFFA / CPFA), где "RADY CHILDRENS" указано только в части obligor-in-parens, которую QuickSearch на EMMA индексирует слабо. Попробуйте emma_quick_search {query: "rady"} или выполните поиск по кондуиту напрямую: search_issuers_by_state {state: "CA", contains: "health care facilities"}. Полное руководство по поиску эмитентов см. в USAGE.mdThe conduit cheat sheet.

Сервер запускается, но Claude говорит "no tools available".

  • Вероятно, вы отредактировали server.py и допустили синтаксическую ошибку Python. Запустите uv run python server.py в терминале — любая ошибка будет выведена в stderr. Исправьте и перезапустите Claude Desktop.


Что находится в этой папке

Файл / папка

Что это

server.py

Сам MCP-сервер — ~1500 строк, Python, Playwright. 18 инструментов, 2 ресурса.

CLAUDE.md

Правила соответствия Blaylock. Загружается в каждую сессию EMMA как ресурс MCP emma://rules/CLAUDE.md.

EMMA_ABBREVIATIONS.md

Телеграфные сокращения имен эмитентов EMMA (HOSP, AUTH, SR, CMNTY и т.д.) + шпаргалка по кондуитам. Загружается как ресурс emma://rules/EMMA_ABBREVIATIONS.md.

README.md

Этот файл.

USAGE.md

Обширный справочник: 18 инструментов, каноническая цепочка рабочих процессов, примеры запросов банкиров, предостережения.

pyproject.toml, uv.lock

Манифест зависимостей Python.

_demo_pulse.py

Драйвер для разового запуска, использовался при подготовке слайдов — вызывает MCP напрямую для создания скриншотов вывода. Не нужен для работы сервера.

_fetch_os_pdfs.py

Вспомогательный скрипт, который пакетно скачивал PDF-файлы OS для демо уровня 2 (Cowork). Не нужен для работы сервера.

os_pdfs/

Примеры официальных отчетов, загруженных через MCP во время тестирования. Можно оставить или удалить — папка автоматически воссоздается при первом вызове download_official_statement.


Версия в одной строке

Мы создали EMMA MCP, который не поставляет ни один вендор, подключили его к Claude через тот же протокол, что и любой коннектор из маркетплейса, и управляли им с помощью файла правил в формате Markdown, который банкир может прочитать и отредактировать. Вот как выглядит уровень 4, когда фирма действительно владеет собственным инструментом.

Install Server
F
license - not found
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    An MCP server that provides 33 tools for full DEVONthink integration, enabling users to search, manage records, and access smart groups through Claude Code. It supports document CRUD operations, metadata management, and utilizes DEVONthink's built-in AI for document summarization and classification.
    33
    36
    3
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP server for NYC real estate due diligence. Lets Claude query 22+ NYC public-record databases — DOB/HPD/ECB violations, ACRIS deeds, DOF sales, 311 complaints, FDNY incidents, NYPD complaints, marshal evictions, PLUTO, rent stabilization — in plain English.
    18
    6
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An enhanced MCP server providing comprehensive financial market data endpoints for quantitative trading analysis, including SEC filings, FINRA short volume, earnings, news, and Google Trends. It features meta-tools that consolidate multiple data sources into single efficient calls, optimizing for AI agents with iteration budgets.
    8
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server giving Claude AI access to 22+ NYC public-record databases for real estate due diligence

  • MCP server for nonprofit financials via ProPublica — IRS Form 990 data for 1.8M+ nonprofits.

  • Augments MCP Server - A comprehensive framework documentation provider for Claude Code

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ark9164-create/blaylock-emma-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server