Install
openclaw skills install @jerrykik/research-social-signalsRetrieve public social media account and content data
openclaw skills install @jerrykik/research-social-signalsRetrieve useful underlying social data through the SignalDig Social MCP. Help the caller form a valid, focused request, then preserve the returned evidence and its collection boundary. Stop at retrieval: do not turn the data into a decision, score, strategy, recommendation, or fixed analysis report.
This Skill is a workflow spec only; it has no data of its own. Every live result comes from the
social-growth-signalsMCP server, which requires a valid SignalDig API key. Installing this Skill does not connect the MCP server — the two are separate installs.
Before starting any retrieval, verify that the social-growth-signals MCP
server is connected and its tools are visible (e.g. search_x_posts,
get_x_trends, search_reddit_posts, search_xiaohongshu_notes,
get_xiaohongshu_user_posts, search_zhihu_articles,
get_linkedin_user_posts, get_wechat_account_articles).
If the MCP server is not configured, its tools are missing, the API key is invalid, or an initial connection fails:
social-growth-signals MCP
server at https://mcp.signaldig.com/data/social/mcp and a SignalDig API
key (get one at https://signaldig.com/ → API Keys). Point to
references/setup-guide.md for client-specific
steps, then stop.Only when the tools are available may the workflow proceed, and every returned item must come from a real tool result.
user_id, an ISO country code placed in country_name, or a LinkedIn company URL placed in profile_url.search_x_posts with search_mode=recent for current X discussions, or
search_mode=all for historical research when Full-archive Search access is available.get_x_trends for current X trends by country or worldwide.search_reddit_posts for public Reddit posts matching a focused natural-language query,
with optional Reddit-native sorting and time-range filters when the caller needs them.search_xiaohongshu_notes for public Xiaohongshu notes matching keywords and optional native filters.get_xiaohongshu_user_posts for one Xiaohongshu creator's public profile and posted notes, identified by a 24-character profile user_id or profile share text/link.search_zhihu_articles for public Zhihu content with explicit native filters.get_linkedin_user_posts for one LinkedIn member's public profile plus one page of activity under /in/.get_wechat_account_articles for content published by one WeChat Official Account identified by its original ID beginning with gh_.start and carry forward the preceding response's pagination_token in the same call; Xiaohongshu keyword search must advance page while carrying forward its returned search identifiers when present.idempotency_key only to retry the same logical page with identical inputs. Use a new key after any input or page changes.idempotency_key; this lets SignalDig derive and reopen the same request_id, replay its private Provider archive with the current parser, and convert that Run to a successful terminal state when recovery works.request_id when a status tool is available; otherwise call the same retrieval tool with unchanged inputs and the same idempotency_key. Never generate a new key, change filters, switch providers, or broaden the query during these three attempts.idempotency_key. Do so only when the caller still needs live coverage, and make clear that this creates a new request rather than recovering the old one.Preserve, when returned and relevant:
For a Xiaohongshu account request, keep these direct observations available when returned:
note_type, source URL, publication time, title/description, and native like, collect, comment, share, and view counts;cursor, next_cursor, has_more, capture time, and returned note count.Do not derive a posting mix, engagement rate, account tier, content quality, growth diagnosis, benchmark, or recommendation inside this Skill. A downstream AI may calculate or interpret those observations after retrieval. If view_count is absent, report exposure/views as unavailable; do not estimate them from likes or other interactions.
For a LinkedIn member request, preserve the returned public profile fields separately from the activity page. Treat posts as the content list. Ignore profile-level posts or activity previews if they appear because they duplicate less complete content.
Do not add generic advice, opportunity rankings, content ideas, sentiment labels, performance judgments, or next-action recommendations. A concise note about invalid inputs, missing fields, or retrieval limitations is part of data quality and is allowed.
idempotency_key; prefer the same request_id status/recovery path over a new paid call.signaldig_social_no_matching_data, say that this query returned no matching public posts; do not retry as an outage. If a tool reports signaldig_social_data_temporarily_unavailable, tell the caller that the same request is being recovered or remains temporarily unavailable. Do not reveal or reconstruct technical error details, OSS keys, cache URLs, or billing text.Use $research-social-signals to retrieve recent X posts about PDF translation that preserve layout. Search both English and Chinese wording, return source data and query boundaries, and do not recommend a content strategy.
Use $research-social-signals to retrieve the public profile and posted notes of this Xiaohongshu creator: https://xhslink.com/example. Return note types, source URLs, publication times, and available native engagement/view counts; do not score or diagnose the account.
Use $research-social-signals to retrieve articles and raw engagement data for the WeChat Official Account whose original ID is gh_a1b2c3d4e5f6. Return read, like, comment, share, and watching counts when present; do not assess account performance.
Use $research-social-signals to search Xiaohongshu for portable coffee makers. Check whether my requested sort and time filter are valid, then return the underlying notes and pagination state only.
Use $research-social-signals to retrieve one LinkedIn member's public profile and two pages of posts from their `/in/` profile URL. Request page 1 with `start=0` and no token. Request page 2 with `start=50` and the exact `pagination_token` returned by page 1 in the same call; never test those two changes separately. Keep missing impression metrics unknown and return no recommendations.