EMMA MCP
EMMA MCP — Blaylock Van向けカスタム地方債ファイナンスエージェント
NYU Sternコンサルティング・キャップストーン · 2026年春 · Marco Figueroa, Justin Ganjian, Andrew Kay, Isaac Mizrahi, Roshan Raja · Marciano教授
本プロジェクトについて
ClaudeがMSRB(地方債規則制定委員会)のEMMAウェブサイトから直接、地方債の新規発行市場データを読み取れるようにするカスタムMCP(Model Context Protocol)サーバーです。これは、当キャップストーンのティア階層におけるティア4の例であり、どのベンダーもカバーしていないデータソースへの企業独自のコネクタとなります。
EMMA(Electronic Municipal Market Access)は、MSRBが運営するサイトで、米国で販売されるすべての地方債に関する公式の公開記録簿です。新規発行カレンダー、公式声明(OS)、CUSIPレベルの詳細、直近の取引価格など、すべてがEMMAに掲載されていますが、公開APIは存在しません。
このMCPは、Claudeが接続時に自動読み込みする18種類のツールと2種類のリソース(CLAUDE.mdルールファイルおよびEMMA_ABBREVIATIONS.md用語集)を公開します。インストール後、銀行員はClaudeに対して「Rady Children's Hospitalの未償還債をすべて取得し、最新のOSをダウンロードして」といった自然言語で質問でき、Claudeは検索→発行体検索→発行詳細→PDFダウンロード→テキスト抽出という一連のプロセスを約20秒で実行します。
Blaylockにとっての意義や詳細なピッチについては、USAGE.mdの「Why this exists」を参照してください。
Related MCP server: nyc-property-intel
前提条件
ノートパソコンに以下の4つが必要です。不足しているものがある場合は、以下のインストール手順で対応可能です。
要件 | 内容 | インストール確認方法 |
Claude Desktop | AnthropicのネイティブmacOS/Windowsクライアント(MCPホスト) | |
Python 3.10+ | サーバーの実行環境 | Mac: |
uv | Pythonパッケージマネージャー(venvを自動管理) |
|
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を完全に終了(トレイアイコンを右クリック → 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行程度のデータを取得し、EMMAのURLを含むテーブル形式で表示するはずです。これが動作すれば、他のすべてのツールも同様に動作します。
より高度なデモとして、以下を試してください:
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.
これは5つのツールチェーンを約20秒で実行します。
その他のデモプロンプトはUSAGE.mdにあります。
トラブルシューティング
再起動後にClaude DesktopでEMMAツールが表示されない。
JSONが有効か確認してください(
python3 -m json.tool < claude_desktop_config.json— 出力なしなら正常)。設定内の両方のパスが絶対パスであり、存在することを確認してください。相対パスや
~は機能しません。Claude Desktopを完全に終了してください(
Cmd+Q/ トレイのQuit)。ウィンドウを閉じるだけでは実行されたままです。Claude DesktopのMCPログ(Mac:
~/Library/Logs/Claude/mcp*.log、Windows:%APPDATA%\Claude\logs\mcp*.log)で特定のエラーを確認してください。
playwright install chromiumが停止または失敗する。
初回インストールは約150MBをダウンロードするため、家庭用回線では1〜2分かかります。お待ちください。
企業プロキシ環境下では、実行前に
HTTPS_PROXYおよびHTTP_PROXYを設定してください。
ツール呼び出しで「EMMA disclaimer loop」と返される、またはタイムアウトする。
EMMAは初回訪問時にCUSIP免責事項クッキーを設定します。サーバーはこれを事前シード(
Disclaimer6=msrborg)していますが、稀にEMMAがクッキー名を変更することがあります。Claude Desktopを再起動してブラウザコンテキストをリセットしてください。それでも解決しない場合はEMMAがダウンしている可能性があるため、通常のブラウザでhttps://emma.msrb.orgを確認してください。
返されたテーブルで9桁のCUSIPの代わりにcusip_hash: ABC123…と表示される。
これは意図的な仕様であり、バグではありません。EMMAはCUSIPを画像タグとしてレンダリングするため(CGSライセンス規則)、サーバーはHTMLから読み取ることができません。公式声明(OS)の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の「The conduit cheat sheet」を参照してください。
サーバーは起動するがClaudeが「no tools available」と言う。
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経由でダウンロードされた公式声明のサンプル。保持または削除可能。 |
1行で言うと
私たちは、どのベンダーも提供していない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