GeekNews MCP Server

GeekNews MCP Server

Fetches and serves GeekNews articles and weekly news via Model Context Protocol.

16
Stars
6
Forks
16
Watchers
2
Issues
GeekNews MCP Server provides an MCP-compliant server to extract articles and weekly news from GeekNews, using Python and BeautifulSoup for web scraping. It supports scheduled automatic parsing and caching of data to minimize server load and ensure efficient retrieval. The server exposes tools to obtain articles by type and weekly news, offering structured metadata for each item. Integration is facilitated via Smithery and is compatible with the MCP ecosystem.

Key Features

Model Context Protocol (MCP) compliant server implementation
Fetches articles from GeekNews with customizable types and limits
Retrieves weekly news with support for specific or latest IDs
Automatic daily data parsing and caching to local storage
Reduces server load by utilizing 24-hour automatic caching
Exposes tools for article and news retrieval with rich metadata
Integrated with Smithery ecosystem for easy deployment
Supports structured responses for AI model context ingestion
Scheduler to maintain cache freshness
Configurable via MCP Inspector and MCP config files

Use Cases

Supplying recent or weekly GeekNews articles to conversational AI models for context
Automating news aggregation for downstream analysis or recommendation systems
Integrating up-to-date tech news content into apps or assistants
Reducing API load for news data by leveraging smart caching
Facilitating structured data ingestion about trending tech topics
Scheduled updating of news context for continuous model fine-tuning
Prototyping AI tools that require real-world news as context
Building knowledge-rich chatbots using current article data
Rapid deployment of custom news endpoints within the MCP ecosystem
Testing and evaluating model context protocols with real news feeds

README

GeekNews MCP Server

smithery badge

이 프로젝트는 GeekNews에서 아티클을 가져오는 Model Context Protocol(MCP) 서버입니다. Python으로 구현되었으며, BeautifulSoup을 사용하여 웹 스크래핑을 수행합니다. 서버 부하를 줄이기 위해 하루에 한 번 자동으로 데이터를 파싱하고 캐시에 저장하는 기능을 제공합니다.

기능

tool1 tool2
example example

도구 (Tools)

  • get_articles 도구: GeekNews에서 아티클을 가져오는 기능

    • 아티클 유형(top, new, ask, show)과 반환할 아티클 수를 지정할 수 있음
    • 각 응답에는 제목, URL, 포인트, 작성자, 시간, 댓글 수, 순위 정보가 포함됨
    • 캐시된 데이터를 사용하여 서버 부하 감소
  • get_weekly_news 도구: GeekNews에서 주간 뉴스를 가져오는 기능

    • 특정 주간 뉴스 ID를 지정하거나 가장 최근 주간 뉴스를 가져올 수 있음
    • 주간 뉴스의 제목, 번호, ID, 내용, URL, 아이템 목록 등의 정보를 제공
    • 각 아이템에는 제목, URL, 순위 정보가 포함됨
    • 캐시된 데이터를 사용하여 서버 부하 감소

캐시 기능

  • 하루에 한 번 자동으로 데이터를 파싱하고 캐시에 저장
  • 캐시된 데이터가 유효한 경우 GeekNews 서버에 요청하지 않고 캐시된 데이터 사용
  • 캐시 데이터는 24시간 동안 유효하며, 이후 자동으로 갱신
  • 스케줄러가 주기적으로 캐시 유효성을 검사하고 필요시 갱신

사용법

  • Smithery를 이용한 설치

    🚀 geeknews-mcp-server

  • MCP 설정 파일에 서버 정보를 추가

    json
    {
    "mcpServers": {
       "geeknews-mcp-server": {
          "command": "npx",
          "args": [
          "-y",
          "@smithery/cli@latest",
          "run",
          "@the0807/geeknews-mcp-server",
          "--key",
          "smithery에서 발급 받은 키"
          ]
       }
    }
    }
    

로컬 설치 방법

  1. Git Clone

    bash
    git clone https://github.com/the0807/GeekNews-MCP-Server
    cd GeekNews-MCP-Server
    
  2. uv로 환경 세팅

    bash
    uv sync
    
  3. 가상환경 실행

    bash
    uv venv
    source .venv/bin/activate
    
  4. MCP Inspector로 서버 테스트

    bash
    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 폴더에 저장됩니다.

Star History

Star History Chart

Repository Owner

the0807
the0807

User

Repository Details

Language Python
Default Branch main
Size 1,342 KB
Contributors 2
License MIT License
MCP Verified Nov 12, 2025

Programming Languages

Python
98.92%
Dockerfile
1.08%

Tags

Join Our Newsletter

Stay updated with the latest AI tools, news, and offers by subscribing to our weekly newsletter.

We respect your privacy. Unsubscribe at any time.

Related MCPs

Discover similar Model Context Protocol servers

  • Hacker News MCP Server

    Hacker News MCP Server

    Fetch and structure Hacker News stories via the Model Context Protocol.

    Provides an MCP server that enables fetching and parsing stories from Hacker News with structured output. Supports retrieval of different types of stories, configurable limits, and clean error handling. Designed for integration with Claude and other MCP-compatible interfaces, offering a standardized tool for AI-driven access to Hacker News data.

    • 35
    • MCP
    • pskill9/hn-server
  • MCP Claude Hacker News

    MCP Claude Hacker News

    Seamless Hacker News integration for Claude Desktop via Model Context Protocol.

    MCP Claude Hacker News is an MCP server that enables Claude Desktop to access, browse, and interact with Hacker News content. It allows users to view the latest, top, and best-rated stories, retrieve detailed information, and read story comments in a clean, structured format. Designed for easy integration, it supports both manual launch and automated startup with Claude Desktop.

    • 9
    • MCP
    • imprvhub/mcp-claude-hackernews
  • Semgrep MCP Server

    Semgrep MCP Server

    A Model Context Protocol server powered by Semgrep for seamless code analysis integration.

    Semgrep MCP Server implements the Model Context Protocol (MCP) to enable efficient and standardized communication for code analysis tasks. It facilitates integration with platforms like LM Studio, Cursor, and Visual Studio Code, providing both Docker and Python (PyPI) deployment options. The tool is now maintained in the main Semgrep repository with continued updates, enhancing compatibility and support across developer tools.

    • 611
    • MCP
    • semgrep/mcp
  • Macrocosmos MCP

    Macrocosmos MCP

    Official Model Context Protocol server for real-time social and video data integration.

    Macrocosmos MCP is the official server implementation of the Model Context Protocol (MCP). It connects AI clients with real-time data from platforms like X, Reddit, and YouTube, powered by Data Universe (SN13) on Bittensor. The server enables MCP-compatible clients to fetch social media and video transcript data for enhanced contextual understanding. It supports integration with tools such as Claude Desktop, Cursor, Windsurf, and OpenAI Agents.

    • 24
    • MCP
    • macrocosm-os/macrocosmos-mcp
  • WebScraping.AI MCP Server

    WebScraping.AI MCP Server

    MCP server for advanced web scraping and AI-driven data extraction

    WebScraping.AI MCP Server implements the Model Context Protocol to provide web data extraction and question answering functionalities. It integrates with WebScraping.AI to offer robust tools for retrieving, rendering, and parsing web content, including structured data and natural language answers from web pages. It supports JavaScript rendering, proxy management, device emulation, and custom extraction configurations, making it suitable for both individual and team deployments in AI-assisted workflows.

    • 33
    • MCP
    • webscraping-ai/webscraping-ai-mcp-server
  • ORKL MCP Server

    ORKL MCP Server

    A Model Context Protocol server for threat intelligence queries via the ORKL API.

    ORKL MCP Server is an implementation of the Model Context Protocol (MCP) designed for seamless integration with MCP-compatible applications. It enables secure querying of the ORKL API, offering tools to fetch and analyze threat reports, threat actors, and intelligence sources. The server streamlines access to detailed cyber threat data for security operations and research.

    • 45
    • MCP
    • fr0gger/MCP_Security
  • Didn't find tool you were looking for?

    Be as detailed as possible for better results