# OP.GG MCP Server
๐บ๐ธ [English](./README.md) | ๐ฏ๐ต [ๆฅๆฌ่ช](./README.ja.md) | ๐จ๐ณ [็ฎไฝไธญๆ](./README.zh-CN.md) | ๐น๐ผ [็น้ซไธญๆ](./README.zh-TW.md) | ๐ง๐ท [Portuguรชs](./README.pt-BR.md)
OP.GG MCP Server๋ AI ์์ด์ ํธ๊ฐ ๋ฆฌ๊ทธ ์ค๋ธ ๋ ์ ๋, ์ ๋ต์ ํ ์ ํฌ(TFT), ๋ฐ๋ก๋ํธ์ OP.GG ๊ฒ์ ๋ฐ์ดํฐ์ ์ ๊ทผํ ์ ์๋๋ก ํ๋ [Model Context Protocol](https://modelcontextprotocol.io) ๊ตฌํ์ฒด์
๋๋ค.

## ์๋ํฌ์ธํธ
```
https://mcp-api.op.gg/mcp
```
**Streamable HTTP** ์ ์ก ๋ฐฉ์์ ์ง์ํฉ๋๋ค.
## ํ๋ ์ ํ
๋๋ถ๋ถ์ ๋๊ตฌ๋ ๋ฐํํ ํ๋๋ฅผ ์ง์ ํ๋ `desired_output_fields` ํ๋ผ๋ฏธํฐ๊ฐ ํ์์
๋๋ค. ์ด๋ฅผ ํตํด ํ์ด๋ก๋ ํฌ๊ธฐ๋ฅผ ์ค์ด๊ณ ์๋ต ํจ์จ์ฑ์ ๋์ผ ์ ์์ต๋๋ค.
### ๋ฌธ๋ฒ
| ํจํด | ์ค๋ช
| ์์ |
|------|------|------|
| `field` | ๋จ์ผ ํ๋ | `name` |
| `parent.child` | ์ค์ฒฉ ํ๋ | `data.summoner.level` |
| `array[]` | ๋ฐฐ์ด ํ๋ | `champions[]` |
| `array[].field` | ๋ฐฐ์ด ํญ๋ชฉ ๋ด ํ๋ | `data.champions[].name` |
| `{a,b,c}` | ๊ฐ์ ๋ ๋ฒจ์ ์ฌ๋ฌ ํ๋ | `{name,title,lore}` |
| `parent.{a,b}` | ์ฌ๋ฌ ์ค์ฒฉ ํ๋ | `data.summoner.{level,name}` |
| `array[].{a,b}` | ๋ฐฐ์ด ํญ๋ชฉ ๋ด ์ฌ๋ฌ ํ๋ | `data.champions[].{name,title}` |
### ์์
```json
{
"desired_output_fields": [
"data.summoner.{game_name,tagline,level}",
"data.summoner.league_stats[].{game_type,win,lose}",
"data.summoner.league_stats[].tier_info.{tier,division,lp}"
]
}
```
## ์ฌ์ฉ ๊ฐ๋ฅํ ๋๊ตฌ
### ๋ฆฌ๊ทธ ์ค๋ธ ๋ ์ ๋
#### ์ฑํผ์ธ
| ๋๊ตฌ | ์ค๋ช
|
|------|------|
| `lol_get_champion_analysis` | ์ฑํผ์ธ ์์ธ ํต๊ณ(์น๋ฅ /ํฝ๋ฅ /๋ฐด๋ฅ ), ์ต์ ๋น๋(์์ดํ
, ๋ฃฌ, ์คํฌ, ์คํ ), ์นด์ดํฐ ๋งค์น์
, ํ ์๋์ง ์กฐํ |
| `lol_get_champion_synergies` | ์ฑํผ์ธ ์๋์ง ์ ๋ณด ์กฐํ |
| `lol_get_lane_matchup_guide` | ํน์ ๋ผ์ธ์ ๋งค์น์
๊ฐ์ด๋ ์กฐํ |
| `lol_list_champion_details` | ์ต๋ 10๊ฐ ์ฑํผ์ธ์ ์คํฌ, ํ, ์คํ ๋ฆฌ, ์คํฏ ๋ฉํ๋ฐ์ดํฐ ์กฐํ |
| `lol_list_champion_leaderboard` | ์ฑํผ์ธ ๋ฆฌ๋๋ณด๋ ๋ฐ์ดํฐ ์กฐํ |
| `lol_list_champions` | ๋ชจ๋ ์ฑํผ์ธ ๋ฉํ๋ฐ์ดํฐ ๋ชฉ๋ก |
| `lol_list_lane_meta_champions` | ๋ผ์ธ๋ณ ์ฑํผ์ธ ํฐ์ด, ์น๋ฅ /ํฝ๋ฅ /๋ฐด๋ฅ , KDA, ํฐ์ด ๋ญํน ์กฐํ |
#### ์ํ์ฌ
| ๋๊ตฌ | ์ค๋ช
|
|------|------|
| `lol_get_summoner_game_detail` | ํน์ ๊ฒฝ๊ธฐ์ ์์ธ ์ ๋ณด(๋ชจ๋ ํ๋ ์ด์ด) ์กฐํ |
| `lol_get_summoner_profile` | ์ํ์ฌ ํ๋กํ(๋ญํฌ, ํฐ์ด, LP, ์น๋ฅ , ์ฑํผ์ธ ํ) ์กฐํ |
| `lol_list_summoner_matches` | ์ต๊ทผ ๋งค์น ๊ธฐ๋ก ๋ฐ ๊ฒฝ๊ธฐ๋ณ ํต๊ณ ์กฐํ |
#### ๋ฆฌ์์ค
| ๋๊ตฌ | ์ค๋ช
|
|------|------|
| `lol_list_discounted_skins` | ํ์ฌ ํ ์ธ ์ค์ธ ์คํจ ์กฐํ |
| `lol_list_items` | ๋ชจ๋ ์์ดํ
๋ฉํ๋ฐ์ดํฐ ๋ชฉ๋ก |
#### ํ๋ก ์ ์
| ๋๊ตฌ | ์ค๋ช
|
|------|------|
| `lol_get_pro_player_riot_id` | ํ๋ก ์ ์์ Riot ID ์กฐํ |
#### e์คํฌ์ธ
| ๋๊ตฌ | ์ค๋ช
|
|------|------|
| `lol_esports_list_schedules` | LoL e์คํฌ์ธ ์ผ์ (ํ, ๋ฆฌ๊ทธ, ๊ฒฝ๊ธฐ ์๊ฐ) ์กฐํ |
| `lol_esports_list_team_standings` | LoL ๋ฆฌ๊ทธ ํ ์์ ์กฐํ |
### ์ ๋ต์ ํ ์ ํฌ (TFT)
| ๋๊ตฌ | ์ค๋ช
|
|------|------|
| `tft_get_champion_item_build` | ์ฑํผ์ธ ์์ดํ
๋น๋ ์ถ์ฒ ์กฐํ |
| `tft_get_play_style` | ํ๋ ์ด ์คํ์ผ ์ถ์ฒ ์กฐํ |
| `tft_list_augments` | ์ฆ๊ฐ ๋ชฉ๋ก ๋ฐ ์ค๋ช
์กฐํ |
| `tft_list_champions_for_item` | ํน์ ์์ดํ
์ ์ ํฉํ ์ฑํผ์ธ ์ถ์ฒ ์กฐํ |
| `tft_list_item_combinations` | ์์ดํ
์กฐํฉ ๋ ์ํผ ์กฐํ |
| `tft_list_meta_decks` | ํ์ฌ ๋ฉํ ๋ฑ ์กฐํ |
### ๋ฐ๋ก๋ํธ
| ๋๊ตฌ | ์ค๋ช
|
|------|------|
| `valorant_list_agent_compositions_for_map` | ํน์ ๋งต์ ์์ ์กฐํฉ ์กฐํ |
| `valorant_list_agent_statistics` | ์์ ํต๊ณ ๋ฐ ๋ฉํ ๋ฐ์ดํฐ ์กฐํ |
| `valorant_list_agents` | ์์ ๋ฉํ๋ฐ์ดํฐ(๋ฅ๋ ฅ, ์ญํ ) ์กฐํ |
| `valorant_list_leaderboard` | ์ง์ญ๋ณ ๋ฆฌ๋๋ณด๋ ์กฐํ (ap, br, eu, kr, latam, na) |
| `valorant_list_maps` | ๋งต ๋ฉํ๋ฐ์ดํฐ ์กฐํ |
| `valorant_list_player_matches` | ํ๋ ์ด์ด ๋งค์น ๊ธฐ๋ก ์กฐํ |
## ๋ผ์ด์ ์ค
์ด ํ๋ก์ ํธ๋ MIT ๋ผ์ด์ ์ค๋ก ๋ฐฐํฌ๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ LICENSE ํ์ผ์ ์ฐธ์กฐํ์ธ์.
## ๊ด๋ จ ๋งํฌ
- [Model Context Protocol](https://modelcontextprotocol.io)
- [OP.GG](https://op.gg)