uruads.ai
uruads exposes 57 public tools on this MCP endpoint.
https://uruads.ai/Connect straight to this server’s public endpoint.
https://mcp.uruads.ai/mcpWe add this server to your workspace, walk through sign-in once, then open Studio with tools ready to run.
Last probed Sep 14, 2026 · mcp.uruads.ai
57tools discovered
Showing 25 of 57 from the live probe.
Account
Get the current uruads user account, plan, credit balances (videos, images, avatar, research scrapes) and brand scope (active brand or all accessible brands).
List brands
List every brand this API key can act on — brands the user owns plus brands shared with a team they belong to — and which one is active for this session. With no active brand, every tool runs across ALL accessible brands (plans, accounts, assets, winners…). A key bound to one brand (key_brand_id set) is always pinned to it. Call this first when the user has more than one brand, then use_brand to pin one.
Use brand
Pin this session to one brand (id from list_brands) so every later tool call is scoped to it — required for generate_content_plan. Call with no brand_id to clear the pin and act across all accessible brands again. Returns the resulting scope.
List social accounts
List connected social accounts (TikTok, Instagram, LinkedIn).
Get trends
Search trending content and viral hook formulas. Alias: search_viral_hooks.
Search inspiration
Account-level research, the way the dashboard works: searches the inspiration corpus for a brand handle, hashtag or keyword on one platform, reports when that search was last scraped, and — with refresh "auto" (default) — triggers a NEW scrape as the authenticated account when the search is unscraped or older than 24h, charging 1 research credit (see account → usage.research). refresh "never" only reads the corpus (free); "force" always re-scrapes. TikTok/Instagram/YouTube/LinkedIn/Pinterest scr
Get scrape status
Poll a scrape started by search_inspiration (scrape.status "pending"). Returns the cache state and, once done, the results now in the corpus.
List competitors
List the tracked competitor accounts for the active brand (requires use_brand / X-Brand-Id): platform, handle, followers, tracking state, last_scraped_at, content_count, plus the plan's tracking limits.
Add competitor
Track a competitor account for the active brand. It is scraped by the daily/weekly competitor cron, or immediately via refresh_competitor. Plan tracking caps apply (402 when reached).
Set competitor tracking
Pause (is_tracked:false) or resume (true) a tracked competitor account without deleting its scraped content.
Remove competitor
Stop tracking a competitor account (deletes the tracking row; scraped posts stay in the corpus).
Refresh competitor
Scrape a tracked competitor account NOW (synchronous, up to ~2 minutes) instead of waiting for the cron: pulls their latest posts into the corpus, recomputes outliers and updates last_scraped_at. Check last_scraped_at from list_competitors first — refreshing an account scraped within the last 24h rarely adds anything.
Competitor benchmark
Us-vs-them benchmark for the active brand: followers, average views, posting cadence and best posting hours for the brand's connected accounts versus its tracked competitors.
Competitor outliers
Top outlier posts (highest outlier_score) for one tracked competitor account — what is over-performing for them right now.
List performance accounts
The user's own social accounts whose post performance is tracked: user-owned discovered accounts plus connected publishing accounts (ids like tiktok_<uuid> usable in get_post_performance / refresh_performance).
Get post performance
Per-post analytics for one of the user's own accounts (views, likes, comments, shares, engagement metrics, outlier score) over a date range. Metrics come from the platform's 6-hourly collector (TikTok + Instagram) and account scrapes; refresh_performance pulls the latest. Organic winners (≥5% ER at ≥2k views or ≥5× account average) are also available via find_winners scope "own".
Refresh performance
Re-scrape one of the user's own accounts so get_post_performance reflects the latest numbers (throttled to once per hour per account).
List scheduled posts
The publishing calendar: scheduled, draft-ready, posting and posted items across platforms for the active scope. Draft-ready items (provider drafts awaiting approval) can be published with approve_draft.
Approve draft
Publish a provider draft (status DRAFT_READY) created by schedule_content in draft mode. This is the human approval gate — only call it after the user has explicitly approved that post.
Cancel scheduled post
Cancel a scheduled (not yet posted) item from the publishing calendar.
Create content plan
Create a content plan from items you supply — use generate_content_plan instead unless you specifically need hand-authored items. Ground every item in a winner from find_winners first (remix 10-20%, never clone). Item fields: planned_date, topic, format (tiktok/ig: talking_head | wall_of_text | slideshow | hook_demo | reaction; linkedin: li_slideshow | quote | infographic), platform, hook_hypothesis, caption_draft. Items start as "planned" — approve via update_plan_items, then execute_plan.
Generate content plan
PREFERRED way to build a plan: runs the research-grounded planner, which writes items from this brand's corpus — pre-validated hooks (outlier >=2 or 50k+ views), your own organic winners, hook formulas, the curated backlog, competitor gaps and live trends — then applies a strategy relevance gate, 90-day semantic de-duplication and format quotas. Use this instead of hand-authoring items with create_content_plan: invented hooks are validated by nothing. Requires a brand-scoped session (X-Brand-Id)
List content plans
List the user's content plans (brand-scoped when the session carries X-Brand-Id).
Get content plan
Get one content plan with all its items (topics, hooks, captions, statuses, planned dates).
Update plan items
Bulk-update plan items — the approval gate. Set status "approved" on reviewed items (they then generate on execute_plan or the daily run), or fix topic/format/platform/hook_hypothesis/caption_draft/planned_date. Present the plan for human review BEFORE approving on their behalf.
Get your MCP into directories
A working endpoint is step one. Directory coverage is the coordinated launch across ChatGPT, Claude, Cursor, the MCP Registry, and community indexes.
Directory coverage for brandsuruads exposes 57 public tools on this MCP endpoint.
Use the MCP endpoint listed on this page in your MCP client configuration. One-click install pills support Claude, Cursor, VS Code, and other hosts. Copy the remote MCP URL if your client needs a manual entry.
MCPBundles probed 57 tools on the live server. The tool list on this page reflects what was discovered at the last refresh — connect your client to see the full set available to your session.
uruads may require signing in to the provider before tools can run. Connect through MCPBundles or your MCP client and complete any provider login when prompted.
Operate uruads? Verify ownership to take over this directory entry.
This server appears in the MCPBundles directory. Verify you operate it to take over the listing — name, description, logo, contact email, and skill content. We email a 6-digit code to a maintainer address your server publishes in /.well-known/security.txt or /.well-known/mcpbundles.json. Free, takes about a minute.