Weibo MCP server
Connect Weibo to your AI tools. Claude Code, Cursor, VS Code and other MCP clients can find the endpoint and pull posts, comments, user profiles, keyword search and the hot search list for you. 7 live endpoints, added with one command.
A new account gets 50 trial calls; after that, successful calls are billed from a prepaid balance. See pricing.
Add Weibo with one command
Qovia is also an MCP server. Run this in Claude Code. Finding and reading endpoints needs no key; to call them, set up your API key as in the MCP docs. Cursor and VS Code setups are there too.
claude mcp add --transport http qovia https://api.qovia.ai/mcp7 Weibo endpoints your AI can call
Parameters, response fields and code samples for each are in the API reference.
- Weibo post detail
GET /v1/raw/weibo/postOne Weibo post: full text (long posts too), author, like / comment / repost counts, reads and video plays (when Weibo shows them), topics, images, video duration, publish time, the reposted original and link. Pass the mid or the mblogid from the post's link. A post that does not exist or was deleted answers 404 and is not charged.Required: post_id - Weibo post comments
GET /v1/raw/weibo/commentsFirst-level comments of a post (hottest first), cursor-paginated, up to 20 a page: text, likes, reply count, IP region, time, whether the poster liked it, and the commenter. Pass the previous page's cursor back to continue; stop when has_more is false. Replies come from raw.weibo.comment_replies. A post without comments, or one that does not exist, answers empty and is not charged.Required: post_id - Weibo comment replies
GET /v1/raw/weibo/comment_repliesReplies under one comment, cursor-paginated, up to 20 a page: text, likes, IP region, time, the reply it answers, and the replier. Pass the previous page's cursor back to continue; stop when has_more is false. A later page can come back empty once: ask again. A comment without replies answers empty and is not charged.Required: comment_id - Weibo user profile
GET /v1/raw/weibo/userA Weibo user's profile with followers, following, post count, likes received, verification, bio, gender, location, personal domain and avatar. Pass either the uid or the personal domain (weibo.com/<domain>). A user that does not exist answers 404 and is not charged. - Weibo user posts
GET /v1/raw/weibo/user_postsPosts a user published, the pinned one first, then newest first, about 20 a page, as the same records as post detail (same ids); long posts carry their start only (extra.truncated is true; raw.weibo.post gives the full text). Page by number; stop when has_more is false. A user without posts answers empty and one that does not exist answers 404; neither is charged.Required: uid - Weibo search
GET /v1/raw/weibo/searchKeyword search for Weibo posts, optionally within a range of publish dates (Beijing time, whole days), only hot, original, verified-user, media or viewpoint posts, or only posts with images, videos, music or links; the same records as post detail (same ids), with text that may be cut (extra.truncated) and no interaction counts. Pages hold a varying number of posts (up to about 20); page by number, up to 50 pages, and stop at an empty page. No results answers empty and is not charged.Required: keyword - Weibo hot search
GET /v1/raw/weibo/hot_searchWeibo's realtime hot search board in rank order: the term, its heat, Weibo's label (新 new, 热 hot, 沸 boiling, 爆 exploding, ...), category, whether it is a topic, and a search link, plus the topics pinned above rank 1 (pinned). Ad slots are left out. No params; it changes about every minute.
A request and its response
Weibo search(GET /v1/raw/weibo/search). The sample comes from the endpoint catalog, not live data; a full response also carries request_id and meta.
curl 'https://api.qovia.ai/v1/raw/weibo/search?keyword=%E9%95%BF%E5%BE%81&start_date=2026-10-20&end_date=2026-10-21' \ -H "Authorization: Bearer $QOVIA_KEY"
{
"data": {
"items": [
{
"id": "soc_wei_66be530dfcd9",
"src": "social",
"platform": "weibo",
"lang": "zh-CN",
"text": "【#活动散场后男子吹响冲锋号全场沸腾#】近日,天津一场长征胜利90周年纪念活动散场后,一名男子吹响冲锋号,瞬间全场沸腾。该男子接受中新网采访时表示,当时散场后大家说再吹一个,于是就贴合主题吹了冲锋号。中国新闻网的微博视频(中国新闻网)",
"author": {
"uid_hash": "f879ebcea33e",
"followers": null,
"nickname": "工人日报",
"uid": "3840768703"
},
"metrics": {
"likes": null,
"comments": null,
"shares": null
},
"extra": {
"source_id": "5356593191060572",
"mblogid": "RnKfl4rU0",
"published_at": "2026-10-21T23:00:00+08:00",
"content_type": "video",
"topic": "#活动散场后男子吹响冲锋号全场沸腾",
"topics": [
"活动散场后男子吹响冲锋号全场沸腾"
],
"images": [],
"cover_url": null,
"video_dur_s": null,
"ip_location": null,
"truncated": false,
"repost_of": null,
"url": "https://weibo.com/3840768703/RnKfl4rU0"
},
"prov": {
"hash": "0xdc59f6580c0f1192",
"ts": "2026-10-21T23:50:00+08:00",
"source": "live"
}
},
{
"id": "soc_wei_efafe027096e",
"src": "social",
"platform": "weibo",
"lang": "zh-CN",
"text": "#晚安,广西!#【#周深献唱纪念红军长征胜利90周年MV#】九十年长风不息,烽烟虽远,星火滚烫。@卡布叻_周深倾情演唱的《万里长风》,以歌声回望来路,循先辈足迹,奔赴属于我们的新征程。#跨越90年的回信#(来源:央视新闻)央视新闻的微博视频",
"author": {
"uid_hash": "8a692ede06c2",
"followers": null,
"nickname": "广西新闻网",
"uid": "1986954045"
},
"metrics": {
"likes": null,
"comments": null,
"shares": null
},
"extra": {
"source_id": "5356593190540232",
"mblogid": "RnKfl2gxq",
"published_at": "2026-10-21T23:00:00+08:00",
"content_type": "video",
"topic": "#晚安,广西!",
"topics": [
"晚安,广西!",
"周深献唱纪念红军长征胜利90周年MV",
"跨越90年的回信"
],
"images": [],
"cover_url": null,
"video_dur_s": null,
"ip_location": null,
"truncated": false,
"repost_of": null,
"url": "https://weibo.com/1986954045/RnKfl2gxq"
},
"prov": {
"hash": "0xd5cc0da71c4fbd32",
"ts": "2026-10-21T23:50:00+08:00",
"source": "live"
}
}
],
"page": 1,
"has_more": true,
"prov": {
"hash": "0x0454d79596c740cd",
"ts": "2026-10-21T23:50:00+08:00",
"source": "live"
}
}
}FAQ
How do I add the Weibo MCP server to Claude Code?
Run claude mcp add --transport http qovia https://api.qovia.ai/mcp. Finding and reading endpoints needs no key; to call one, add your API key as an Authorization: Bearer header in the MCP config (see the MCP docs). A new account gets 50 trial calls.
What can an AI do with the Weibo MCP server?
It exposes four tools: search_endpoints, get_endpoint, call_endpoint and get_account. The AI searches for "weibo" with search_endpoints, picks from the 7 endpoints, and pulls posts, comments, user profiles, keyword search and the hot search list with call_endpoint. Calls are billed exactly like the HTTP API.
Does Weibo have an official data API?
Weibo's open platform needs a registered app and user authorization, and public data such as keyword search across Weibo or the comments on any post is generally out of reach for ordinary developers. Qovia serves that public data through one API key.
What Weibo data can I get?
Single posts (full text, author, like/comment/repost counts, views and video plays where Weibo shows them, topics, images, publish time and IP location), comments and replies, user profiles and their posts, keyword search (with a date range and filters such as hot, original or verified users) and the hot search list.
How much can Weibo search return?
Up to about 20 posts a page, up to 50 pages. Text in search results can be truncated and carries no engagement counts; for the full text and like, comment and repost counts, call the post endpoint with the post's ID.
Do I need a Weibo account or cookies?
No. All you need is a Qovia API key: no accounts, cookies, proxies or request signing to maintain.
How is it billed?
Prepaid and per call: only successful calls that return data are charged, and empty results, errors and timeouts are not. Every response says what it cost (meta.charged_usd). Each endpoint's price is in the API reference.
What should I keep in mind when using the data?
Qovia provides a data API service and claims no ownership of the underlying content. Use the data under applicable law and Weibo's platform rules; see our terms of service.
Your agent only knows what you give it
Give it Douyin, Xiaohongshu (RedNote), WeChat and product reviews: structured, per call, nothing charged for failures.