geeknews-mcp-server

by the0807
Verified

GeekNews MCP Server

このプロジェクトは、 GeekNewsから記事をインポートするModel Context Protocol(MCP)サーバーです。 Pythonとして実装されており、BeautifulSoupを使用してWebスクレイピングを実行します。

機能

ツール(Tools)

  • get_articlesツール:GeekNewsから記事をインポートする機能
    • 記事の種類(top、new、ask、show)と返す記事の数を指定できます。
    • 各回答には、件名、URL、ポイント、作成者、時間、コメント数、ランキング情報が含まれています
  • get_weekly_newsツール:GeekNewsから毎週ニュースを取得する機能
    • 特定の週間ニュースIDを指定したり、最新の週間ニュースを取得したりできます
    • 週刊ニュースのタイトル、番号、ID、コンテンツ、URL、アイテムリストなどの情報を提供
    • 各アイテムにはタイトル、URL、ランキング情報が含まれています

使い方

  • 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/server.py : MCPサーバーの実装
  • main.py : サーバー実行エントリポイント

[!Note]

  • このサーバーはGeekNews WebサイトのHTML構造に依存しています。 Webサイトの構造が変更された場合は、解析ロジックを更新する必要があります。
-
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