EMMA MCP
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.md → Why this exists.
Related MCP server: nyc-property-intel
Предварительные требования
Вам понадобятся четыре вещи на вашем ноутбуке. Если чего-то не хватает, инструкции по установке ниже помогут вам.
Требование | Что это | Проверка установки |
Claude Desktop | Нативный клиент Anthropic для macOS/Windows (хост MCP) | |
Python 3.10+ | Среда выполнения для сервера | Mac: |
uv | Менеджер пакетов Python (автоматически управляет venv) |
|
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)
Откройте Claude Desktop → Settings → Developer → Edit Config. Это откроет
claude_desktop_config.json.Добавьте запись
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"]
}
}
}Сохраните файл, полностью закройте Claude Desktop (
Cmd+Q, а не просто закройте окно) и откройте его снова.В новом чате иконка молотка в поле ввода должна отображать инструменты 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)
Откройте
%APPDATA%\Claude\claude_desktop_config.jsonв текстовом редакторе. (Вставьте этот путь в адресную строку проводника — Windows преобразует%APPDATA%вC:\Users\YOU\AppData\Roaming.)Используйте прямые слэши или двойные обратные слэши в путях JSON — одиночные обратные слэши Windows нарушают структуру JSON:
{
"mcpServers": {
"emma": {
"command": "C:/emma-mcp/.venv/Scripts/python.exe",
"args": ["C:/emma-mcp/server.py"]
}
}
}Сохраните файл, полностью закройте Claude Desktop (правой кнопкой мыши по иконке в трее → Quit), откройте снова.
Проверьте наличие инструментов 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.md→ The conduit cheat sheet.
Сервер запускается, но Claude говорит "no tools available".
Вероятно, вы отредактировали
server.pyи допустили синтаксическую ошибку Python. Запуститеuv run python server.pyв терминале — любая ошибка будет выведена в stderr. Исправьте и перезапустите Claude Desktop.
Что находится в этой папке
Файл / папка | Что это |
| Сам MCP-сервер — ~1500 строк, Python, Playwright. 18 инструментов, 2 ресурса. |
| Правила соответствия Blaylock. Загружается в каждую сессию EMMA как ресурс MCP |
| Телеграфные сокращения имен эмитентов EMMA (HOSP, AUTH, SR, CMNTY и т.д.) + шпаргалка по кондуитам. Загружается как ресурс |
| Этот файл. |
| Обширный справочник: 18 инструментов, каноническая цепочка рабочих процессов, примеры запросов банкиров, предостережения. |
| Манифест зависимостей Python. |
| Драйвер для разового запуска, использовался при подготовке слайдов — вызывает MCP напрямую для создания скриншотов вывода. Не нужен для работы сервера. |
| Вспомогательный скрипт, который пакетно скачивал PDF-файлы OS для демо уровня 2 (Cowork). Не нужен для работы сервера. |
| Примеры официальных отчетов, загруженных через MCP во время тестирования. Можно оставить или удалить — папка автоматически воссоздается при первом вызове |
Версия в одной строке
Мы создали EMMA MCP, который не поставляет ни один вендор, подключили его к Claude через тот же протокол, что и любой коннектор из маркетплейса, и управляли им с помощью файла правил в формате Markdown, который банкир может прочитать и отредактировать. Вот как выглядит уровень 4, когда фирма действительно владеет собственным инструментом.
Maintenance
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
- AlicenseAqualityCmaintenanceAn 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.33363MIT
- AlicenseAqualityAmaintenanceMCP 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.186MIT
- AlicenseBqualityAmaintenanceMCP server for the BoondManager API, enabling Claude to search, create, and modify records across 36 domains with 158 tools.1821,05518Apache 2.0
- AlicenseNot gradedqualityDmaintenanceAn 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.8MIT
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
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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