MCP-optimized fork of Agent Reach — AI agent internet access for 13+ platforms. Exposes 8 task-shaped tools covering web reading, searching, trending content, stock quotes, transcription, and platform health checks across Twitter, Reddit, YouTube, GitHub, Bilibili, Xiaohongshu, LinkedIn, Xiaoyuzhou, V2EX, Xueqiu, RSS feeds, and web search.
Agent Reach MCP exposes 8 tools with mixed quality. Naming is generally verb-forward (doctor, read_url, search, trending, stock_quote, get_details, transcribe, install), following conventions. However, schema visibility is severely limited: only 3 tools (doctor, read_url, search) have explicit input schemas in the provided source; 5 tools (trending, stock_quote, get_details, transcribe, install) lack visible schema definitions, only inferred from pyproject.toml or brief descriptions. Descriptions vary widely: doctor and read_url are detailed (200+ chars, include when/why guidance), but trending, stock_quote, get_details, transcribe are minimal (10-50 chars, no actionable context). No output schemas documented. Error handling is absent, no recovery guidance, no categorization of retryable vs fatal errors. No tool annotations (readOnlyHint/destructiveHint). Security: no evidence of secret injection or permission gates. Composition: tools are single-purpose and mostly independent, but chaining IDs are not documented in responses.
Check which internet platforms are installed, authenticated, and ready to use. Scans all 13 supported platforms and returns a structured health report. Each entry shows status ('ok'|'warn'|'off'|'error'), which backend is active, and actionable next steps if a platform is unavailable. When to use: - Before making a platform-specific call to verify the tool is ready - Diagnosing setup or authentication issues - After running install to confirm everything works Negative: Does NOT install or configure anything — use install() for that. Returns JSON dict keyed by platform name, each value contains: status (str), name (str), message (str), tier (int), backends (list[str]), active_backend (str|null)
Get detailed information about content from supported platforms.
Install and configure backends for internet platforms.
Read web page content from any accessible URL as clean markdown text. Smart auto-routing by domain: - v2ex.com — fetches full topic with all replies via V2EX API - URLs containing /feed, /rss, .xml, atom — parses RSS/Atom feed via feedparser - bilibili.com or b23.tv — returns video metadata via bili-cli - github.com/owner/repo — returns repo metadata via gh CLI - Everything else — Jina Reader AI (primary) or direct HTTP fetch (fallback) When to use: - Reading news articles, blog posts, documentation pages - Getting V2EX discussions with replies - Subscribing to RSS/Atom feeds - Fetching video metadata from Bilibili or repo info from GitHub Negative: Does NOT search — use search() for finding content. Does NOT work on pages behind login walls or CAPTCHAs. url: Full URL including scheme (http:// or https://). If missing, https:// is prepended. Returns: Clean markdown-formatted content text (stripped of ads, navigation, cruft)
5 of 8 tools lack visible input schemas in source code. trending, stock_quote, get_details, transcribe, install have no explicit schema definitions, only inferred from brief descriptions.
Descriptions for 5 tools are under 50 characters and lack actionable context (when/why to use, prerequisites, what it returns). trending: '4 words', stock_quote: '6 words', get_details: '9 words', transcribe: '9 words', install: '8 words'.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. doctor and read_url descriptions mention return structure, but no formal schema. Others are silent.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
Search for content across supported internet platforms by keyword. Supported platforms (7): - "web": General web search
Get stock price quotes and financial data.
Get transcripts from video platforms (YouTube, Bilibili).
Fetch trending/hot content from supported platforms.
No error handling guidance. Tools provide no recovery hints, error categorization, or actionable messages. E.g., if search fails, LLM has no guidance on retry vs fallback.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). install is destructive/write but unmarked. doctor, read_url, search, trending, stock_quote, get_details, transcribe are read-only but unmarked. Agents cannot infer safety.