æš¡ååéææ¹æ¡.mdâ¢5.87 kB
# DataMaster MCP æš¡ååéææ¹æ¡
## é®é¢åæ
åœå `main.py` æä»¶ååšä»¥äžé®é¢ïŒ
- **代ç éè¿å€§**ïŒ5155è¡ä»£ç ïŒå
å«17䞪工å
·åœæ°
- **åèœèŠå**ïŒææåèœéœéäžåšäžäžªæä»¶äž
- **绎æ€å°éŸ**ïŒä»£ç æ¥æŸãä¿®æ¹ãæµè¯éœäžæ¹äŸ¿
- **å¯è¯»æ§å·®**ïŒæä»¶è¿é¿åœ±å代ç çè§£
## æš¡åæåæ¹æ¡
### 1. æ žå¿æ¶æè®Ÿè®¡
```
datamaster_mcp/
âââ main.py # MCPæå¡åšå
¥å£ + å·¥å
·æ³šå (粟ç®å°200è¡ä»¥å
)
âââ core/ # æ žå¿åèœæš¡å
â âââ __init__.py
â âââ database.py # æ°æ®åºè¿æ¥ååºç¡æäœ
â âââ data_import.py # æ°æ®å¯Œå
¥åèœ
â âââ data_export.py # æ°æ®å¯Œåºåèœ
â âââ data_analysis.py # æ°æ®åæåèœ
â âââ data_processing.py # æ°æ®å€çåèœ
â âââ api_manager.py # API管çåèœ
âââ tools/ # å·¥å
·åœæ°æš¡å
â âââ __init__.py
â âââ data_tools.py # æ°æ®çžå
³å·¥å
·
â âââ db_tools.py # æ°æ®åºçžå
³å·¥å
·
â âââ api_tools.py # APIçžå
³å·¥å
·
âââ utils/ # å·¥å
·ç±»åèŸ
å©åœæ°
â âââ __init__.py
â âââ helpers.py # éçšèŸ
å©åœæ°
â âââ validators.py # æ°æ®éªè¯åœæ°
â âââ formatters.py # æ°æ®æ ŒåŒååœæ°
âââ config/ # é
眮管ç (å·²ååš)
âââ __init__.py
âââ database_config.py
âââ api_config.py
âââ storage_config.py
```
### 2. åèœæš¡ååå
#### 2.1 æ°æ®åºæš¡å (`core/database.py`)
- `connect_data_source()` - æ°æ®æºè¿æ¥
- `execute_sql()` - SQLæ§è¡
- `query_external_database()` - å€éšæ°æ®åºæ¥è¯¢
- `list_data_sources()` - æ°æ®æºå衚
- `manage_database_config()` - æ°æ®åºé
眮管ç
#### 2.2 æ°æ®åææš¡å (`core/data_analysis.py`)
- `analyze_data()` - æ°æ®åæ
- `get_data_info()` - æ°æ®ä¿¡æ¯è·å
#### 2.3 æ°æ®å€çæš¡å (`core/data_processing.py`)
- `process_data()` - æ°æ®å€ç
- `export_data()` - æ°æ®å¯Œåº
#### 2.4 APIç®¡çæš¡å (`core/api_manager.py`)
- `manage_api_config()` - APIé
眮管ç
- `fetch_api_data()` - APIæ°æ®è·å
- `api_data_preview()` - APIæ°æ®é¢è§
- `create_api_storage_session()` - å建ååšäŒè¯
- `list_api_storage_sessions()` - ååºååšäŒè¯
### 3. éæå®æœæ¥éª€
#### 第äžé¶æ®µïŒå建暡åç»æ
1. å建 `core/`, `tools/`, `utils/` ç®åœ
2. åå»ºåæš¡åç `__init__.py` æä»¶
3. 讟计暡åéŽçæ¥å£è§è
#### 第äºé¶æ®µïŒåèœè¿ç§»
1. **æ°æ®åºæš¡å**ïŒè¿ç§»æ°æ®åºçžå
³ç5䞪工å
·åœæ°
2. **æ°æ®åææš¡å**ïŒè¿ç§»æ°æ®åæçžå
³ç2䞪工å
·åœæ°
3. **æ°æ®å€çæš¡å**ïŒè¿ç§»æ°æ®å€ççžå
³ç2䞪工å
·åœæ°
4. **APIç®¡çæš¡å**ïŒè¿ç§»APIçžå
³ç5䞪工å
·åœæ°
5. **èŸ
å©åœæ°**ïŒè¿ç§»ææç§æèŸ
å©åœæ°å° `utils/` æš¡å
#### 第äžé¶æ®µïŒäž»æä»¶ç²Ÿç®
1. ä¿çMCPæå¡åšåå§å代ç
2. ä¿çå·¥å
·åœæ°æ³šåïŒäœ¿çšè£
饰åšïŒ
3. 富å
¥åæš¡åçå·¥å
·åœæ°
4. ç§»é€å
·äœå®ç°ä»£ç
### 4. æ°ç main.py ç»æç€ºäŸ
```python
#!/usr/bin/env python3
"""
DataMaster MCP Server - äž»å
¥å£æä»¶
è¿æ¯äžäžªç²Ÿç®çäž»å
¥å£æä»¶ïŒåªèŽèŽ£ïŒ
1. MCPæå¡åšåå§å
2. å·¥å
·åœæ°æ³šå
3. æš¡å富å
¥ååè°
"""
import asyncio
from mcp.server.fastmcp import FastMCP
# 富å
¥ååèœæš¡åçå·¥å
·åœæ°
from .core.database import (
connect_data_source,
execute_sql,
query_external_database,
list_data_sources,
manage_database_config
)
from .core.data_analysis import (
analyze_data,
get_data_info
)
from .core.data_processing import (
process_data,
export_data
)
from .core.api_manager import (
manage_api_config,
fetch_api_data,
api_data_preview,
create_api_storage_session,
list_api_storage_sessions
)
# åå§åMCPæå¡åš
mcp = FastMCP("DataMaster")
# æ³šåææå·¥å
·åœæ°ïŒè£
饰åšäŒèªåšå€çïŒ
# å·¥å
·åœæ°å·²åšåæš¡åäžäœ¿çš@mcp.tool()è£
é¥°åšæ³šå
if __name__ == "__main__":
mcp.run()
```
### 5. éæäŒå¿
#### 5.1 代ç ç»ç»
- **æš¡åå**ïŒåèœæž
æ°åçŠ»ïŒæäºçè§£å绎æ€
- **å¯è¯»æ§**ïŒæ¯äžªæä»¶äžæ³šäºç¹å®åèœé¢å
- **坿µè¯æ§**ïŒæš¡åç¬ç«ïŒäŸ¿äºåå
æµè¯
#### 5.2 åŒåæç
- **å¹¶è¡åŒå**ïŒäžååŒåè
å¯ä»¥åæ¶ä¿®æ¹äžåæš¡å
- **å¿«éå®äœ**ïŒæ ¹æ®åèœç±»åå¿«éæŸå°çžå
³ä»£ç
- **åå°å²çª**ïŒæš¡åå犻åå°ä»£ç åå¹¶å²çª
#### 5.3 ç»Žæ€æ§
- **å±éšä¿®æ¹**ïŒä¿®æ¹æäžªåèœäžåœ±åå
¶ä»æš¡å
- **çæ¬æ§å¶**ïŒæŽç²Ÿç»ç代ç åæŽè¿œèžª
- **代ç å€çš**ïŒæš¡åå¯ä»¥åšå
¶ä»é¡¹ç®äžå€çš
### 6. 泚æäºé¡¹
#### 6.1 å
Œå®¹æ§ä¿è¯
- ä¿æææå·¥å
·åœæ°çæ¥å£äžå
- ç¡®ä¿MCPæå¡åšçå¯åšæ¹åŒäžå
- 绎æ€ç°æçé
眮æä»¶æ ŒåŒ
#### 6.2 äŸèµç®¡ç
- åç讟计暡åéŽäŸèµå
³ç³»
- é¿å
埪ç¯äŸèµ
- 䜿çšäŸèµæ³šå
¥åå°èŠå
#### 6.3 æ§èœèè
- æš¡å富å
¥åŒéæå°å
- ä¿ææ°æ®åºè¿æ¥æ± çæç
- é¿å
éå€åå§å
### 7. 宿œå»ºè®®
1. **æžè¿åŒéæ**ïŒäžèŠäžæ¬¡æ§éæææä»£ç ïŒåæš¡å鿥è¿è¡
2. **ä¿ææµè¯**ïŒæ¯äžªæš¡åéæåç«å³æµè¯åèœå®æŽæ§
3. **ææ¡£æŽæ°**ïŒåæ¶æŽæ°åŒåè
ææ¡£å䜿çšè¯Žæ
4. **ååå
Œå®¹**ïŒç¡®ä¿éæäžåœ±åç°æçšæ·ç䜿çš
### 8. 颿ææ
éæå®æåïŒ
- `main.py` ä» 5155è¡ ç²Ÿç®å° 200è¡ä»¥å
- æ¯äžªåèœæš¡åæ§å¶åš 500-800è¡
- 代ç ç»ææž
æ°ïŒäŸ¿äºç»Žæ€åæ©å±
- æ°åèœåŒåæŽå 髿
è¿äžªéææ¹æ¡æ¢ä¿æäºåèœç宿޿§ïŒå倧倧æåäºä»£ç çå¯ç»Žæ€æ§å坿©å±æ§ã