{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"github-panniantong--agent-reach","slug":"panniantong--agent-reach","name":"Agent-Reach","type":"agent","url":"https://github.com/Panniantong/Agent-Reach","page_url":"https://unfragile.ai/panniantong--agent-reach","categories":["ai-agents"],"tags":["agent-infrastructure","ai-agent","ai-search","automation","bilibili","claude-code","cli","cursor","free-api","llm-tools","mcp","python","reddit-scraper","twitter-scraper","web-scraper","xiaohongshu","youtube-transcript"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"github-panniantong--agent-reach__cap_0","uri":"capability://tool.use.integration.unified.multi.platform.content.reading.via.url.dispatch","name":"unified-multi-platform-content-reading-via-url-dispatch","description":"Accepts any URL and automatically routes it to the correct platform-specific channel handler (Twitter, YouTube, Reddit, GitHub, etc.) using an ordered channel registry with can_handle() pattern matching. Returns normalized markdown/text output regardless of source platform. Implements a thin routing layer where each platform is an independent Python file inheriting from a shared Channel abstract base class, eliminating the need for users to select tools per-platform.","intents":["I want my AI agent to read content from any URL without knowing which platform it is","I need a single command interface that works across Twitter, YouTube, Reddit, GitHub, and 15+ other platforms","I want to avoid installing and configuring separate tools for each content platform"],"best_for":["AI agents (Claude Code, Cursor, OpenClaw, Windsurf) that need internet access","developers building agent infrastructure without per-platform API key management","teams migrating from platform-specific scrapers to a unified interface"],"limitations":["URL dispatch uses linear iteration through ALL_CHANNELS registry until first match — O(n) complexity, not optimized for 50+ platforms","No built-in caching of parsed content — each read() call re-fetches from source","Platform-specific rate limits are not aggregated or managed centrally; each channel handles its own limits","Normalized output format varies by channel (some return markdown, some JSON) — no guaranteed schema"],"requires":["Python 3.9+","pip install agent-reach","For authenticated platforms: browser cookies exported to ~/.agent-reach/config.yaml","Optional: proxy configuration for IP-based blocking bypass"],"input_types":["URL string (e.g., https://twitter.com/user/status/123)","RSS feed URL","GitHub repository URL","YouTube video URL"],"output_types":["markdown text","structured JSON (platform-dependent)","plain text transcript"],"categories":["tool-use-integration","search-retrieval"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_1","uri":"capability://search.retrieval.platform.agnostic.search.across.twitter.reddit.youtube.github","name":"platform-agnostic-search-across-twitter-reddit-youtube-github","description":"Executes search queries against multiple platforms (Twitter, Reddit, YouTube, GitHub, Weibo, V2EX, Xueqiu) through a unified search command interface. Each platform channel implements a search() method that translates the query to platform-specific syntax and returns normalized results. Backends use free tools (bird CLI for Twitter, gh CLI for GitHub, yt-dlp for YouTube) or public JSON APIs (V2EX, Xueqiu) to avoid paid API subscriptions.","intents":["I want to search Twitter, Reddit, and YouTube with a single command without managing API keys","I need my AI agent to find relevant content across multiple platforms for a given query","I want to search Chinese platforms (Weibo, V2EX, Xueqiu) without separate tools"],"best_for":["AI agents performing multi-platform research tasks","developers building search-augmented LLM applications without API budgets","teams needing cross-platform content discovery for specific topics"],"limitations":["Search result pagination is not standardized across platforms — some return 10 results, others 50, no unified limit parameter","Twitter search requires bird CLI with valid cookies; without authentication, search is limited to public tweets only","YouTube search returns video metadata but not full transcripts — transcript retrieval requires separate read() call","Chinese platform searches (Weibo, V2EX) may require proxy configuration to bypass geo-blocking","No full-text search on GitHub — only searches repository names, descriptions, and README files"],"requires":["Python 3.9+","agent-reach CLI installed","For Twitter: bird CLI installed and Twitter cookies configured","For GitHub: gh CLI installed (public repos need no auth, private repos need GitHub token)","For YouTube: yt-dlp installed","Optional: proxy configuration for Chinese platforms"],"input_types":["search query string","optional platform filter (e.g., 'search-twitter', 'search-reddit')"],"output_types":["JSON array of search results with title, URL, author, timestamp","markdown-formatted result list"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_10","uri":"capability://search.retrieval.weibo.post.and.search.via.mcp.server","name":"weibo-post-and-search-via-mcp-server","description":"Accesses Weibo (Chinese Twitter equivalent) through an MCP server (mcp-server-weibo) that provides structured access to posts, user profiles, and search functionality. The Agent-Reach Weibo channel acts as a client to this MCP service, translating read/search requests into MCP calls and returning normalized results. Enables agents to analyze Chinese social media discussions and trends without Weibo API credentials.","intents":["I want my AI agent to search Weibo for trending topics and discussions","I need to read Weibo posts and analyze public sentiment","I want to monitor Weibo for brand mentions and competitor activity"],"best_for":["teams analyzing Chinese social media trends and sentiment","AI agents performing market research in Chinese markets","developers building China-focused content analysis systems"],"limitations":["Requires running a separate MCP server (mcp-server-weibo) — adds operational complexity","MCP server may have its own rate limits and reliability issues","Weibo actively blocks scraping — MCP server may break if Weibo changes their website structure","Search results are limited to recent posts — no historical search beyond 30 days","Private accounts and deleted posts return empty content","Proxy configuration may be required to bypass IP-based blocking from outside China"],"requires":["Python 3.9+","agent-reach CLI installed","mcp-server-weibo service running (Docker or Node.js)","mcporter configured to route Weibo requests to the MCP server","Optional: proxy configuration for access from outside China"],"input_types":["Weibo post URL","Weibo user profile URL","search query in Chinese"],"output_types":["JSON with post metadata (author, timestamp, likes, reposts, comments)","markdown-formatted post text","search results as JSON array of posts"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_11","uri":"capability://search.retrieval.v2ex.and.xueqiu.public.api.based.search.and.reading","name":"v2ex-and-xueqiu-public-api-based-search-and-reading","description":"Accesses V2EX (Chinese developer community) and Xueqiu (Chinese stock discussion platform) using their public JSON APIs, which require no authentication. Accepts URLs and search queries; makes HTTP requests to the public APIs; parses JSON responses; and returns normalized markdown with post content, comments, and metadata. Enables agents to analyze Chinese developer discussions and investment sentiment without API keys.","intents":["I want my AI agent to search V2EX for developer discussions and trends","I need to read Xueqiu posts for investment sentiment analysis","I want to monitor Chinese tech and finance communities for insights"],"best_for":["AI agents analyzing Chinese developer and tech trends","teams performing investment sentiment analysis on Xueqiu","developers building China-focused community analysis systems"],"limitations":["V2EX and Xueqiu public APIs have undocumented rate limits — excessive requests may result in IP blocking","API responses may change without notice — no official API documentation or SLA","Search is limited to recent posts — no historical search beyond 6 months","Comment threads may be truncated in API responses — full thread extraction may be incomplete","No authentication support — private content is not accessible"],"requires":["Python 3.9+","agent-reach CLI installed","Network access to V2EX and Xueqiu APIs","Optional: proxy configuration for access from outside China"],"input_types":["V2EX topic URL or topic ID","Xueqiu post URL or post ID","search query"],"output_types":["JSON with post metadata (author, timestamp, likes, comments)","markdown-formatted post with comments","search results as JSON array of posts"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_12","uri":"capability://search.retrieval.exa.semantic.search.via.mcporter.integration","name":"exa-semantic-search-via-mcporter-integration","description":"Integrates with Exa (a semantic search API) through the mcporter MCP service, enabling agents to perform semantic web search without managing Exa API keys directly. Translates search queries into Exa API calls through the MCP service, returns ranked search results with relevance scores, and enables filtering by content type, date range, and domain. Provides a unified semantic search interface that complements platform-specific searches.","intents":["I want my AI agent to perform semantic web search across the entire internet","I need to find relevant content based on meaning, not just keywords","I want to search with filters (date range, domain, content type) in a single query"],"best_for":["AI agents performing general-purpose web research","developers building semantic search-augmented LLM applications","teams needing relevance-ranked search results across the entire web"],"limitations":["Requires running mcporter MCP service — adds operational complexity","Exa API has rate limits and quota restrictions — free tier may be insufficient for high-volume searches","Search results are limited to Exa's indexed content — some websites may not be indexed","Semantic search quality depends on Exa's embedding model — results may not match user intent for niche queries","Exa API pricing is not zero-cost — free tier has limited queries, paid tiers required for production use"],"requires":["Python 3.9+","agent-reach CLI installed","mcporter service running (Docker or Node.js)","Exa API key (free tier available at exa.ai)","mcporter configured to route Exa requests to Exa API"],"input_types":["search query string","optional filters: date_range, domain, content_type"],"output_types":["JSON with ranked search results (title, URL, snippet, relevance_score)","markdown-formatted search results with snippets"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_13","uri":"capability://tool.use.integration.pluggable.channel.architecture.for.custom.platform.integration","name":"pluggable-channel-architecture-for-custom-platform-integration","description":"Provides an extensible architecture where each platform is implemented as an independent Python file in agent_reach/channels/ inheriting from a shared Channel abstract base class. Developers can add new platforms by creating a new channel file implementing read() and search() methods, without modifying core routing logic. The channel registry (ALL_CHANNELS) is iterated in order until a can_handle() match is found, enabling new platforms to be added without touching the core AgentReach class.","intents":["I want to add support for a new platform without modifying Agent-Reach core code","I need to swap out a backend tool (e.g., replace bird CLI with a different Twitter scraper) without changing the interface","I want to contribute a new platform integration to Agent-Reach"],"best_for":["developers extending Agent-Reach with custom platform integrations","teams maintaining internal platform-specific scrapers or APIs","open-source contributors adding new platform support to Agent-Reach"],"limitations":["Channel interface is not fully documented — developers must read existing channel implementations to understand the pattern","No validation that new channels implement required methods — missing read() or search() methods fail at runtime","Channel ordering in ALL_CHANNELS matters for URL dispatch — ambiguous URLs may match the wrong channel","No built-in testing framework for channels — developers must write their own tests","Backend tool selection is hardcoded in each channel — no dynamic backend selection or fallback mechanism"],"requires":["Python 3.9+","Understanding of Agent-Reach channel architecture (read agent_reach/channels/base.py)","Knowledge of the target platform's API or scraping approach","Ability to parse platform-specific output formats"],"input_types":["platform URL or search query","optional platform-specific parameters"],"output_types":["normalized markdown or JSON output","consistent with other channels' output format"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_2","uri":"capability://safety.moderation.credential.local.cookie.and.token.management","name":"credential-local-cookie-and-token-management","description":"Stores authentication credentials (cookies, tokens) exclusively in ~/.agent-reach/config.yaml with 0o600 file permissions (read/write for owner only). Provides a configure command that guides users through exporting browser cookies and setting up platform-specific credentials. Credentials are never sent to external services and remain on the local machine, enabling authenticated access to platforms like Twitter, Instagram, and XiaoHongShu without exposing secrets.","intents":["I want to authenticate with Twitter/Instagram/XiaoHongShu without sharing API keys with third parties","I need to securely store browser cookies for private content access on my local machine","I want to set up authenticated access to multiple platforms with a single configuration step"],"best_for":["developers building private AI agents that need authenticated platform access","teams with security policies requiring credential locality (no cloud credential storage)","users accessing private Twitter accounts, Instagram profiles, or XiaoHongShu content"],"limitations":["Cookies expire and must be manually refreshed by re-exporting from browser — no automatic refresh mechanism","File permissions (0o600) only work on Unix-like systems (Linux, macOS); Windows NTFS permissions are less restrictive","No credential rotation or versioning — old credentials are overwritten, not archived","Cookie export requires manual browser extension or developer tools usage; no built-in browser automation","Credentials are stored in plaintext YAML — no encryption at rest"],"requires":["Python 3.9+","agent-reach CLI installed","Browser with cookie export capability (Chrome, Firefox, Safari)","Optional: browser extension like 'Cookie Editor' or 'EditThisCookie' for easier export","Write access to ~/.agent-reach/ directory"],"input_types":["browser cookies (exported as JSON or text)","platform-specific tokens (GitHub token, etc.)","proxy configuration strings"],"output_types":["YAML configuration file at ~/.agent-reach/config.yaml","validation confirmation that credentials are working"],"categories":["safety-moderation","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_3","uri":"capability://automation.workflow.tiered.channel.setup.with.zero.config.to.mcp.service.progression","name":"tiered-channel-setup-with-zero-config-to-mcp-service-progression","description":"Classifies all supported platforms into three setup tiers: (0) zero-config platforms that work immediately after installation (Jina Reader for any URL, yt-dlp for YouTube, feedparser for RSS, gh CLI for public GitHub), (1) platforms requiring credentials (Twitter with bird CLI + cookies, Instagram with instaloader + cookies), and (2) platforms requiring MCP service setup (Exa search via mcporter). Users can start with tier-0 platforms and progressively add tier-1 and tier-2 capabilities by configuring credentials or deploying MCP services.","intents":["I want to start using Agent-Reach immediately without configuration","I want to gradually add authenticated platform access as I need it","I want to understand which platforms require what setup before configuring them"],"best_for":["new users getting started with Agent-Reach who want immediate value","teams rolling out Agent-Reach incrementally across different use cases","developers building agent infrastructure who want to minimize initial setup friction"],"limitations":["Tier-0 platforms have limited functionality — public content only, no private feeds or authenticated searches","Tier-1 platforms require manual cookie export, which breaks when cookies expire (typically every 30-90 days)","Tier-2 (MCP service) platforms require running a separate service (mcporter) and managing its lifecycle","No automatic tier detection or setup wizard — users must manually read documentation to understand which tier each platform is in","Tier progression is not enforced — users can attempt to use tier-1 platforms without credentials and get cryptic errors"],"requires":["Python 3.9+ for tier-0","agent-reach CLI installed","For tier-1: browser with cookie export capability, platform-specific CLI tools (bird, instaloader)","For tier-2: Docker or Node.js for running mcporter service, Exa API key (free tier available)"],"input_types":["platform name or URL","optional credentials (cookies, tokens)"],"output_types":["documentation/guidance on setup requirements","validation that platform is accessible at current tier"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_4","uri":"capability://search.retrieval.twitter.search.and.read.via.bird.cli.with.cookie.auth","name":"twitter-search-and-read-via-bird-cli-with-cookie-auth","description":"Implements Twitter/X access through the bird CLI tool, which uses browser-like HTTP requests with exported cookies to bypass Twitter's API restrictions. The Twitter channel accepts URLs (tweets, profiles, threads) and search queries, translates them to bird CLI commands, parses the output (JSON or HTML), and returns normalized markdown. Supports both public tweets (no auth) and private/authenticated content (with cookies), enabling agents to read timelines, search tweets, and extract thread conversations without Twitter API access.","intents":["I want my AI agent to search and read tweets without a Twitter API key","I need to extract full tweet threads and conversation context for analysis","I want to monitor specific Twitter accounts or hashtags for my agent"],"best_for":["developers building Twitter-aware AI agents without API budgets","researchers analyzing tweet content and conversations","teams monitoring Twitter for brand mentions or competitor activity"],"limitations":["bird CLI requires valid Twitter cookies that expire every 30-90 days — no automatic refresh, manual re-export required","Rate limiting is enforced by Twitter's servers — bird CLI respects these limits but provides no queue or backoff mechanism","Search is limited to recent tweets (typically last 7 days for public search) — no historical search beyond that window","Parsing bird CLI output is fragile — Twitter HTML/JSON format changes break the parser until updated","Private tweets and protected accounts require authentication; public-only mode has limited utility for many use cases"],"requires":["Python 3.9+","bird CLI installed (npm install -g bird-cli or equivalent)","For authenticated access: valid Twitter cookies exported to ~/.agent-reach/config.yaml","Network access to Twitter (no proxy required for public tweets, proxy may help with rate limiting)"],"input_types":["Twitter URL (tweet, profile, search)","search query string","hashtag or @mention"],"output_types":["markdown-formatted tweet text","JSON with tweet metadata (author, timestamp, engagement metrics)","thread conversation as concatenated markdown"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_5","uri":"capability://search.retrieval.youtube.and.bilibili.transcript.and.metadata.extraction","name":"youtube-and-bilibili-transcript-and-metadata-extraction","description":"Extracts video transcripts, metadata, and content from YouTube and Bilibili using yt-dlp (a maintained fork of youtube-dl). Accepts video URLs and returns structured output including transcript text, video title, duration, channel name, and upload date. For YouTube, transcripts are extracted from auto-generated or user-provided captions; for Bilibili, transcripts are extracted from available subtitle tracks. Enables agents to analyze video content without watching the full video.","intents":["I want my AI agent to extract and analyze YouTube video transcripts","I need to summarize Bilibili video content for Chinese-language research","I want to get video metadata (title, channel, duration) alongside transcript content"],"best_for":["AI agents performing video content analysis and summarization","researchers analyzing YouTube and Bilibili content at scale","teams building video-aware search or recommendation systems"],"limitations":["Transcript extraction only works if captions are available — videos without captions return empty transcript","YouTube auto-generated captions may contain errors or be inaccurate for technical content","Bilibili transcripts are only available for videos with subtitle tracks — many videos lack subtitles","yt-dlp is maintained by the community and may break if YouTube/Bilibili change their website structure","Large videos (2+ hours) produce very long transcripts that may exceed LLM context windows","No support for live streams or premiere videos on YouTube"],"requires":["Python 3.9+","yt-dlp installed (pip install yt-dlp)","Network access to YouTube and Bilibili","Optional: ffmpeg for advanced video processing"],"input_types":["YouTube video URL","Bilibili video URL (bv/av format)","Playlist URL (processes all videos in playlist)"],"output_types":["markdown-formatted transcript","JSON with metadata (title, channel, duration, upload_date, transcript)","plain text transcript only"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_6","uri":"capability://search.retrieval.github.repository.search.and.code.reading","name":"github-repository-search-and-code-reading","description":"Searches GitHub repositories and reads code files using the gh CLI (GitHub's official command-line tool). Accepts repository URLs, file paths, and search queries; translates them to gh CLI commands; and returns code content, repository metadata, and search results. Supports both public repositories (no authentication) and private repositories (with GitHub token). Enables agents to explore codebases, find relevant files, and extract code snippets without cloning repositories.","intents":["I want my AI agent to search GitHub repositories for relevant code","I need to read specific files from a repository without cloning it","I want to find open-source implementations of a specific algorithm or pattern"],"best_for":["AI agents performing code research and analysis","developers building code-aware search or recommendation systems","teams analyzing open-source projects for security or quality"],"limitations":["Search is limited to repository names, descriptions, and README files — no full-text code search without GitHub's paid search API","File reading is limited to text files — binary files (images, compiled code) cannot be read","Large files (>1MB) may timeout or be truncated by gh CLI","Private repository access requires a valid GitHub token with appropriate permissions","Search results are limited to 30 repositories by default — pagination requires manual iteration"],"requires":["Python 3.9+","gh CLI installed (brew install gh or equivalent)","For public repos: no authentication required","For private repos: GitHub token configured in gh CLI (gh auth login)"],"input_types":["GitHub repository URL (https://github.com/owner/repo)","file path within repository (e.g., src/main.py)","search query for repository discovery"],"output_types":["code file content as plain text or markdown","JSON with repository metadata (stars, forks, language, description)","search results as JSON array of repositories"],"categories":["search-retrieval","code-generation-editing"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_7","uri":"capability://search.retrieval.reddit.post.and.comment.reading.with.search","name":"reddit-post-and-comment-reading-with-search","description":"Reads Reddit posts, comments, and threads using web scraping (via Jina Reader or direct HTTP requests). Accepts Reddit URLs (posts, subreddits, user profiles) and search queries; fetches content; and returns normalized markdown with post text, comments, upvotes, and metadata. Supports both popular posts and niche subreddits without requiring Reddit API credentials, enabling agents to analyze discussions and community sentiment.","intents":["I want my AI agent to read Reddit discussions and extract community sentiment","I need to search Reddit for discussions about a specific topic","I want to analyze comments on a Reddit post for insights"],"best_for":["AI agents performing sentiment analysis on Reddit discussions","researchers analyzing online communities and discussions","teams monitoring Reddit for brand mentions or product feedback"],"limitations":["Reddit's terms of service restrict scraping — Agent-Reach may break if Reddit changes their anti-scraping measures","Comment threads are often truncated (Reddit loads comments dynamically) — full thread extraction may be incomplete","Deleted or removed posts return empty content — no way to distinguish between deleted and never-existed","Search is limited to recent posts (typically last 6 months) — no historical search beyond that window","NSFW subreddits require special handling and may not be accessible through scraping"],"requires":["Python 3.9+","agent-reach CLI installed","Network access to Reddit (no authentication required for public content)"],"input_types":["Reddit post URL (https://reddit.com/r/subreddit/comments/...)","subreddit URL (https://reddit.com/r/subreddit)","search query for post discovery"],"output_types":["markdown-formatted post with comments","JSON with post metadata (title, author, upvotes, timestamp, comment_count)","search results as JSON array of posts"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_8","uri":"capability://search.retrieval.rss.and.atom.feed.parsing.and.content.extraction","name":"rss-and-atom-feed-parsing-and-content-extraction","description":"Parses RSS and Atom feeds using the feedparser library, extracting article titles, summaries, publication dates, and author information. Accepts feed URLs and returns normalized JSON or markdown with feed metadata and article listings. Enables agents to monitor news sources, blogs, and content feeds without platform-specific integrations, providing a unified interface for feed-based content discovery.","intents":["I want my AI agent to monitor RSS feeds for new content","I need to extract article metadata from multiple blog feeds","I want to aggregate content from multiple sources into a single feed"],"best_for":["AI agents performing content monitoring and aggregation","developers building news aggregation or content discovery systems","teams monitoring industry blogs and news sources"],"limitations":["RSS/Atom feeds often contain only summaries, not full article text — full content extraction requires reading the original URL","Feed parsing is fragile to malformed XML — some feeds may fail to parse","Feed update frequency is not standardized — some feeds update hourly, others weekly, no unified polling strategy","No built-in deduplication — same article may appear in multiple feeds","Authentication is not supported — private feeds behind login walls cannot be accessed"],"requires":["Python 3.9+","feedparser library (pip install feedparser)","agent-reach CLI installed","Network access to feed URLs"],"input_types":["RSS feed URL (e.g., https://example.com/feed.xml)","Atom feed URL","feed discovery URL (Agent-Reach attempts to find feed URL from website)"],"output_types":["JSON with feed metadata and article listings","markdown-formatted article list with titles and links","plain text article summaries"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-panniantong--agent-reach__cap_9","uri":"capability://search.retrieval.xiaohongshu.content.reading.and.search","name":"xiaohongshu-content-reading-and-search","description":"Reads XiaoHongShu (Little Red Book) posts and searches the platform using web scraping with cookie-based authentication. Accepts XiaoHongShu URLs (posts, user profiles) and search queries; fetches content; and returns normalized markdown with post text, images, comments, and metadata. Enables agents to analyze Chinese social commerce content and community discussions without XiaoHongShu API access.","intents":["I want my AI agent to read XiaoHongShu posts for market research","I need to search XiaoHongShu for product reviews and user feedback","I want to analyze Chinese social commerce trends and discussions"],"best_for":["teams researching Chinese e-commerce and social commerce trends","AI agents performing market analysis in Chinese markets","developers building China-focused content analysis systems"],"limitations":["XiaoHongShu actively blocks scraping — requires valid cookies and may break frequently","Cookies expire regularly — manual refresh required every 30-90 days","Image content is extracted as URLs only — no image download or analysis","Search is limited to recent posts — no historical search beyond 6 months","Private accounts and deleted posts return empty content","Proxy configuration may be required to bypass IP-based blocking from outside China"],"requires":["Python 3.9+","agent-reach CLI installed","Valid XiaoHongShu cookies exported to ~/.agent-reach/config.yaml","Optional: proxy configuration for access from outside China"],"input_types":["XiaoHongShu post URL","XiaoHongShu user profile URL","search query in Chinese or English"],"output_types":["markdown-formatted post with text and image URLs","JSON with post metadata (author, timestamp, likes, comments, image_urls)","search results as JSON array of posts"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":53,"verified":false,"data_access_risk":"high","permissions":["Python 3.9+","pip install agent-reach","For authenticated platforms: browser cookies exported to ~/.agent-reach/config.yaml","Optional: proxy configuration for IP-based blocking bypass","agent-reach CLI installed","For Twitter: bird CLI installed and Twitter cookies configured","For GitHub: gh CLI installed (public repos need no auth, private repos need GitHub token)","For YouTube: yt-dlp installed","Optional: proxy configuration for Chinese platforms","mcp-server-weibo service running (Docker or Node.js)"],"failure_modes":["URL dispatch uses linear iteration through ALL_CHANNELS registry until first match — O(n) complexity, not optimized for 50+ platforms","No built-in caching of parsed content — each read() call re-fetches from source","Platform-specific rate limits are not aggregated or managed centrally; each channel handles its own limits","Normalized output format varies by channel (some return markdown, some JSON) — no guaranteed schema","Search result pagination is not standardized across platforms — some return 10 results, others 50, no unified limit parameter","Twitter search requires bird CLI with valid cookies; without authentication, search is limited to public tweets only","YouTube search returns video metadata but not full transcripts — transcript retrieval requires separate read() call","Chinese platform searches (Weibo, V2EX) may require proxy configuration to bypass geo-blocking","No full-text search on GitHub — only searches repository names, descriptions, and README files","Requires running a separate MCP server (mcp-server-weibo) — adds operational complexity","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.7212173970080857,"quality":0.5,"ecosystem":0.6000000000000001,"match_graph":0.25,"freshness":0.75,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.1,"match_graph":0.28,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:22.063Z","last_scraped_at":"2026-05-03T13:57:04.027Z","last_commit":"2026-04-13T09:46:13Z"},"community":{"stars":18671,"forks":1647,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=panniantong--agent-reach","compare_url":"https://unfragile.ai/compare?artifact=panniantong--agent-reach"}},"signature":"XASWc+gSlGEBOkn+QVQoci1czqHi6h4J27MZGO9daUC5+sxSrb5JXPUBJ/6OEqmbzyOZrsaWqtpSQc3AvE0GAw==","signedAt":"2026-06-21T03:01:46.184Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/panniantong--agent-reach","artifact":"https://unfragile.ai/panniantong--agent-reach","verify":"https://unfragile.ai/api/v1/verify?slug=panniantong--agent-reach","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}