README.mdโข2.97 kB
# ๐ Notion Page Viewer
Notion ํ์ด์ง์ ์ปจํ
์ธ ๋ฅผ ์น์์ ๋ณผ ์ ์๋ Streamlit ์ฑ์
๋๋ค.
## โจ ์ฃผ์ ๊ธฐ๋ฅ
### ๐ **4๊ฐ์ง ๋ณด๊ธฐ ๋ชจ๋**
1. **์ ์ฒด ์ปจํ
์ธ ** - ํ ๊ธ, ์ด๋ฏธ์ง, ํ์ ํ์ด์ง๊น์ง ๋ชจ๋ ์ปจํ
์ธ ํ์
2. **์ ๋ชฉ + ์ด๋ฏธ์ง** - ๋ฉ์ธํ์ด์ง์ ์ ๋ชฉ๊ณผ ์ด๋ฏธ์ง๋ง ํ์
3. **ํ์ ํ์ด์ง** - ์ฐ๊ฒฐ๋ ํ์ ํ์ด์ง๋ค์ ์ ๋ชฉ ๋ฆฌ์คํธ
4. **์๋ณธ ๋ฐ์ดํฐ** - JSON ํํ์ ์๋ณธ ๋ฐ์ดํฐ (๋๋ฒ๊น
์ฉ)
## ๐ ๋น ๋ฅธ ์์
### 1. ์ค์น
```bash
git clone https://github.com/ar-codelabs/MCP_NotionMCP_Webviewer.git
cd MCP_notion_webviewer
# ์ค์น
pip install -r requirements.txt
```
### 2. Notion ์ค์
1. [developers.notion.com/](https://www.notion.so/profile/integrations))์์ Integration ์์ฑ
2. Integration Token ๋ณต์ฌ
3. ๋ณด๊ณ ์ถ์ Notion ํ์ด์ง์ Integration ์ฐ๊ฒฐ
4. ํ์ด์ง ID ๋ณต์ฌ (URL์์ ์ถ์ถ)
### 3. ์ค์ ํ์ผ ์์ (Notion)
`application/mcp.json` ํ์ผ์์:
```json
{
"mcpServers": {
"notion": {
"command": "python3",
"args": ["./application/mcp_server_notion.py"],
"env": {
"NOTION_API_KEY": "your_notion_integration_token",
"NOTION_PAGE_ID": "your_notion_page_id"
}
}
}
}
```
### 4. ์คํ
```bash
streamlit run application/app_webview_mcp_simple.py
```
## ๐ ์ฌ์ฉ ๋ฐฉ๋ฒ
### 1. ์น ์ฑ ์ ์
- ๋ธ๋ผ์ฐ์ ์์ ์ ์
### 2. 4๊ฐ์ง ๋ฒํผ ํ์ฉ
- **๐ ์ ์ฒด ์ปจํ
์ธ **: ํ์ด์ง์ ๋ชจ๋ ๋ด์ฉ์ ๊ตฌ์กฐ์ ์ผ๋ก ํ์
- **๐ผ๏ธ ์ ๋ชฉ + ์ด๋ฏธ์ง**: ์ ๋ชฉ๊ณผ ์ด๋ฏธ์ง๋ง ๊น๋ํ๊ฒ ์ ๋ฆฌํด์ ํ์
- **๐ ํ์ ํ์ด์ง**: ์ฐ๊ฒฐ๋ ํ์ ํ์ด์ง๋ค์ ์ ๋ชฉ ๋ชฉ๋ก๊ณผ ๋งํฌ
- **๐ง ์๋ณธ ๋ฐ์ดํฐ**: ๊ฐ๋ฐ์์ฉ JSON ๋ฐ์ดํฐ ํ์ธ
### 3. ์ง์ํ๋ Notion ๋ธ๋ก
- ํ
์คํธ (paragraph)
- ํค๋ฉ (heading_1, heading_2, heading_3)
- ๋ฆฌ์คํธ (bulleted_list_item, numbered_list_item)
- ํ ๊ธ (toggle)
- ์ด๋ฏธ์ง (image)
- ์ฝ๋ (code)
- ์ธ์ฉ๋ฌธ (quote)
- ์ปฌ๋ผ (column_list, column)
- ํ์ ํ์ด์ง (child_page)
## ๐ง ๊ณ ๊ธ ์ค์
### Notion ํ์ด์ง ID ์ฐพ๊ธฐ
1. Notion ํ์ด์ง URL: `https://notion.so/ํ์ด์ง์ ๋ชฉ-abc123def456...`
2. ๋ง์ง๋ง ํ์ดํ ๋ค์ 32์๋ฆฌ ๋ฌธ์์ด์ด ํ์ด์ง ID
3. ํ์ดํ ์ ๊ฑฐ: `abc123def456...`
### ํฌํธ ๋ณ๊ฒฝ
```bash
# MCP ๋ฐฉ์
streamlit run application/app_webview_mcp_simple.py --server.port 8502
```
## ๐ ๏ธ ๊ธฐ์ ์คํ
### ๊ณตํต
- **Frontend**: Streamlit
- **API**: Notion API (notion-client)
- **Language**: Python 3.8+
### MCP ๋ฐฉ์ ์ถ๊ฐ
- **MCP**: Model Context Protocol
- **Architecture**: Server-Client ๋ถ๋ฆฌ
- **Modularity**: ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ MCP ์๋ฒ
## ๐ ์ฃผ์์ฌํญ
- Notion Integration์ ํ์ด์ง ์ฝ๊ธฐ ๊ถํ์ด ์์ด์ผ ํฉ๋๋ค
- ์ด๋ฏธ์ง๋ Notion์ ์์ URL์ ์ฌ์ฉํ๋ฏ๋ก ์ผ์ ์๊ฐ ํ ๋ง๋ฃ๋ ์ ์์ต๋๋ค
- ๋์ฉ๋ ํ์ด์ง์ ๊ฒฝ์ฐ ๋ก๋ฉ ์๊ฐ์ด ๊ธธ์ด์ง ์ ์์ต๋๋ค