README
🚀 使用 Azure Functions 的 AlphaVantage MCP 服务器
本项目实现了一个 Azure 函数,它充当代理与 AlphaVantage 财务 API 之间的桥梁。借助该函数,AI 代理能够通过 MCP 访问财务数据并开展金融分析工作。
🚀 快速开始
此项目的核心在于利用 Azure 函数搭建与 AlphaVantage 财务 API 的桥梁,让 AI 代理借助 MCP 实现财务数据的访问与金融分析。
✨ 主要特性
该 Azure 函数将以下财务数据端点作为 MCP 工具对外开放:
- 公司概览
- 收入报表
- 资产负债表
- 现金流量表
- 盈利报告
同时,在 agent 目录中存在一个使用 PydanticAI 创建的演示代理,可用于对 MCP 服务器进行测试。更多相关信息可查看 演示代理 文件。
📦 安装指南
先决条件
- Azure 订阅
- Azure 开发 CLI(azd)
- Azure Functions 核心工具
- Python 3.11
- AlphaVantage API 密钥(见 AlphaVantage)
本地开发
- 克隆此仓库。
- 创建虚拟环境并安装依赖项:
uv sync --frozen
- 在
src目录中创建一个local.settings.json文件,添加您的 AlphaVantage API 密钥:
{
"IsEncrypted": false,
"Values": {
"FUNCTIONS_WORKER_RUNTIME": "python",
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"ALPHAVANTAGE_API_KEY": "your-alphavantage-api-key"
}
}
- 在本地运行函数:
cd src
func start
部署
- 登录 Azure:
azd auth login
- 部署应用程序:
azd up
这将配置必要的 Azure 资源并部署功能应用。
⚠️ 重要提示
有关设置环境变量的详细信息,请参阅 添加环境变量 部分。
获取 MCP 端点 URL
部署完成后,获取您的 MCP 扩展系统密钥:
az functionapp keys list \
--resource-group <资源组> \
--name <函数应用名称>
您的 MCP 端点 URL 将为:
https://<funcappname>.azurewebsites.net/runtime/webhooks/mcp/sse?code=<your-mcp-extension-system-key>
添加环境变量
AZURE_STORAGE_ACCOUNT:用于存储的 Azure 存储账户名称。AZURE_STORAGE_KEY:与存储账户关联的密钥。
VS Code 配置
在 src/.vscode/settings.json 中添加以下内容以配置 Python 环境:
{
"python.defaultInterpreterPath": "${fileDirname}/envs/myenv/Scripts/python.exe"
}
💻 使用示例
基础用法
在 agent 目录中有一个使用 FastAPI 创建的演示代理,您可以运行以下命令测试其功能:
uvicorn agent.main:app --reload
访问 http://localhost:8000 查看文档。
Scan to join WeChat group