GeekNews MCP Server
이 프로젝트는 GeekNews에서 아티클을 가져오는 Model Context Protocol(MCP) 서버입니다. Python으로 구현되었으며, BeautifulSoup을 사용하여 웹 스크래핑을 수행합니다.
기능
도구 (Tools)
get_articles
도구: GeekNews에서 아티클을 가져오는 기능- 아티클 유형(top, new, ask, show)과 반환할 아티클 수를 지정할 수 있음
- 각 응답에는 제목, URL, 포인트, 작성자, 시간, 댓글 수, 순위 정보가 포함됨
get_weekly_news
도구: GeekNews에서 주간 뉴스를 가져오는 기능- 특정 주간 뉴스 ID를 지정하거나 가장 최근 주간 뉴스를 가져올 수 있음
- 주간 뉴스의 제목, 번호, ID, 내용, URL, 아이템 목록 등의 정보를 제공
- 각 아이템에는 제목, URL, 순위 정보가 포함됨
사용법
- Smithery를 이용한 설치 🚀 geeknews-mcp-server
- MCP 설정 파일에 서버 정보를 추가Copy
로컬 설치 방법
- Git CloneCopy
- uv로 환경 세팅Copy
- 가상환경 실행Copy
- MCP Inspector로 서버 테스트Copy
코드 구조
src/models.py
: 아티클 정보를 저장하는 데이터 클래스 정의src/parser.py
: GeekNews 웹사이트의 HTML을 파싱하여 아티클 정보를 추출src/client.py
: GeekNews 웹사이트에서 데이터를 가져오는 HTTP 클라이언트src/config.py
: 설정과 상수 정의src/server.py
: MCP 서버 구현main.py
: 서버 실행 진입점
Note
- 이 서버는 GeekNews 웹사이트의 HTML 구조에 의존합니다. 웹사이트 구조가 변경되면 파싱 로직을 업데이트해야 할 수 있습니다.
This server cannot be installed
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.