TypeScript 로 구축된 Hacker News 전용 Model Context Protocol (MCP) 서버입니다.
이 MCP 서버는 공식 Hacker News API 와 Model Context Protocol 을 지원하는 AI 도구 (Claude, Cursor 등) 간을 연결하는 브리지 역할을 합니다.
이를 통해 이러한 도구가 표준화된 MCP 엔드포인트 를 통해 실시간 Hacker News 데이터 (포스트, 코멘트, 사용자) 를 가져오고 상호작용할 수 있습니다.
Claude 데스크톱 설정 (claude_desktop_config.json) 또는 Cursor 설정 파일 (mcp.json) 에 추가하세요:
{
"mcpServers": {
"mcp-hacker-news": {
...
- 공식 Hacker News API 와 통합되어 포스트, 코멘트 및 사용자 정보를 가져옵니다.
- Claude, Cursor 및 기타 LLM 기반 도구와 원활한 통합을 위한 표준 Model Context Protocol 엔드포인트 를 노출합니다.
- AI 및 자동화 워크플로우를 위해 최신 Hacker News 데이터를 가져옵니다.
⚠️ Node.js 버전에 대해 불확실하다면 터미널에서 node --version 을 실행하세요. v18.x.x 또는 그 이상을 표시하는지 확인하세요.
Node.js 업그레이드 방법
git clone https://github.com/paablolc/mcp-hacker-news.git
cd mcp-hacker-news
pnpm install
...
- MCP Inspector 로 서버를 테스트하려면:
pnpm inspector
npx @modelcontextprotocol/inspector node dist/index.js
이 MCP 서버는 다음 고정 리소스를 노출하며, 각각은 Hacker News 의 핵심 엔드포인트에 해당합니다:
| Resource URI | 설명 | Hacker News API 엔드포인트 |
|---|
hackernews://top | 최상위 스토리 | /v0/topstories |
hackernews://new | 최신 스토리 | /v0/newstories |
hackernews://best | 최고 (알고리즘적) 스토리 | /v0/beststories |
이 세 가지 컬렉션은 Hacker News API 가 공식적으로 제공하는 주요 목록 엔드포인트 와 일치합니다.
다른 유형의 스토리 (Ask HN, Show HN, Jobs 등) 및 항목별 조회는 도구로 제공되며 (아래 참조), 커스텀 파라미터를 사용하여 유연한 쿼리를 가능하게 합니다.
다음 도구들은 고급 또는 파라미터화된 쿼리를 위해 사용 가능합니다. 이를 통해 위의 고정 리소스를 넘어 다른 Hacker News 콘텐츠를 가져올 수 있습니다:
| Tool Name | 설명 |
|---|
getTopStories | 최상위 스토리 가져오기 (커스텀한 제한값) |
getBestStories | 최고 스토리 가져오기 (커스텀한 제한값) |
getNewStories | 최신 스토리 가져오기 (커스텀한 제한값) |
getAskHNStories | "Ask HN" 포스트 가져오기 |
getShowHNStories | "Show HN" 포스트 가져오기 |
getJobStories | 채용 공고 가져오기 |
getItem | 특정 항목 (스토리, 코멘트 등) 조회 |
getUser | 사용자명으로 사용자 프로필 조회 |
getComments | 특정 항목의 코멘트 가져오기 |
getMaxItemId | 현재 최대 항목 ID 가져오기 |
getUpdates | 최근 업데이트된 항목 및 프로필 가져오기 |
각 도구의 지원되는 인수 및 사용 예는 코드나 내선 문서를 확인하세요.
팁:
개발 설정을 위해 pnpm 이 설치되어 있는지 확인하세요. npm 또는 yarn 를 선호하는 경우 대체할 수 있지만, 일관성을 위해 pnpm 을 권장합니다.