GeekNews MCP Server
Busca e armazena em cache artigos diários do GeekNews usando web scraping.
GitHub
18
Experimente este MCPPatrocinadoDocumentação
Servidor MCP GeekNews
Este projeto é um servidor Model Context Protocol (MCP) que busca artigos do GeekNews. Implementado em Python, utiliza BeautifulSoup para realizar web scraping. Para reduzir a carga no servidor, oferece a funcionalidade de analisar os dados automaticamente uma vez por dia e armazená-los em cache.
Recursos
![]() | ![]() |
|---|---|
![]() | ![]() |
Ferramentas
-
Ferramenta
get_articles: funcionalidade para buscar artigos do GeekNews- É possível especificar o tipo de artigo (top, new, ask, show) e a quantidade de artigos a retornar
- Cada resposta inclui título, URL, pontos, autor, horário, número de comentários e informações de classificação
- Utiliza dados em cache para reduzir a carga no servidor
-
Ferramenta
get_weekly_news: funcionalidade para buscar as notícias semanais do GeekNews- É possível especificar um ID de notícia semanal específico ou buscar a notícia semanal mais recente
- Fornece informações como título, número, ID, conteúdo, URL e lista de itens da notícia semanal
- Cada item inclui título, URL e informações de classificação
- Utiliza dados em cache para reduzir a carga no servidor
Funcionalidade de cache
- Analisa os dados automaticamente uma vez por dia e os armazena em cache
- Se os dados em cache forem válidos, utiliza os dados em cache sem fazer requisições ao servidor do GeekNews
- Os dados em cache são válidos por 24 horas e são renovados automaticamente após esse período
- Um agendador verifica periodicamente a validade do cache e o renova quando necessário
Como usar
-
Instalação via Smithery
-
Adicione as informações do servidor ao arquivo de configuração do MCP
{ "mcpServers": { "geeknews-mcp-server": { "command": "npx", "args": [ "-y", "@smithery/cli@latest", "run", "@the0807/geeknews-mcp-server", "--key", "smithery에서 발급 받은 키" ] } } }
Método de instalação local
-
Git Clone
git clone https://github.com/the0807/GeekNews-MCP-Server cd GeekNews-MCP-Server -
Configurar o ambiente com uv
uv sync -
Executar o ambiente virtual
uv venv source .venv/bin/activate -
Testar o servidor com o MCP Inspector
uv run mcp mcp dev main.py # 터미널에 나오는 URL(MCP Inspector)로 접속하여 서버 테스트
Estrutura do código
src/models.py: definição da classe de dados que armazena informações dos artigossrc/parser.py: analisa o HTML do site GeekNews para extrair informações dos artigossrc/client.py: cliente HTTP que busca dados do site GeekNewssrc/config.py: definição de configurações e constantessrc/cache.py: fornece funcionalidade de gerenciamento de cachesrc/scheduler.py: agendador de atualização periódica de dadossrc/server.py: implementação do servidor MCPmain.py: ponto de entrada para execução do servidor
[!Note]
- Este servidor depende da estrutura HTML do site GeekNews. Se a estrutura do site mudar, pode ser necessário atualizar a lógica de análise.
- Os dados em cache são armazenados na pasta
.cache/geeknews-mcpno diretório inicial do usuário.



