pulse-cn-mcp

pulse-cn-mcp

2

Pulse CN MCP Server connects AI models to real-time trending data from leading Chinese platforms. It uses the Model Context Protocol to bridge AI models with up-to-date information, ensuring seamless integration for accessing popular internet content.

๐Ÿ”ฅ Pulse CN MCP Server

License: MIT TypeScript smithery badge PRs Welcome

A powerful Model Context Protocol (MCP) server providing real-time trending content from the Chinese internet.

Features โ€ข Installation โ€ข Quick Start โ€ข Documentation โ€ข Contributing โ€ข License

๐ŸŒŸ Overview

Pulse CN MCP Server enables AI models to access up-to-date information about what's trending on the Chinese internet. Built with the Model Context Protocol (MCP), it acts as a bridge between AI models and real-time data from China's most popular social media platforms, news sites, and content aggregators.

โœจ Features

The server provides real-time access to trending data from 18 major Chinese platforms:

PlatformContentStatus
๐Ÿ”ฎ ๆ˜Ÿๅบง่ฟๅŠฟDaily horoscope predictionsโœ…
๐Ÿ’ฌ ๆฏๆ—ฅไธ€ๅฅๅŠฑๅฟ—่‹ฑ่ฏญDaily motivational English quotesโœ…
๐Ÿ“Š ็ƒญๆœ็ƒญๆฆœ่šๅˆAggregated trending topicsโœ…
๐Ÿ”ฅ ๅพฎๅšๅฎžๆ—ถ็ƒญๆœWeibo real-time trending topicsโœ…
๐Ÿ“ฐ ไปŠๆ—ฅๅคดๆก็ƒญๆœToday's Headlines trending newsโœ…
๐Ÿ“ ๆพŽๆนƒๆ–ฐ้—ป็ƒญๆœThePaper.cn news trending topicsโœ…
๐Ÿ€ ่™Žๆ‰‘ๆญฅ่กŒ่ก—็ƒญๆœHupu BXJ real-time trends๐Ÿ”œ
โ“ ็ŸฅไนŽๅฎžๆ—ถ็ƒญๆœZhihu real-time trending topics๐Ÿ”œ
๐Ÿ“” ็ŸฅไนŽๆฏๆ—ฅๆ—ฅๆŠฅZhihu daily digest๐Ÿ”œ
๐Ÿ’ผ 36ๆฐช24ๅฐๆ—ถ็ƒญๆฆœ36Kr 24-hour trending business news๐Ÿ”œ
๐ŸŽฌ ๅ“”ๅ“ฉๅ“”ๅ“ฉๅ…จ็ซ™ๆ—ฅๆฆœBilibili daily rankings๐Ÿ”œ
๐Ÿ” ็™พๅบฆ็ƒญ็‚น็ƒญๆฆœBaidu trending topics๐Ÿ”œ
๐Ÿ“ฑ ๆŠ–้Ÿณ็ƒญ็‚น็ƒญๆฆœDouyin trending topics๐Ÿ”œ
๐Ÿ‘ฅ ่ฑ†็“ฃๅฐ็ป„็ฒพ้€‰Douban group featured content๐Ÿ”œ
๐Ÿ’ป IT่ต„่ฎฏ็ƒญๆฆœIT news trending topics๐Ÿ”œ
๐Ÿ“ˆ ่™Žๅ—…็ฝ‘็ƒญๆฆœHuxiu 24-hour trending topics๐Ÿ”œ
๐Ÿ“ฑ ไบงๅ“็ป็†็ƒญๆ–‡ๆฆœWoshipm daily popular articles๐Ÿ”œ
๐Ÿž ่™ซๆ—้ƒจ่ฝๆœ€ๆ–ฐ็ƒญ้—จChongbuluo latest popular content๐Ÿ”œ

๐Ÿš€ Installation

# Clone the repository
git clone https://github.com/wangtsiao/pulse-cn-mcp.git

# Navigate to the project directory
cd pulse-cn-mcp

# Using npm
npm install
npm run build

# Or using Bun (faster)
bun install
bun run build

โšก Quick Start

Start the MCP server with:

# Using npm
npm start

# Or using Bun
bun start

This launches the server using the Stdio transport, making it ready for MCP-compatible AI models to connect.

๐Ÿ“– Documentation

Architecture

Pulse CN MCP Server follows a modular architecture with individual tools for each data source:

src/
โ”œโ”€โ”€ index.ts            # Main entry point and server setup
โ””โ”€โ”€ tools/              # Individual tool implementations
    โ”œโ”€โ”€ weiboHotspots.js
    โ”œโ”€โ”€ horoscope.js
    โ”œโ”€โ”€ dailyEnglishSentence.js
    โ”œโ”€โ”€ internetHotspotsAggregator.js
    โ”œโ”€โ”€ todayHeadlinesHotspots.js
    โ”œโ”€โ”€ paperNewsHotspots.js
    โ””โ”€โ”€ otherHotspots.js

Available Tools

Fully Implemented
Tool NameDescriptionEndpoint
weibo-hotspotsReal-time trending topics from Weibo/weibo-hotspots
horoscopeDaily horoscope by zodiac sign/horoscope
daily-english-sentenceDaily motivational English quotes/daily-english-sentence
internet-hotspots-aggregatorAggregated trending topics/internet-hotspots-aggregator
today-headlines-hotspotsToday's Headlines trending topics/today-headlines-hotspots
paper-news-hotspotsThePaper.cn trending news/paper-news-hotspots
Coming Soon
  • hupu-pedestrian-street-hotspots
  • zhihu-realtime-hotspots
  • zhihu-daily-hotspots
  • 36-krypton-24-hour-hotspots
  • bilibili-daily-hotspots
  • baidu-hotspots
  • douyin-hotspots
  • douban-group-hotspots
  • huxiu-hotspots
  • product-manager-hotspots
  • in-information-hotspots
  • insect-hotspots

Integration Example

Here's how to integrate with the server using TypeScript:

import { McpClient } from "@modelcontextprotocol/sdk/client";

async function example() {
  const client = new McpClient();
  
  // Get Weibo trending topics
  const weiboHotspots = await client.callTool("weibo-hotspots", {});
  console.log(weiboHotspots.content);
  
  // Get daily horoscope for Aries
  const horoscope = await client.callTool("horoscope", { sign: "aries" });
  console.log(horoscope.content);
}

๐Ÿ› ๏ธ Development

Adding a New Tool

  1. Create a new file in src/tools/ (e.g., myNewTool.ts)
  2. Implement your tool using the MCP Server SDK
  3. Register the tool in src/index.ts

Example:

// src/tools/myNewTool.ts
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";

export function registerMyNewTool(server: McpServer) {
  server.tool(
    "my-new-tool",
    "Description of my new tool",
    {
      // Tool parameters schema
      param1: z.string().describe("Parameter description")
    },
    async (params) => {
      // Tool implementation
      return {
        content: [
          { type: "text", text: "Result of my tool" }
        ]
      };
    }
  );
}

// src/index.ts - Add import and registration
import { registerMyNewTool } from './tools/myNewTool.js';
// ...
registerMyNewTool(server);

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the project
  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

๐Ÿ“„ License

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

๐Ÿ™ Acknowledgements

This project utilizes the free APIs provided by ้Ÿฉๅฐ้ŸฉAPI. We express our sincere gratitude for their excellent service and support.


Built with โค๏ธ by wangtsiao