UGC Fans
REMOTE · MCP.UGC.FANS
Make ads, images and video from a URL; every paid generation is quoted in credits first
Available components
Last scanned (22 hours ago)
Scores higher than 63% of remote servers
Reachable. Last reached 23 Oct 2026.
Category Design and Media
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (ugcfans_cancel_job). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability69
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 4753 tokens (~158/item across 30 items; 30 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management48
- Stability check failed: schema churn in the 15 days we've observed: 0 tool removals, 1 breaking changes, 0 auth/transport breaks, 4 additions. See how to fix → Fail
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 99% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 30 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 31 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 22 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 41 to 44.
- 20 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 34 to 38.
- 17 Oct 26 0
- Stability: 0.27 → fail ▼ security
- A breaking change shipped without a version bump: still 1.0.0 ▼ security
- The server rewrote its instructions, which are the text every model session reads security
- Tool “ugcfans_make_performance” rewrote its description, which is the text the model reads security
- Tool “ugcfans_make_speech” rewrote its description, which is the text the model reads security
- Tool “ugcfans_read_reference” rewrote its description, which is the text the model reads security
- Tool “ugcfans_write_script” rewrote its description, which is the text the model reads security
- “ugcfans_read_reference” added a required parameter “rights_confirmed”, so existing callers break ▼ functional
- “ugcfans_make_performance” added an optional parameter “quote” cosmetic
- “ugcfans_read_reference” added an optional parameter “quote” cosmetic
- “ugcfans_write_script” added an optional parameter “quote” cosmetic
- 16 Oct 26 +1
- Schema quality: 4171 → 4599 ▼ functional
- New tool “ugcfans_find_business” functional
- New tool “ugcfans_get_business” functional
- New tool “ugcfans_read_business” functional
- New tool “ugcfans_save_business” functional
- 15 Oct 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Tool “ugcfans_get_account” rewrote its description, which is the text the model reads security
- Tool “ugcfans_list_models” rewrote its description, which is the text the model reads security
- Tool “ugcfans_search_templates” rewrote its description, which is the text the model reads security
- Tool “ugcfans_share_file” rewrote its description, which is the text the model reads security
- 14 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
- 10 Oct 26 67
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 23 Oct 2026 · Probed https://mcp.ugc.fans/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=ugc.fans | CN=WE1,O=Google Trust Services,C=US | 7 Oct 2026 | 5 Jan 2027 | ECDSA 256 | ECDSA-SHA256 | 3dc50697d8a301d9138e4644c956be71 |
| SANs: ugc.fans, mcp.ugc.fans, *.mcp.ugc.fans | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.ugc.fans. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| fans. | present | 25466, 46294 | 8, 8 | Verified |
| ugc.fans. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000 |
| x-content-type-options | nosniff |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(self), geolocation=(), payment=(), usb=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.ugc.fans/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.ugc.fans/mcp | HTTPS enforced | 301 | https://mcp.ugc.fans/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
ugcfans_ad_to_film Turn a finished ad into an editable film ~91
Makes an editable film from a finished video ad, so its captions and end card can be changed, and returns the film and its first revision. The ad must be finished, must not already be a film, must be a video and at most 96 MiB. Free of credits.
| Name | Type | Req | Description |
|---|---|---|---|
| ad | string | yes | The ad id, from a finished ugcfans_make_ad job. |
No output schema declared.
No examples provided.
ugcfans_cancel_job Cancel a job ~64
Stops a job that has not yet reached a provider; a cancelled job is not charged. A job that is already with a provider cannot be stopped and the call says so. Free.
| Name | Type | Req | Description |
|---|---|---|---|
| job | string | yes | The job id a tool returned, job_... |
No output schema declared.
No examples provided.
ugcfans_capture_website Photograph a website for a film ~156
Opens a public web page in a sandboxed browser, records its text, pictures and layout, and returns a job whose result is a capture id. A capture is the raw material of ugcfans_make_launch_film and ugcfans_make_site_sting. Free of credits. Calling it confirms the person has the right to reuse the page's content in their own films. Only http and https pages on ports 80 and 443 can be captured.
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | The address of the page, starting with https:// or http://. |
| viewport | string | – | desktop captures a 1280 by 900 window (the default); phone captures 390 by 844 at twice the density. |
No output schema declared.
No examples provided.
ugcfans_estimate Price an ad, image or video ~126
Prices a request without making it: the most it can cost in credits, the dollar figures behind it, any warnings, and a quote that is good for about 10 minutes. Free. The body takes the same fields as ugcfans_make_ad, ugcfans_make_image or ugcfans_make_video, without the quote; the make tool takes the quote back and refuses it if any field changed.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | yes | The request: the fields of the make tool for this kind, without quote. |
| kind | string | yes | What is being priced. |
No output schema declared.
No examples provided.
ugcfans_export_film Export a film to MP4 ~82
Renders one revision of a film to an MP4 with a content credential, and returns a job; when it is done the result carries a link to the file. Free of credits. A film with an unresolved rendering requirement cannot be exported.
| Name | Type | Req | Description |
|---|---|---|---|
| film | string | yes | The film id. |
| revision | string | yes | The revision to render. |
No output schema declared.
No examples provided.
ugcfans_find_business Find the website of a business ~128
Finds the website of a business from its name, or reads an address. A name is searched on the web and each candidate site is read and ranked; when two sites carry the name about equally, ask is true and the person should say which is theirs. Returns each candidate's address, name, a sentence about it and the evidence for it. Free of credits.
| Name | Type | Req | Description |
|---|---|---|---|
| country | string | – | The person's country as two letters, such as IN. It decides between sites that carry the same name. |
| query | string | yes | The business's name, or its website address. |
No output schema declared.
No examples provided.
ugcfans_finish_clip Trim, reformat, caption and brand a clip ~170
Runs up to 6 finishing operations in order on a clip of the library, each on the file the one before made: trim, reformat to another frame, burn in captions, overlay a brand logo, close with an end card, or mix in music. Returns the last job, whose result links the finished file. A call that runs past 4 minutes returns the job it is on and the operations still to run. Free of credits. The clip must already be in the library: upload footage at https://ugc.fans/library, then find its address with ugcfans_list_files. mix confirms the person may use the music file.
| Name | Type | Req | Description |
|---|---|---|---|
| operations | array | yes | The operations, in order. |
| source | string | yes | The clip's address in the library, out/... |
No output schema declared.
No examples provided.
ugcfans_get_account Show plan and credits ~46
Shows the signed-in account's credits left, credits granted and spent this period, when they expire, its plan and whether the account is admitted to UGCFans. Free.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
ugcfans_get_business Read a business's profile and facts ~100
Reads a business that was read: how far the reading is, its profile, and its facts with where each came from and whether it stands or waits for a yes. Optionally searches the pages for words. Free.
| Name | Type | Req | Description |
|---|---|---|---|
| business | string | yes | The business id from the finished ugcfans_read_business job. |
| search | string | – | Words to look for on the business's pages; answers the pages that hold them with a passage. |
No output schema declared.
No examples provided.
ugcfans_get_capture Read a website capture ~76
Reads a finished capture: the address it ended on, the parts of the page that can go into a film (node_id, role and the first words), and whether a launch film can be made from it. Free.
| Name | Type | Req | Description |
|---|---|---|---|
| capture | string | yes | The capture id from the finished ugcfans_capture_website job. |
No output schema declared.
No examples provided.
ugcfans_get_job Read a job ~60
Reads where a job stands: working, done with its files as links, failed with the reason, or cancelled. Free. Works for any job the account started.
| Name | Type | Req | Description |
|---|---|---|---|
| job | string | yes | The job id a tool returned, job_... |
No output schema declared.
No examples provided.
ugcfans_list_files List files in the library ~116
Lists files in the account's library, newest first: the path of each (out/...), its size and when it changed. Pictures, video, audio and fonts only. Free. Footage is added at https://ugc.fans/library; the path is what the clip and transcript tools take as source.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | How many files to list, newest first. |
| prefix | string | – | Only paths that start with this, such as out/api/images. The default is the whole library, out. |
No output schema declared.
No examples provided.
ugcfans_list_models List the qualities and their credit prices ~105
Lists what UGCFans makes at each quality: stills, clips and talking clips, with the credits each costs per unit (an image, a clip) and whether a plan locks it. Free, and needs no sign-in. Signed out it is the whole price list; signed in it is what is on offer to this account, the model ids ugcfans_estimate and the make tools accept.
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | – | Only models of this kind. |
No output schema declared.
No examples provided.
ugcfans_make_ad Make a UGC ad ~361
Makes a UGC-style ad from a product and a template or feature (testimonial, talking presenter, product video and others) and returns a job; when it is done the result lists the ad's files as links. Spends the account's credits; the cost depends on the feature and its length, so call ugcfans_estimate first and pass its quote. Without a quote this returns the cost and makes nothing. A presenter must be saved, have a portrait and, for a real person, recorded consent at https://ugc.fans/library.
| Name | Type | Req | Description |
|---|---|---|---|
| feature | string | yes | What kind of ad, a slug from ugcfans_search_templates such as testimonial, talking-presenter or product-video. |
| name | string | – | A name for the ad. |
| page_url | string | – | A web page to read the product from. |
| person | string | – | The presenter: the id of a saved person that has a portrait and, for a real person, recorded consent. |
| product | – | – | What is being sold: a sentence, or an object with its name, description and pictures. |
| quote | string | – | The quote from ugcfans_estimate for exactly this request. Without it the call returns the estimate and makes nothing. |
| reviews | array | – | Real customer reviews a testimonial rests on. |
| script | string | – | A script already written, by its id from ugcfans_write_script. |
| template | string | – | A template slug from ugcfans_search_templates, which fills in the frame, length and shots. |
| testimonial_basis | string | – | Where a testimonial's words come from. verbatim and edited need reviews. |
| voice | string | – | The voice: the id of a saved voice. |
No output schema declared.
No examples provided.
ugcfans_make_image Make an image ~239
Makes a picture from a prompt, optionally following reference pictures, and returns a job; when it is done the result links the picture and a small one is shown inline. Spends the account's credits per picture (ugcfans_list_models gives each model's price). Call ugcfans_estimate first and pass its quote; without a quote this returns the cost and makes nothing.
| Name | Type | Req | Description |
|---|---|---|---|
| aspect_ratio | string | – | The frame, such as 1:1, 9:16 or 16:9, when the model offers it. |
| model | string | yes | The model id, from ugcfans_list_models. |
| n | integer | – | How many pictures (default 1). |
| prompt | string | yes | What to draw, in words. |
| quote | string | – | The quote from ugcfans_estimate for exactly this request. Without it the call returns the estimate and makes nothing. |
| reference | array | – | Pictures of the subject or style to follow: addresses of library files, out/... |
| resolution | string | – | The resolution, such as 1K, when the model offers it. |
No output schema declared.
No examples provided.
ugcfans_make_launch_film Make a launch film from a capture ~120
Makes a 12-second launch film of the page's headline, button and picture from a finished capture, in the chosen frame, and returns a job. The result is an editable film; ugcfans_export_film renders it to MP4. Free of credits. A launch film has no text layers: its words are pictures of the page.
| Name | Type | Req | Description |
|---|---|---|---|
| aspect | string | yes | The frame: 16:9 landscape, 9:16 vertical, 1:1 square. |
| capture | string | yes | The capture id. |
No output schema declared.
No examples provided.
ugcfans_make_performance Make a clip of a saved person ~442
Puts a saved person on screen and returns a job: talking has them speak a line, motion has them move as a reference clip moves, swap puts them in place of the person in a clip, and product shows them holding a product (a picture). Without a quote, returns the cost and makes nothing. With a held quote, spends the account's credits; a talking clip costs about what its avatar model costs (ugcfans_list_models, kind avatar). The person must be saved with a portrait and, if real, recorded consent at https://ugc.fans/library. motion and swap need rights_confirmed: true, given only after the person confirms they may use the source clip.
| Name | Type | Req | Description |
|---|---|---|---|
| brand | string | – | product: the id of a saved brand whose kit holds the product pictures. |
| handling | string | – | product: how the person has it. |
| image | string | – | talking: which picture of the person to use, out/... |
| kind | string | yes | What to make. |
| motion_from | string | – | motion: follow the clip itself or its pose (default clip). |
| note | string | – | swap: what to change, in words. |
| person | string | yes | The id of the saved person. |
| product | string | – | product: the product's name. |
| product_images | array | – | product: pictures of the product, out/... |
| quote | string | – | The held quote for this exact request, after the person confirms its cost. |
| rights_confirmed | boolean | – | motion and swap: the person confirms they may use the source clip. |
| script | string | – | talking: the id of a saved script to speak. |
| setting | string | – | motion and product: where it happens. |
| source | string | – | motion and swap: the reference clip's address, out/... |
| speech | string | – | talking: the id of a saved line to use as the audio. |
| text | string | – | talking: words to speak. |
| voice | string | – | talking, with script or text: the id of the saved voice to speak in. |
No output schema declared.
No examples provided.
ugcfans_make_site_sting Make a sting from chosen website parts ~167
Makes a 12-second, 8-scene film from the page parts you choose (node_ids from ugcfans_get_capture), in the chosen frame. Unlike a launch film its page text stays as editable text, so ugcfans_set_film_words can change it. Free of credits. Returns the film and its first revision at once.
| Name | Type | Req | Description |
|---|---|---|---|
| aspect | string | yes | The frame: 16:9 landscape, 9:16 vertical, 1:1 square. |
| capture | string | yes | The capture id. |
| key_phrase | string | – | A phrase of the chosen text to feature. It must appear in the chosen parts. |
| node_ids | array | yes | The node_id of each part to include, from ugcfans_get_capture. |
No output schema declared.
No examples provided.
ugcfans_make_speech Speak a line in a saved voice ~174
Speaks a line or a saved script in a saved voice and returns a job whose result links the audio. Spends a few of the account's credits. Without a quote the call returns the cost and makes nothing; pass the quote with the same request after the person confirms it; a voice that cannot be priced ahead cannot be made here. A cloned voice needs its owner's recorded consent.
| Name | Type | Req | Description |
|---|---|---|---|
| quote | string | – | A quote for exactly this line, when you hold one. |
| script | string | – | Or the id of a saved script to speak. |
| speed | number | – | How fast, 0.5 to 1.5 (default 1). |
| text | string | – | The words to speak. |
| voice | string | yes | The id of a saved voice, voice_... |
No output schema declared.
No examples provided.
ugcfans_make_video Make a video clip ~232
Makes a video clip from a prompt, optionally beginning on a still, and returns a job; when it is done the result links the clip. Spends the account's credits per clip (ugcfans_list_models gives each model's price). Call ugcfans_estimate first and pass its quote; without a quote this returns the cost and makes nothing.
| Name | Type | Req | Description |
|---|---|---|---|
| aspect_ratio | string | – | The frame, such as 9:16 or 16:9, when the model offers it. |
| duration | integer | – | The length in seconds, from the lengths the model offers. |
| model | string | yes | The model id, from ugcfans_list_models. |
| prompt | string | yes | What happens, in words. |
| quote | string | – | The quote from ugcfans_estimate for exactly this request. Without it the call returns the estimate and makes nothing. |
| resolution | string | – | The resolution, such as 720p, when the model offers it. |
| start_image | string | – | A picture to begin on: the address of a library file, out/... |
No output schema declared.
No examples provided.
ugcfans_read_business Read a business's website ~117
Reads a business's website page by page (up to 25 pages) and writes its profile (business.md, every line with the page it came from) and its canonical facts (name, logo, colours, tagline, products with prices, claims; each with its page, and held for a yes where pages disagree or a claim has no proof). Returns a job whose result is a business id; read it with ugcfans_get_business. Free of credits.
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | The business's website address. |
No output schema declared.
No examples provided.
ugcfans_read_reference Break down a reference video ~159
Reads a reference video of up to 3 minutes in the library and returns a job whose result is its breakdown: hook, structure, shots, pacing and look, with still frames, and none of its footage, sound or words. Without a quote, returns the cost and makes nothing. A held quote spends a few of the account's credits; rights_confirmed records the person's permission to study the file. Upload the video at https://ugc.fans/library first.
| Name | Type | Req | Description |
|---|---|---|---|
| quote | string | – | The held quote for this exact request, after the person confirms its cost. |
| rights_confirmed | boolean | yes | The person confirms they may study this file. |
| source | string | yes | The video's address in the library, out/... |
No output schema declared.
No examples provided.
ugcfans_save_asset Save a brand, product, presenter or voice ~343
Saves a brand kit, a product, a generated presenter or a stock voice to the library for reuse in ads, and returns its id. Free. Only generated presenters (described in words, not a real person) and stock voices can be saved here: a real person's face or voice needs the consent the person records at https://ugc.fans/library. A new presenter has no picture until its portrait is drawn there.
| Name | Type | Req | Description |
|---|---|---|---|
| brand | string | – | product: the id of the brand it belongs to. |
| call_to_action | string | – | brand: what an ad asks the viewer to do. |
| claims | array | – | product: claims an ad may make about it. |
| description | string | – | product: what it is. person: who the presenter is, drawn from these words. |
| images | array | – | brand and product: addresses of product pictures, out/... |
| kind | string | yes | What to save. |
| language | string | – | voice: its language, as a tag such as en-US. |
| logo | string | – | brand: the address of its logo, out/... |
| name | string | yes | Its name. |
| never | array | – | brand: words and claims its ads never use. |
| palette | object | – | – |
| product | string | – | brand: what the brand sells. |
| provider_voice | string | – | voice: the stock voice's name, from the speech models. |
| tagline | string | – | brand: its tagline. |
| tone | string | – | brand: its voice, such as warm and plain. |
| url | string | – | brand and product: their web address. |
No output schema declared.
No examples provided.
ugcfans_save_business Save a business as a brand kit and products ~83
Saves the facts that stand (taken from the site, or confirmed by the person) as a brand kit and products with their pictures, and keeps business.md and facts.json in the library for later makers. Facts that wait for a yes are not saved. Free.
| Name | Type | Req | Description |
|---|---|---|---|
| business | string | yes | The business id from the finished ugcfans_read_business job. |
No output schema declared.
No examples provided.
ugcfans_search_templates Search ad templates and formats ~98
Lists the ad templates, ad features and creation modes UGCFans offers, each with its slug, name and a sentence on what it makes. Free, and needs no sign-in. A template slug goes into ugcfans_make_ad as template; a feature slug as feature.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | – | Words to look for in names and descriptions, such as "testimonial" or "product video". Leave out to list everything. |
No output schema declared.
No examples provided.
ugcfans_set_film_words Change the words of a film ~117
Changes text in a film: every text layer whose words contain find gets replace, and the result is saved as a new revision; the earlier revision stays as it was. Films made by ugcfans_make_launch_film have no text layers, so nothing changes in them. Free of credits.
| Name | Type | Req | Description |
|---|---|---|---|
| film | string | yes | The film id. |
| replacements | array | yes | Pairs of words to find and what to put in their place, applied in order. |
| revision | string | yes | The revision to edit. |
No output schema declared.
No examples provided.
ugcfans_share_file Make a link for a file ~110
Makes a link that opens one file of the library for anyone who holds it, without signing in. A link lasts 6 hours; a showcase page, which carries the Made with UGCFans badge, lasts 30 days. Free. Anyone with the link can see the file until it expires.
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | – | link opens the file itself (default); showcase is a page that shows it. |
| path | string | yes | The file's address in the library, out/... |
No output schema declared.
No examples provided.
ugcfans_transcribe Transcribe a clip ~121
Writes out the words of an audio or video file in the library, up to 10 minutes long, with the built-in speech model, and returns a job; when it is done the result has the transcript id, its text, the language and the length. The transcript id feeds the captions operation of ugcfans_finish_clip. Free of credits. Upload footage at https://ugc.fans/library first, then find its address with ugcfans_list_files.
| Name | Type | Req | Description |
|---|---|---|---|
| source | string | yes | The file's address in the library, out/... |
No output schema declared.
No examples provided.
ugcfans_wait_job Wait for a job ~86
Waits up to 45 seconds for a job to finish and reports where it stands, as ugcfans_get_job does. It returns as soon as the job ends. Free.
| Name | Type | Req | Description |
|---|---|---|---|
| job | string | yes | The job id a tool returned, job_... |
| seconds | integer | – | How long to wait at most, up to 45 (default 45). |
No output schema declared.
No examples provided.
ugcfans_write_script Write a script, hooks or a translation ~327
Writes an ad script from a product or a web page, or, given a saved script, writes alternative opening hooks for it or translates it, and returns a job whose result holds the script. Spends a few of the account's credits only with a held quote. Without one, returns the cost and makes nothing. Give product or page_url to write a new script; give script with hooks (how many) or with translate_to (a language) to work on one.
| Name | Type | Req | Description |
|---|---|---|---|
| angle | string | – | The angle or hook to take. |
| audience | string | – | Who the ad is for. |
| brand | string | – | The id of a saved brand whose voice to follow. |
| hooks | integer | – | With script: how many alternative openings to write. |
| language | string | – | The language to write in (default English). |
| offer | string | – | The offer or call to action. |
| page_url | string | – | A web page to read the product from, instead of product. |
| points | array | – | Points the script should make. |
| product | string | – | What is being sold, in a sentence or two. |
| quote | string | – | The held quote for this exact request, after the person confirms its cost. |
| script | string | – | The id of a saved script to work on, from an earlier ugcfans_write_script. |
| seconds | integer | – | How long the ad runs, 5 to 120 (default 30). |
| translate_to | string | – | With script: the language to translate it into. |
No output schema declared.
No examples provided.
How do I install the UGC Fans MCP server?
UGC Fans is a hosted endpoint at https://mcp.ugc.fans/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.ugc.fans
claude mcp add --transport http fans-ugc-make 'https://mcp.ugc.fans/mcp'
What is the UGC Fans MCP server?
UGC Fans is an MCP server listed in the public MCP registry as fans.ugc/make. Make ads, images and video from a URL; every paid generation is quoted in credits first. This page covers its hosted endpoint (https://mcp.ugc.fans/mcp).
Is the UGC Fans MCP server safe to use?
UGC Fans scores 72 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the UGC Fans MCP server expose?
UGC Fans exposes 30 tools: ugcfans_search_templates, ugcfans_get_account, ugcfans_find_business, ugcfans_read_business, ugcfans_get_business, and 25 more. Their descriptions and schemas cost roughly 4,616 tokens of context every time the server is loaded.
Does the UGC Fans MCP server require authentication?
No. We connected to UGC Fans without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the UGC Fans MCP server still maintained?
UGC Fans is still listed as active in the MCP registry. We last reached this channel on 23 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.