Spaces:
Sleeping
Sleeping
File size: 3,949 Bytes
a7f3511 7dde4c5 a7f3511 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 |
# 📁 项目结构
```
EasyReportDateMCP/
│
├── 📄 README.md # 项目主文档
├── 📘 USAGE.md # 使用指南
├── 📋 PROJECT_STRUCTURE.md # 本文件
│
├── 🐳 Dockerfile # HF Space 部署配置
├── 📦 requirements.txt # Python 依赖
├── 🙈 .gitignore # Git 忽略规则
│
├── 🚀 mcp_server_sse.py # MCP Server 主程序(SSE 传输)
├── 📊 edgar_client.py # SEC EDGAR 数据客户端
├── 📈 financial_analyzer.py # 财务数据分析器
│
└── 🧪 test_mcp_sse.py # 测试脚本
```
---
## 核心文件说明
### 📄 README.md
项目主文档,包含:
- 快速开始指南
- 可用工具列表
- 使用示例
- 技术栈说明
### 📘 USAGE.md
详细使用指南,包含:
- 客户端配置步骤
- 7 个工具的详细说明
- 实际使用场景
- 故障排除
### 🚀 mcp_server_sse.py
MCP Server 主程序(583 行):
- FastAPI 应用
- SSE 传输实现
- 7 个 MCP 工具定义
- 格式化输出逻辑
- 健康检查和监控
### 📊 edgar_client.py
SEC EDGAR 客户端(600+ 行):
- 公司搜索
- 公司信息获取
- 财报文件检索
- XBRL 数据解析
- 财务数据提取
### 📈 financial_analyzer.py
财务分析器(340+ 行):
- 多年数据提取
- 数据格式化
- 智能搜索
- 最新数据获取
### 🐳 Dockerfile
Docker 部署配置:
- Python 3.10 基础镜像
- 依赖安装
- 应用文件复制
- Uvicorn 启动命令
### 📦 requirements.txt
Python 依赖:
```
fastapi==0.109.0
uvicorn[standard]==0.27.0
pydantic==2.5.3
sec-edgar-api==1.1.0
requests==2.31.0
```
### 🧪 test_mcp_sse.py
测试脚本(232 行):
- 健康检查测试
- MCP 协议测试
- 工具调用测试
- SSE 连接测试
---
## 部署文件
### HF Space 必需
- ✅ `README.md` (HF Space 主页显示)
- ✅ `Dockerfile` (构建镜像)
- ✅ `requirements.txt` (依赖)
- ✅ `mcp_server_sse.py` (主程序)
- ✅ `edgar_client.py` (核心库)
- ✅ `financial_analyzer.py` (核心库)
### 可选文件
- 📘 `USAGE.md` (用户文档)
- 🧪 `test_mcp_sse.py` (测试)
- 📋 `PROJECT_STRUCTURE.md` (本文件)
---
## 代码统计
| 文件 | 行数 | 说明 |
|------|-----|------|
| `mcp_server_sse.py` | 583 | MCP Server 主程序 |
| `edgar_client.py` | 600+ | SEC 数据客户端 |
| `financial_analyzer.py` | 340+ | 财务分析器 |
| `test_mcp_sse.py` | 232 | 测试套件 |
| **总计** | **~1,800** | 核心代码行数 |
---
## 依赖关系
```
mcp_server_sse.py
├── edgar_client.py
│ └── sec-edgar-api
│ └── requests
│
└── financial_analyzer.py
└── edgar_client.py
```
---
## 数据流
```
MCP Client (Claude Desktop)
↓ SSE
MCP Server (mcp_server_sse.py)
↓
Financial Analyzer (financial_analyzer.py)
↓
EDGAR Client (edgar_client.py)
↓ HTTPS
SEC EDGAR API
```
---
## 开发工作流
### 1. 本地开发
```bash
# 启动服务器
python mcp_server_sse.py
# 运行测试
python test_mcp_sse.py
```
### 2. 部署到 HF Space
```bash
git add .
git commit -m "Update"
git push
```
### 3. 验证部署
```bash
curl https://jc321-easyreportsmcpserver.hf.space/health
```
---
## 项目特点
✅ **简洁** - 核心文件少,结构清晰
✅ **专注** - 只保留 MCP Server 相关代码
✅ **完整** - 包含服务器、测试、文档
✅ **可维护** - 代码组织良好,易于理解
✅ **生产就绪** - 可直接部署到 HF Space
---
**总大小**: ~70 KB (不含 Python 缓存)
**文件数**: 9 个核心文件
**依赖数**: 5 个 Python 包
|