Skip to content

PlayAINetwork/Chaingpt-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChainGPT AI News MCP Server

A Model Context Protocol (MCP) server that provides access to AI-related crypto and Web3 news through the ChainGPT AI News API.

Features

  • Smart Filtering: Filter news by categories, blockchains, tokens, and keywords
  • Date Range Support: Fetch news from specific time periods
  • Category Mapping: Supports 20+ categories including DeFi, NFTs, Gaming, DAOs, and more
  • Blockchain Coverage: Covers 40+ blockchains including Ethereum, Bitcoin, Solana, Polygon, and others
  • Token Tracking: Track news for 30+ major cryptocurrencies
  • Pagination: Handle large result sets with limit/offset controls
  • Real-time Data: Access to the latest crypto and Web3 news

Integration with MCP Clients

Claude Desktop

Add to your Claude Desktop configuration:

{
  "mcpServers": {
    "chaingpt-mcp": {
      "command": "npx",
      "args": ["chaingpt-mcp-server"],
      "env": {
        "CHAINGPT_API_KEY": ""
      }
    }
  }
}

Installation

Prerequisites

  • Node.js 18+
  • npm or yarn
  • ChainGPT API key

Setup

  1. Clone the repository:
git clone https://github.com/PlayAINetwork/Chaingpt-mcp.git
cd <folder-name>
  1. Install dependencies:
pnpm install
  1. Set up environment variables:
export CHAINGPT_API_KEY=your_api_key_here

Or create a .env file:

CHAINGPT_API_KEY=your_api_key_here
  1. Run the server:
node index.js

Getting a ChainGPT API Key

  1. Visit ChainGPT's website
  2. Sign up for an account
  3. Navigate to the API section
  4. Generate your API key
  5. Add it to your environment variables

Usage

Basic Usage

The server provides a single tool called getAINews with the following parameters:

{
  categories: ["defi", "nft"],           // Optional: Filter by categories
  blockchains: ["ethereum", "solana"],  // Optional: Filter by blockchains
  tokens: ["bitcoin", "ethereum"],      // Optional: Filter by tokens
  searchQuery: "AI development",        // Optional: Keyword search
  fetchAfter: "2024-01-01T00:00:00Z",  // Optional: Date filter
  limit: 10,                           // Optional: Number of results (default: 10)
  offset: 0                            // Optional: Pagination offset (default: 0)
}

Example Queries

Get latest DeFi news:

{
  "categories": ["defi"],
  "limit": 5
}

Get Ethereum-related news from the last week:

{
  "blockchains": ["ethereum"],
  "fetchAfter": "2024-01-01T00:00:00Z",
  "limit": 20
}

Search for AI-related crypto news:

{
  "searchQuery": "artificial intelligence",
  "categories": ["cryptocurrency", "web3"],
  "limit": 15
}

Response Format

The server returns structured JSON responses:

{
  "status": "success",
  "metadata": {
    "totalResults": 10,
    "limit": 10,
    "offset": 0,
    "appliedFilters": {
      "categories": ["defi"],
      "blockchains": [],
      "tokens": [],
      "searchQuery": null,
      "fetchAfter": null,
      "mappedIds": {
        "categoryIds": [5],
        "subCategoryIds": [],
        "tokenIds": []
      }
    },
    "timestamp": "2024-01-15T10:30:00Z"
  },
  "data": [
    {
      "id": "article_id",
      "title": "Latest DeFi Development",
      "description": "Article description...",
      "url": "https://example.com/article",
      "publishedAt": "2024-01-15T09:00:00Z",
      "source": "CryptoNews",
      "category": "DeFi",
      "blockchain": "Ethereum"
    }
  ]
}

Error Handling

The server provides detailed error responses:

{
  "status": "error",
  "message": "ChainGPT API key not found. Please set the CHAINGPT_API_KEY environment variable.",
  "suggestion": "Add CHAINGPT_API_KEY=your_api_key to your environment variables"
}

Common error scenarios:

  • Missing API key
  • Invalid date format
  • API rate limiting
  • Network connectivity issues

Development

Project Structure

chaingpt-ainews-mcp/
├── index.js              # Main server file
├── package.json          # Dependencies and scripts
├── README.md            # This file
├── .env.example         # Environment variables template
└── .gitignore          # Git ignore rules

Dependencies

  • @modelcontextprotocol/sdk - MCP SDK
  • @chaingpt/ainews - ChainGPT AI News API client
  • zod - Schema validation

Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Make your changes
  4. Add tests if applicable
  5. Commit your changes: git commit -m 'Add some feature'
  6. Push to the branch: git push origin feature/your-feature
  7. Submit a pull request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published