news
A Model Context Protocol (MCP) server that provides tools for searching and retrieving DeFi news from targeted websites.
claude mcp add --transport stdio denizumutdereli-news-mcp-server node path/to/server.js \ --env HOST="0.0.0.0" \ --env PORT="4020" \ --env REDIS_HOST="localhost" \ --env REDIS_PORT="6379" \ --env TAVILY_API_KEY="your Tavily API key" \ --env NEWS_CACHE_TTL_DAYS="7"
How to use
This MCP server provides a DeFi News discovery experience. It periodically fetches and caches news from a curated set of DeFi news sites, exposing tools to search targeted sources with a fallback to general search, as well as a mechanism to retrieve the full content of linked articles. The server stores cached articles in Redis and supports deduplication to avoid redundant content. Use the available tools to search for the latest DeFi news, fetch full article content, and view the latest cached headlines. The search_with_fallback_targetted_websites tool prioritizes targeted DeFi outlets but can fall back to broader web search when results are scarce. The get_full_content tool lets you extract the complete text from a linked article, enabling deeper analysis by an LLM or client application. The get_latest_defi_news tool returns the most recently cached items, respecting a configurable limit. These tools are exposed via API endpoints and are designed to integrate with MCP-enabled LLM pipelines.
How to install
Prerequisites:
- Node.js 18+ installed on the host
- Redis server running and reachable
- environment variables configured as described below
Install and run:
# 1) Install dependencies
npm install
# 2) Set up environment variables (copy from .env.example and adjust as needed)
# Example (adjust to your environment):
export TAVILY_API_KEY=your_tavily_api_key
export PORT=4020
export HOST=0.0.0.0
export REDIS_HOST=localhost
export REDIS_PORT=6379
export NEWS_CACHE_TTL_DAYS=7
# 3) Build the project (if applicable)
npm run build
# 4) Start the server
npm start
# 5) For development, you can run in dev mode if supported
npm run dev
Notes:
- Ensure Redis is accessible from the server host
- The NEWS_CACHE_TTL_DAYS environment variable controls how long news articles stay cached
- Review the target websites list in the README to understand which sources are queried
Additional notes
Tips and common issues:
- If the server fails to connect to Redis, verify REDIS_HOST and REDIS_PORT are correct and that Redis allows connections from your host.
- Ensure the TAVILY_API_KEY is valid if your setup relies on external services for search or enrichment.
- If you encounter API rate limits, consider increasing the caches TTL or staggering fetch intervals.
- The get_latest_defi_news endpoint respects the limit parameter (default 10, max 50).
- Environment-specific configurations can be managed with a .env file or by exporting variables in the hosting environment.
- When upgrading, re-run npm install to ensure dependencies align with the package.json.
- If you customize target websites, ensure you respect websites’ robots.txt and terms of service.
Related MCP Servers
mcp-llm
An MCP server that provides LLMs access to other LLMs
ClueoMCP
🎭 The Personality Layer for LLMs- Transform any MCP-compatible AI with rich, consistent personalities powered by Clueo's Big Five personality engine.
shadcn-ui
MCP server for shadcn/ui component references
copilot-security-instructions
✨ A customizable copilot-instructions.md ruleset & prompts to guide GitHub Copilot toward secure coding defaults in Java, Node.js, C# and Python. Blocks risky patterns, teaches safe habits.
openai -agent-dotnet
Sample to create an AI Agent using OpenAI models with any MCP server running on Azure Container Apps
fabric
The fabric-mcp-server is an MCP server that integrates Fabric patterns with AI coding agents and assistants, exposing them as tools for AI-driven task execution and enhancing capabilities.