geeknews-mcp-server

by the0807
Verified

GeekNews MCP Server

This project is a Model Context Protocol (MCP) server that fetches articles from GeekNews . It is implemented in Python and uses BeautifulSoup to perform web scraping.

function

Tools

  • get_articles tool: Ability to fetch articles from GeekNews
    • You can specify the article type (top, new, ask, show) and the number of articles to return.
    • Each response contains title, URL, points, author, time, number of comments, and ranking information.
  • get_weekly_news tool: Ability to fetch weekly news from GeekNews
    • You can specify a specific weekly news ID or retrieve the most recent weekly news.
    • Provides information such as the title, number, ID, content, URL, and list of items of weekly news.
    • Each item contains a title, URL, and ranking information.

How to use

  • Installation using Smithery🚀 geeknews-mcp-server
  • Add server information to the MCP settings file
    { "mcpServers": { "geeknews-mcp-server": { "command": "npx", "args": [ "-y", "@smithery/cli@latest", "run", "@the0807/geeknews-mcp-server", "--key", "smithery에서 발급 받은 키" ] } } }

How to install locally

  1. Git Clone
    git clone https://github.com/the0807/GeekNews-MCP-Server cd GeekNews-MCP-Server
  2. Setting the environment with uv
    uv sync
  3. Running a virtual environment
    uv venv source .venv/bin/activate
  4. Testing your server with MCP Inspector
    uv run mcp mcp dev main.py # 터미널에 나오는 URL(MCP Inspector)로 접속하여 서버 테스트

Code Structure

  • src/models.py : Define a data class that stores article information.
  • src/parser.py : Parses HTML from the GeekNews website to extract article information.
  • src/client.py : HTTP client that fetches data from the GeekNews website.
  • src/config.py : Define settings and constants
  • src/server.py : MCP server implementation
  • main.py : Server execution entry point

[!Note]

  • This server relies on the HTML structure of the GeekNews website. If the website structure changes, you may need to update your parsing logic.
-
security - not tested
-
license - not tested
-
quality - not tested

This project is a Model Context Protocol (MCP) server that fetches articles from GeekNews. It is implemented in Python, and performs web scraping using BeautifulSoup.

  1. 기능
    1. 도구 (Tools)
  2. 사용법
    1. 로컬 설치 방법
      1. 코드 구조
        ID: le01405fgp