MCP cover image
See in Github
2025-04-03

该服务器使AI模型和代理可以通过统一的MCP(模型上下文协议)服务器与来自多个策划源的数据进行交互和搜索数据。

4

Github Watches

1

Github Forks

0

Github Stars

Recall Data Omnifeeds

A Model Context Protocol (MCP) server that provides access to various data feeds including Twitter, Substack, and CoinGecko. This server enables AI models to interact with and analyze data from multiple sources through a unified interface.

Features

  • Twitter Integration

    • Get user profiles and tweets
    • Search tweets and profiles
    • Access trending topics
    • Full write access (tweet, like, retweet, follow)
    • Direct messaging support
    • Grok chat integration
  • Substack Integration

    • Get publication information
    • Retrieve recent posts
    • Access post comments
    • Search posts
    • Support for both custom domains and subdomains
  • CoinGecko Integration

    • Get current token prices
    • Retrieve contract addresses and chains
    • Search for tokens
    • Get trending tokens
    • Support for both free and Pro API access

Integrate with Claude

  1. Install and build the server:

    npm install
    npm run build
    
  2. In Claude, go to Settings -> Developer -> Add MCP endpoint

  3. Add the following configuration:

    {
      "mcpServers": {
        "recall-data-omnifeeds": {
          "command": "node",
          "args": ["path to omnifeeds build they just created"],
          "env": {
            "PORT": "3008",
            "TWITTER_USERNAME": "xx",
            "TWITTER_PASSWORD": "xxx",
            "TWITTER_EMAIL": "xxx",
            "COINGECKO_API_KEY": "xxx" (optional)
          }
        }
    }
    
  4. Restart Claude

  5. Verify the integration:

    • Look for a number next to a hammer icon in the bottom right of the prompt input
    • Test the integration by asking:
      has anyone mentioned a cool coin lately on this list https://x.com/i/lists/1879866762147303588?
      

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/recall-data-omnifeeds.git
    cd recall-data-omnifeeds
    
  2. Install dependencies:

    npm install
    
  3. Create a .env file with your API credentials:

    # Twitter credentials (if needed)
    TWITTER_USERNAME=your_twitter_username
    TWITTER_PASSWORD=your_twitter_password
    TWITTER_EMAIL=your_twitter_email
    
    # CoinGecko credentials (optional)
    COINGECKO_API_KEY=your_api_key  # Optional: enables Pro API features
    
  4. Build the project:

    npm run build
    
  5. Start the server:

    npm start
    

Usage

The server implements the Model Context Protocol (MCP) and can be used with any MCP-compatible client. Here are some example invocations:

Twitter Examples

// Get a user's profile
const result = await server.invoke("twitter-get-profile", {
  username: "example_user"
});

// Get recent tweets
const result = await server.invoke("twitter-get-tweets", {
  username: "example_user",
  count: 10
});

// Search tweets
const result = await server.invoke("twitter-search-tweets", {
  query: "example search",
  count: 20
});

Substack Examples

// Get publication info
const result = await server.invoke("substack-get-publication-info", {
  substackId: "example.substack.com"
});

// Get recent posts
const result = await server.invoke("substack-get-recent-posts", {
  substackId: "example.substack.com",
  limit: 10
});

// Search posts
const result = await server.invoke("substack-search-posts", {
  substackId: "example.substack.com",
  searchTerm: "example search",
  limit: 10
});

CoinGecko Examples

// Get token price
const result = await server.invoke("coingecko-get-price", {
  tokenId: "bitcoin",
  currency: "usd"
});

// Get contract addresses
const result = await server.invoke("coingecko-get-contracts", {
  tokenId: "usd-coin"
});

// Search tokens
const result = await server.invoke("coingecko-search", {
  query: "ethereum",
  limit: 5
});

// Get trending tokens
const result = await server.invoke("coingecko-trending", {
  limit: 5
});

API Reference

Twitter Tools

Tool Name Description Parameters
twitter-get-profile Get a user's profile information username (required)
twitter-get-tweets Get recent tweets from a user username (required), count (optional, default: 10)
twitter-search-tweets Search for tweets query (required), count (optional, default: 20)
twitter-get-trends Get trending topics None
twitter-send-tweet Send a tweet text (required)
twitter-like-tweet Like a tweet tweetId (required)
twitter-retweet Retweet a tweet tweetId (required)
twitter-follow-user Follow a user username (required)

Substack Tools

Tool Name Description Parameters
substack-get-publication-info Get publication information substackId (required)
substack-get-recent-posts Get recent posts substackId (required), limit (optional, default: 10)
substack-search-posts Search posts substackId (required), searchTerm (required), limit (optional, default: 10)
substack-get-comments Get comments for a post substackId (required), postId (required)

CoinGecko Tools

Tool Name Description Parameters
coingecko-get-features Get available CoinGecko API features None
coingecko-get-price Get the current price of a token tokenId (required), currency (optional, default: "usd")
coingecko-get-contracts Get contract addresses and chains for a token tokenId (required)
coingecko-search Search for tokens by query query (required), limit (optional, default: 10)
coingecko-trending Get trending tokens limit (optional, default: 10)

Development

Project Structure

recall-data-omnifeeds/
├── src/
│   ├── index.ts              # Main server entry point
│   ├── twitter-client.ts     # Twitter API client
│   ├── substack-client.ts    # Substack API client
│   ├── coingecko-client.ts   # CoinGecko API client
│   └── tools/               # MCP tool implementations
├── dist/                    # Compiled JavaScript files
├── package.json            # Project configuration
└── tsconfig.json          # TypeScript configuration

Building

npm run build

Running Tests

npm test

License

ISC

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

相关推荐

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • Alexandru Strujac
  • Efficient thumbnail creator for YouTube videos

  • lumpenspace
  • Take an adjectivised noun, and create images making it progressively more adjective!

  • Lists Tailwind CSS classes in monospaced font

  • https://appia.in
  • Siri Shortcut Finder – your go-to place for discovering amazing Siri Shortcuts with ease

  • apappascs
  • 发现市场上最全面,最新的MCP服务器集合。该存储库充当集中式枢纽,提供了广泛的开源和专有MCP服务器目录,并提供功能,文档链接和贡献者。

  • ShrimpingIt
  • MCP系列GPIO Expander的基于Micropython I2C的操作,源自ADAFRUIT_MCP230XX

  • modelcontextprotocol
  • 模型上下文协议服务器

  • jae-jae
  • MCP服务器使用剧作《无头浏览器》获取网页内容。

  • Mintplex-Labs
  • 带有内置抹布,AI代理,无代理构建器,MCP兼容性等的多合一桌面和Docker AI应用程序。

    Reviews

    2 (1)
    Avatar
    user_RmsMYnSI
    2025-04-17

    As a dedicated user of data-omnifeeds-mcp by recallnet, I can confidently say this is a game-changer for data aggregation and management! The seamless integration and user-friendly interface make it an indispensable tool for data analysis tasks. Highly recommend checking it out on GitHub: https://github.com/recallnet/data-omnifeeds-mcp.