GeekNews Server

๐Ÿ“ฐ GeekNews MCP Server

Installation

Installing for Claude Desktop

Manual Configuration Required

This MCP server requires manual configuration. Run the command below to open your configuration file:

npx mcpbar@latest edit -c claude

This will open your configuration file where you can add the GeekNews Server MCP server manually.

GeekNews MCP Server

smithery badge

์ด ํ”„๋กœ์ ํŠธ๋Š” GeekNews์—์„œ ์•„ํ‹ฐํด์„ ๊ฐ€์ ธ์˜ค๋Š” Model Context Protocol(MCP) ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. Python์œผ๋กœ ๊ตฌํ˜„๋˜์—ˆ์œผ๋ฉฐ, BeautifulSoup์„ ์‚ฌ์šฉํ•˜์—ฌ ์›น ์Šคํฌ๋ž˜ํ•‘์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„ ๋ถ€ํ•˜๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ํ•˜๋ฃจ์— ํ•œ ๋ฒˆ ์ž๋™์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ํŒŒ์‹ฑํ•˜๊ณ  ์บ์‹œ์— ์ €์žฅํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ

tool1tool2
exampleexample

๋„๊ตฌ (Tools)

  • get_articles ๋„๊ตฌ: GeekNews์—์„œ ์•„ํ‹ฐํด์„ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ

    • ์•„ํ‹ฐํด ์œ ํ˜•(top, new, ask, show)๊ณผ ๋ฐ˜ํ™˜ํ•  ์•„ํ‹ฐํด ์ˆ˜๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Œ
    • ๊ฐ ์‘๋‹ต์—๋Š” ์ œ๋ชฉ, URL, ํฌ์ธํŠธ, ์ž‘์„ฑ์ž, ์‹œ๊ฐ„, ๋Œ“๊ธ€ ์ˆ˜, ์ˆœ์œ„ ์ •๋ณด๊ฐ€ ํฌํ•จ๋จ
    • ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„ ๋ถ€ํ•˜ ๊ฐ์†Œ
  • get_weekly_news ๋„๊ตฌ: GeekNews์—์„œ ์ฃผ๊ฐ„ ๋‰ด์Šค๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ

    • ํŠน์ • ์ฃผ๊ฐ„ ๋‰ด์Šค ID๋ฅผ ์ง€์ •ํ•˜๊ฑฐ๋‚˜ ๊ฐ€์žฅ ์ตœ๊ทผ ์ฃผ๊ฐ„ ๋‰ด์Šค๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Œ
    • ์ฃผ๊ฐ„ ๋‰ด์Šค์˜ ์ œ๋ชฉ, ๋ฒˆํ˜ธ, ID, ๋‚ด์šฉ, URL, ์•„์ดํ…œ ๋ชฉ๋ก ๋“ฑ์˜ ์ •๋ณด๋ฅผ ์ œ๊ณต
    • ๊ฐ ์•„์ดํ…œ์—๋Š” ์ œ๋ชฉ, URL, ์ˆœ์œ„ ์ •๋ณด๊ฐ€ ํฌํ•จ๋จ
    • ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„ ๋ถ€ํ•˜ ๊ฐ์†Œ

์บ์‹œ ๊ธฐ๋Šฅ

  • ํ•˜๋ฃจ์— ํ•œ ๋ฒˆ ์ž๋™์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ํŒŒ์‹ฑํ•˜๊ณ  ์บ์‹œ์— ์ €์žฅ
  • ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ํšจํ•œ ๊ฒฝ์šฐ GeekNews ์„œ๋ฒ„์— ์š”์ฒญํ•˜์ง€ ์•Š๊ณ  ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ
  • ์บ์‹œ ๋ฐ์ดํ„ฐ๋Š” 24์‹œ๊ฐ„ ๋™์•ˆ ์œ ํšจํ•˜๋ฉฐ, ์ดํ›„ ์ž๋™์œผ๋กœ ๊ฐฑ์‹ 
  • ์Šค์ผ€์ค„๋Ÿฌ๊ฐ€ ์ฃผ๊ธฐ์ ์œผ๋กœ ์บ์‹œ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•˜๊ณ  ํ•„์š”์‹œ ๊ฐฑ์‹ 

์‚ฌ์šฉ๋ฒ•

  • Smithery๋ฅผ ์ด์šฉํ•œ ์„ค์น˜

    ๐Ÿš€ geeknews-mcp-server

  • MCP ์„ค์ • ํŒŒ์ผ์— ์„œ๋ฒ„ ์ •๋ณด๋ฅผ ์ถ”๊ฐ€

    {
    "mcpServers": {
       "geeknews-mcp-server": {
          "command": "npx",
          "args": [
          "-y",
          "@smithery/cli@latest",
          "run",
          "@the0807/geeknews-mcp-server",
          "--key",
          "smithery์—์„œ ๋ฐœ๊ธ‰ ๋ฐ›์€ ํ‚ค"
          ]
       }
    }
    }
    

๋กœ์ปฌ ์„ค์น˜ ๋ฐฉ๋ฒ•

  1. Git Clone

    git clone https://github.com/the0807/GeekNews-MCP-Server
    cd GeekNews-MCP-Server
    
  2. uv๋กœ ํ™˜๊ฒฝ ์„ธํŒ…

    uv sync
    
  3. ๊ฐ€์ƒํ™˜๊ฒฝ ์‹คํ–‰

    uv venv
    source .venv/bin/activate
    
  4. MCP Inspector๋กœ ์„œ๋ฒ„ ํ…Œ์ŠคํŠธ

    uv run mcp
    mcp dev main.py
    
    # ํ„ฐ๋ฏธ๋„์— ๋‚˜์˜ค๋Š” URL(MCP Inspector)๋กœ ์ ‘์†ํ•˜์—ฌ ์„œ๋ฒ„ ํ…Œ์ŠคํŠธ
    

์ฝ”๋“œ ๊ตฌ์กฐ

  • src/models.py: ์•„ํ‹ฐํด ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ์ดํ„ฐ ํด๋ž˜์Šค ์ •์˜
  • src/parser.py: GeekNews ์›น์‚ฌ์ดํŠธ์˜ HTML์„ ํŒŒ์‹ฑํ•˜์—ฌ ์•„ํ‹ฐํด ์ •๋ณด๋ฅผ ์ถ”์ถœ
  • src/client.py: GeekNews ์›น์‚ฌ์ดํŠธ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” HTTP ํด๋ผ์ด์–ธํŠธ
  • src/config.py: ์„ค์ •๊ณผ ์ƒ์ˆ˜ ์ •์˜
  • src/cache.py: ์บ์‹œ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ ์ œ๊ณต
  • src/scheduler.py: ์ฃผ๊ธฐ์ ์ธ ๋ฐ์ดํ„ฐ ๊ฐฑ์‹  ์Šค์ผ€์ค„๋Ÿฌ
  • src/server.py: MCP ์„œ๋ฒ„ ๊ตฌํ˜„
  • main.py: ์„œ๋ฒ„ ์‹คํ–‰ ์ง„์ž…์ 

[!Note]

  • ์ด ์„œ๋ฒ„๋Š” GeekNews ์›น์‚ฌ์ดํŠธ์˜ HTML ๊ตฌ์กฐ์— ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์›น์‚ฌ์ดํŠธ ๊ตฌ์กฐ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ํŒŒ์‹ฑ ๋กœ์ง์„ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์บ์‹œ ๋ฐ์ดํ„ฐ๋Š” ์‚ฌ์šฉ์ž์˜ ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ ์•„๋ž˜ .cache/geeknews-mcp ํด๋”์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
Share:
Details:
  • Stars


    10
  • Forks


    4
  • Last commit


    3 months ago
  • Repository age


    3 months
  • License


    MIT
View Repository

Auto-fetched from GitHub .

MCP servers similar to GeekNews Server:

ย 

ย 
ย 
  • Stars


  • Forks


  • Last commit


ย 

ย 
ย 
  • Stars


  • Forks


  • Last commit


ย 

ย 
ย 
  • Stars


  • Forks


  • Last commit