使用说明
经济情报MCP服务器
生产准备就绪 模型上下文协议(MCP)服务器 部署为a copula应用程序,旨在让AI监管代理实时访问外部宏观经济数据-大多数来源不需要API密钥。
该服务器是作为copula Supervisor Agent模式的伴侣而构建的,它通过Streamable HTTP上的标准化MCP协议,公开来自世界银行、澳大利亚统计局(ABS)和任何公共经济网页的实时经济指标。
建筑
Databricks Supervisor Agent
│
│ MCP over HTTPS (Streamable HTTP / JSON-RPC 2.0)
▼
Unity Catalog HTTP Connection ──────────────────────────────────────┐
(OAuth M2M, auto-refreshing token) │
│ │
▼ │
Economic Intelligence MCP Server (Databricks App) │
├── FastMCP (MCP protocol layer) │
├── FastAPI (HTTP server) │
└── Tools │
├── get_inflation ──▶ World Bank Open Data API │
├── get_macro_indicators ──▶ World Bank Open Data API │
├── analyze_economic_webpage ──▶ Claude (Databricks Model Serving)
├── list_abs_dataflows ──▶ ABS SDMX REST API │
└── get_abs_data ──▶ ABS SDMX REST API │
工具
🌍 get_inflation
使用世界银行开放数据API返回任何国家的最新CPI通货膨胀率。
{ "country_code": "AU" }
→ { "country": "Australia", "year": "2023", "inflation_rate_pct": 5.6, "source": "World Bank" }
📊 get_macro_indicators
一次调用即可获取一系列关键宏观经济指标——CPI通胀、GDP增长、实际利率和失业率。
{ "country_code": "US" }
→ [
{ "indicator_name": "Inflation, consumer prices (annual %)", "value": 4.12, "year": "2023" },
{ "indicator_name": "GDP growth (annual %)", "value": 2.54, "year": "2023" },
...
]
🔍 analyze_economic_webpage
获取任何公共URL并使用 克劳德 (通过copula Model Serving)从页面内容中提取并回答特定的经济问题。
{
"url": "https://www.rba.gov.au/statistics/",
"question": "What is the current cash rate target?"
}
→ "The RBA cash rate target is 4.35% as of November 2023."
适用于:
- 澳大利亚储备银行(RBA)
- 澳大利亚统计局(ABS)
- 美国劳工统计局(BLS)
- 经合组织、国际货币基金组织和任何其他公共经济数据页面
🇦🇺 list_abs_dataflows
返回澳大利亚统计局SDMX数据流的精选目录,其中包含维度描述和现成的关键示例。
→ {
"CPI": { "description": "Consumer Price Index — all groups (quarterly)", ... },
"LF": { "description": "Labour Force — unemployment, participation (monthly)", ... },
"WPI": { "description": "Wage Price Index — hourly rates (quarterly)", ... },
"ANA_AGG": { "description": "National Accounts — GDP aggregates (quarterly)", ... },
...
}
📈 get_abs_data
直接从ABS SDMX REST API获取时间序列数据。返回完全标记的记录——没有密码。
{
"dataflow": "LF",
"key": "M13.3.1599.20.AUS.M",
"start_period": "2025-01"
}
→ [
{ "MEASURE": "Unemployment rate", "REGION": "Australia",
"TSEST": "Seasonally Adjusted", "period": "2026-01", "value": 4.07 },
...
]
支持的数据流:
| ID | 数据集 | 频率 |
|---|---|---|
CPI |
消费者价格指数 | 季度 |
LF |
劳动力调查 | 每月 |
WPI |
工资价格指数 | 季度 |
ANA_AGG |
国民账户(GDP) | 季度 |
RPPI |
住宅物业价格指数 | 季度 |
MERCH_EXP |
商品出口 | 每月 |
MERCH_IMP |
商品进口 | 每月 |
BOP |
国际收支 | 季度 |
项目结构
databricks-mcp-server/
├── server/
│ ├── app.py # FastMCP + FastAPI combined ASGI app, header middleware
│ ├── main.py # Uvicorn entry point
│ ├── tools.py # All MCP tool definitions
│ └── utils.py # Databricks OAuth / on-behalf-of auth utilities
├── static/
│ └── index.html # Status page served at /
├── app.yaml # Databricks App command config
├── pyproject.toml # Project metadata + dependencies (uv / hatchling)
└── requirements.txt # Bootstrap: just "uv"
技术栈
| 组件 | 技术 |
|---|---|
| MCP框架 | FastMCP ≥ 2.12.5 |
| HTTP服务器 | FastAPI+Uvicorn |
| 包管理器 | 紫外线 |
| 部署 | copula应用程序 |
| Auth | OAuth M2M通过Unity目录HTTP连接 |
| LLM | Claude通过copula模型服务(Claude_for_Analysis) |
| 外部数据 | 世界银行开放数据API、ABS SDMX REST API |
部署
先决条件
- 已安装并验证了copula CLI
- 启用了应用程序的copula工作区
- 部署了服务于端点的Claude模型(命名为
Claude_for_Analysis)
部署
# 1. Create the app
databricks apps create --json '{"name": "economic-intelligence-mcp"}'
# 2. Sync source code to workspace
databricks sync . /Workspace/Users/<your-email>/databricks-mcp-server
# 3. Deploy
databricks apps deploy economic-intelligence-mcp \
--source-code-path /Workspace/Users/<your-email>/databricks-mcp-server
在Unity目录中注册
在copula笔记本或SQL编辑器中运行此SQL,使主管代理可以发现MCP服务器:
CREATE CONNECTION economic_intelligence_mcp TYPE HTTP OPTIONS (
host = 'https://<your-app-url>.databricksapps.com',
port = '443',
base_path = '/mcp',
is_mcp_connection = 'true',
token_endpoint = 'https://<your-workspace>.cloud.databricks.com/oidc/v1/token',
client_id = '<app-service-principal-client-id>',
client_secret = '<client-secret-from-account-console>',
oauth_scope = 'all-apis'
);
GRANT USE CONNECTION ON CONNECTION economic_intelligence_mcp TO `account users`;
注: 得到
client_id从应用程序详细信息(service_principal_client_id)并生成client_secret从帐户控制台→ 服务负责人→ 生成密钥。
添加到主管代理
在Rancher Agent Bricks中,添加 economic_intelligence_mcp 作为一个 MCP连接 代理工具配置中的工具。
认证
此服务器使用 OAuth M2M(机器对机器) 用于身份验证:
- Unity目录连接保持不变
client_id+client_secret - Unity Catalog在每次调用之前自动获取一个新的OAuth JWT
- ConnectionApps代理验证JWT并转发请求
- 调用ViewModel的工具(例如。
analyze_economic_webpage)通过转发代表身份验证使用x-forwarded-access-token头球
⚠️ PAT令牌(个人访问令牌) 不 使用copula Apps代理——始终使用OAuth M2M进行UC连接。
本地开发
# Install dependencies
pip install uv
uv sync
# Run locally
uv run economic-intelligence-mcp --port 8000
服务器将在以下时间可用 http://localhost:8000 MCP端点位于 http://localhost:8000/mcp.