Skip to main content
Glama
README.md
# RedNote MCP - Xiaohongshu Content Search Tool

## Overview

RedNote MCP is a Model Context Protocol (MCP) server for searching and retrieving content from Xiaohongshu (Red Book) platform. It provides intelligent content extraction with automatic login management and parallel processing capabilities.

## Features

- **Smart Search**: Keyword-based content search on Xiaohongshu
- **Auto Login**: Automatic cookie management and login handling
- **Parallel Processing**: Efficient concurrent content retrieval
- **Rich Data Extraction**:
  - Note titles and content
  - Author information and descriptions
  - Interaction metrics (likes, favorites, comments)
  - Images and hashtags
  - Direct note links

## Technical Stack

- **Runtime**: Node.js with TypeScript
- **Browser Automation**: Playwright
- **Protocol**: Model Context Protocol (MCP) SDK
- **Validation**: Zod schema validation
- **Package Manager**: pnpm

## Data Structure

```typescript
interface RedBookNote {
  title: string;        // Note title
  content: string;      // Note content
  author: string;       // Author name
  authorDesc?: string;  // Author description
  link: string;         // Note URL
  likes?: number;       // Like count
  collects?: number;    // Favorite count
  comments?: number;    // Comment count
  tags?: string[];      // Hashtag list
  images?: string[];    // Image URLs (WebP format)
}
```

## Installation

### Prerequisites
- Node.js 18+ 
- pnpm package manager

### Setup

1. Clone the repository:
```bash
git clone <repository-url>
cd rednote-mcp
```

2. Install dependencies:
```bash
pnpm install
```

3. Install Playwright browsers:
```bash
pnpm exec playwright install
```

4. Build the project:
```bash
pnpm build
```

## Usage

### Running the MCP Server

```bash
pnpm start
```

### Development Mode

```bash
pnpm dev
```

### Testing

```bash
pnpm test
```

## MCP Client Configuration

### Claude Desktop

Add the following configuration to your Claude Desktop config file:

**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`

```json
{
  "mcpServers": {
    "rednote-mcp": {
      "command": "node",
      "args": [
        "C:\\ABSOLUTE\\PATH\\TO\\rednote-mcp\\build\\index.js"
      ]
    }
  }
}
```

**For macOS/Linux users:**
```json
{
  "mcpServers": {
    "rednote-mcp": {
      "command": "node",
      "args": [
        "/absolute/path/to/rednote-mcp/build/index.js"
      ]
    }
  }
}
```

Replace the path with your actual project directory.

### Other MCP Clients

For other MCP-compatible clients, use the built server file:
```bash
node build/index.js
```

## Tool Usage

Once configured, you can use the search tool in your MCP client:

```
Search for "food recommendation" on Xiaohongshu
```

The tool will return structured data including titles, content, author information, and images.

## Important Notes

- **First Run**: Manual login to Xiaohongshu is required on first use
- **Performance**: Initial searches may take 30-60 seconds due to browser startup and content loading
- **Rate Limiting**: Concurrent requests are limited to 3 to avoid platform restrictions
- **Image Format**: Images are provided in WebP format
- **Cookie Management**: Login state is automatically saved and reused

## Development

### Project Structure
```
rednote-mcp/
├── src/
│   ├── index.ts          # MCP server entry point
│   └── xiaohongshu.ts    # Core scraping logic
├── cookies/              # Auto-generated cookie storage
├── results/              # Optional: saved search results
├── build/                # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── README.md
```

### Available Scripts

- `pnpm build` - Build TypeScript to JavaScript
- `pnpm start` - Run the built MCP server
- `pnpm dev` - Development mode with auto-reload
- `pnpm test` - Run tests (if available)
- `pnpm clean` - Clean build directory

## Troubleshooting

### Common Issues

1. **Login Required**: If you see login prompts, delete the `cookies/` directory and restart
2. **Timeout Errors**: Increase the MCP client timeout settings
3. **Browser Not Found**: Run `pnpm exec playwright install` to install browsers
4. **Permission Errors**: Ensure the project directory has proper read/write permissions

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Disclaimer

This tool is for educational and research purposes. Please respect Xiaohongshu's terms of service and rate limits when using this tool.

TDQS

B3/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly defined and distinct by default.

Naming Consistency5/5

A single tool inherently has consistent naming since there are no other tools to compare it against. The tool name follows a clear verb_noun pattern (search_xiaohongshu).

Tool Count2/5

One tool is too few for a server named 'RedNote MCP' that implies broader functionality for interacting with Xiaohongshu. This feels thin and incomplete for the apparent scope, lacking basic operations like creating, updating, or retrieving specific content.

Completeness1/5

The tool surface is severely incomplete for a Xiaohongshu integration. It only provides search functionality, missing essential CRUD operations (e.g., create_post, get_post, update_post, delete_post) and other domain-specific actions like user interactions or analytics.

Maintenance

ActivityInactive
ResponsivenessUnresponsive