Provides tools for retrieving articles and weekly news from GeekNews (news.hada.io), allowing access to tech news with information including titles, URLs, points, authors, and comments, while using caching to reduce server load.
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 GeekNewsYou 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 GeekNewsYou 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
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
Git Clone
git clone https://github.com/the0807/GeekNews-MCP-Server cd GeekNews-MCP-ServerSetting the environment with uv
uv syncRunning a virtual environment
uv venv source .venv/bin/activateTesting 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 constantssrc/server.py
: MCP server implementationmain.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.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
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.
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server that provides tools for searching and fetching information from Hacker News.Last updated -453MIT License
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server implementation that integrates with FireCrawl for advanced web scraping capabilities.Last updated -40,9784,577MIT License
- AsecurityFlicenseAqualityBuilt as a Model Context Protocol (MCP) server that provides advanced web search, content extraction, web crawling, and scraping capabilities using the Firecrawl API.Last updated -1
- -securityAlicense-qualityA Python-based MCP server that crawls websites to extract and save content as markdown files, with features for mapping website structure and links.Last updated -3MIT License