EMMA MCP
EMMA MCP — 为 Blaylock Van 定制的市政金融代理
纽约大学斯特恩商学院咨询顶点项目 · 2026 年春季 · Marco Figueroa, Justin Ganjian, Andrew Kay, Isaac Mizrahi, Roshan Raja · Marciano 教授
这是什么
这是一个 自定义 MCP (Model Context Protocol) 服务器,让 Claude 可以直接从 MSRB 的 EMMA 网站读取市政债券新发行市场数据。这是我们顶点项目分级阶梯中的第 4 层示例——一个由公司拥有的、针对任何供应商都未覆盖的数据源的连接器。
EMMA(由市政证券规则制定委员会运营的电子市政市场准入网站)是美国每笔市政债券销售的官方公共记录簿。新发行日历、官方声明 (Official Statements)、CUSIP 级详细信息、近期交易价格:所有这些都在 EMMA 上。它没有公共 API。
此 MCP 公开了 18 个工具 和 2 个资源(一个 CLAUDE.md 规则文件和一个 EMMA_ABBREVIATIONS.md 术语表),Claude 在连接时会自动加载它们。安装后,银行家可以用自然语言向 Claude 提问,例如“拉取所有未偿还的 Rady Children's Hospital 债券并下载最新的 OS”,Claude 会在约 20 秒内执行完整的链条——搜索 → 发行人查询 → 发行详情 → PDF 下载 → 文本提取。
有关完整介绍以及它对 Blaylock 的重要性,请参阅 USAGE.md → 为什么存在此工具。
Related MCP server: nyc-property-intel
先决条件
你的笔记本电脑需要具备四样东西。如果缺少任何一项,下面的安装说明会涵盖它们。
要求 | 说明 | 安装检查 |
Claude Desktop | Anthropic 的原生 macOS/Windows 客户端(MCP 主机) | |
Python 3.10+ | 服务器运行环境 | Mac: |
uv | Python 包管理器(自动处理虚拟环境) |
|
Playwright Chromium | 服务器用于驱动 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。在
mcpServers对象内添加一个emma条目。使用uv sync刚刚创建的.venv/bin/python的 绝对路径 以及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(右键点击托盘图标 → 退出),重新打开。
检查编辑器中的锤子图标,查看是否有 EMMA 工具。
首次提示 — 60 秒验证
打开一个新的 Claude Desktop 聊天并粘贴:
使用 EMMA MCP 拉取下周即将发布的新发行日历。仅筛选纽约州。返回一个包含发行人、面值、日期和行业的整洁表格。
你应该看到 Claude 调用 get_new_issue_calendar 并传入 state="NY",在几秒钟内返回约 10-25 行数据,并将其格式化为带有 EMMA URL 的表格。如果这有效,其他所有工具的工作方式也是一样的。
想要更令人印象深刻的演示,请尝试:
在 EMMA 上找到 Rady Children's Hospital,拉取他们的未偿还债券,获取最近一次发行的详细信息,下载官方声明,并总结前 10 页的评级语言和收益用途。
这会在约 20 秒内端到端地运行完整的五工具链。
更多演示提示请参阅 USAGE.md。
故障排除
重启后 Claude Desktop 不显示 EMMA 工具。
确认 JSON 有效(
python3 -m json.tool < claude_desktop_config.json— 无输出即为良好)。确认配置中的两个路径都是绝对路径且确实存在。相对路径和
~不起作用。完全退出 Claude Desktop(
Cmd+Q/ 托盘 退出)——关闭窗口会使其保持运行。检查 Claude Desktop 的 MCP 日志,路径为
~/Library/Logs/Claude/mcp*.log(Mac) 或%APPDATA%\Claude\logs\mcp*.log(Windows),查看具体错误。
playwright install chromium 挂起或失败。
首次安装需下载约 150 MB,在家庭网络上需要 1-2 分钟。请耐心等待。
如果在公司代理后方,请在运行前设置
HTTPS_PROXY和HTTP_PROXY。
Claude 调用工具时返回“EMMA 免责声明循环”或超时。
EMMA 在首次访问时会设置 CUSIP 免责声明 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",EMMA 的快速搜索确实索引了它,但索引较弱。尝试
emma_quick_search {query: "rady"}或直接搜索管道:search_issuers_by_state {state: "CA", contains: "health care facilities"}。完整的义务人查询手册请参阅USAGE.md→ 管道速查表。
服务器启动但 Claude 说“没有可用工具”。
你可能编辑了
server.py并且存在 Python 语法错误。在终端中运行uv run python server.py— 任何错误都会打印到 stderr。修复后重启 Claude Desktop。
此文件夹中的内容
文件 / 文件夹 | 说明 |
| MCP 服务器本身 — 约 1,500 行,Python,Playwright。18 个工具,2 个资源。 |
| Blaylock 合规规则。作为 MCP 资源 |
| EMMA 的电报式发行人名称缩写(HOSP, AUTH, SR, CMNTY 等)+ 管道速查表。作为资源 |
| 本文件。 |
| 详尽参考:18 个工具、规范的工作流链、银行家提示示例、注意事项。 |
| Python 依赖清单。 |
| 幻灯片准备期间使用的单次驱动程序 — 直接调用 MCP 以便截图输出。运行服务器不需要。 |
| 辅助脚本,为顶点项目的第 2 层 (Cowork) 演示批量下载 OS PDF。运行服务器不需要。 |
| 测试期间通过 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