Meta Muse MCP Server by useapi.net
Meta Muse(muse.ai)代理聊天,具備即時瀏覽器、圖片、含聲音的影片及其資料庫功能。第三方服務,付費(每月15美元),運行於您自己的Muse帳戶。
託管 MCP 伺服器
npx add-mcp 'https://api.useapi.net/v1/muse/mcp'可安裝到 Claude Code、Codex、Cursor 等客戶端
文件
Muse MCP Server
October 13, 2026 (October 25, 2026)
Table of contents
- Endpoint and authorization
- Setup
- Use it in the Claude app or ChatGPT
- Tools
- Long-running work
- Example prompts
- Limits and notes
The useapi.net Muse MCP server lets an AI assistant such as the Claude app, ChatGPT, Claude Code, Cursor or VS Code Copilot use Muse, Meta’s AI agent, on your own Muse account. It is a hosted Model Context Protocol server with 37 tools: generate images and videos, chat with the Muse agent, answer its permission requests, open a live view of its web browser, manage the account’s Library and files, and reset the account. Each tool calls the Muse API, so the same rules, limits and allowance apply. Nothing needs to be installed or hosted.
Is there a Muse MCP server? Yes. useapi.net, a third-party service not affiliated with Meta, hosts one at https://api.useapi.net/v1/muse/mcp with 37 tools for Muse images, videos, chat, the agent’s browser and the Library, on your own Muse account, nothing to install.
Prefer REST? Tutorial: How to Generate AI Videos and Images with the Meta Muse API · Code: github.com/useapi/muse-api
See all useapi.net MCP servers on Model Matrix & MCP.
Endpoint and authorization
https://api.useapi.net/v1/muse/mcp
- Transport: Streamable HTTP.
- Listed in the official MCP Registry as
net.useapi/muse, so MCP clients and directories that read the registry can find it by that name. - Authorization: your useapi.net API token in the
Authorization: Bearer …header, see Setup useapi.net. The Claude app and ChatGPT sign in with OAuth instead, see Use it in the Claude app or ChatGPT. - You need at least one Muse account added with Setup Muse. Adding and removing accounts is not available over MCP: use POST /accounts or the Setup Muse page.
Setup
Replace YOUR_API_TOKEN with your useapi.net API token.
Claude Code
claude mcp add --transport http useapi-muse https://api.useapi.net/v1/muse/mcp --header "Authorization: Bearer YOUR_API_TOKEN"
Cursor
In ~/.cursor/mcp.json:
{
"mcpServers": {
"useapi-muse": {
"url": "https://api.useapi.net/v1/muse/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
VS Code
In .vscode/mcp.json:
{
"servers": {
"useapi-muse": {
"type": "http",
"url": "https://api.useapi.net/v1/muse/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Windsurf and other clients
Any client that supports remote MCP servers over HTTP with custom headers works. The usual JSON shape:
{
"mcpServers": {
"useapi-muse": {
"serverUrl": "https://api.useapi.net/v1/muse/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Some clients name the address field url instead of serverUrl.
Test it with curl
curl -s https://api.useapi.net/v1/muse/mcp \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
curl -s https://api.useapi.net/v1/muse/mcp \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
The first call answers with the server’s name useapi-muse and its instructions for the assistant, the second with the 37 tools.
Use it in the Claude app or ChatGPT
The Claude app (claude.ai and Claude Desktop) and ChatGPT can add this server as a custom connector. They sign in with OAuth: you give the app the URL, it opens a useapi.net page, and you paste your useapi.net API token there once. Both work on their Free plans. The API-token setups above for Claude Code, Cursor, VS Code and other clients keep working as before.
https://api.useapi.net/v1/muse/mcp
Claude app
- Open Settings → Connectors and click Add custom connector.
- Enter a name, for example
useapi Muse, and the URL above, then click Add. - Click Connect. Claude opens the useapi.net sign-in page.
- Paste your useapi.net API token and click Allow.
Claude asks before each tool call unless you choose Always allow. The Free plan allows one custom connector.
ChatGPT
- Open Plugins, click Add and choose Add custom MCP server.
- Enter a name and the URL above, and set Authentication to OAuth.
- Tick ChatGPT’s “I understand and want to continue” box, then click Create as a plugin.
- Click Connect. ChatGPT opens the useapi.net sign-in page.
- Paste your useapi.net API token and click Allow.
ChatGPT asks you to confirm each tool call that creates or changes something. The Free plan works without developer mode (as of October 25, 2026).
How the sign-in works
- Your API token is in your welcome email, see Setup useapi.net. The useapi.net page links there too.
- Each connection is for one MCP server. Connect each server you want to use on its own.
- The app gets an access token that lasts 1 hour and renews it on its own. A connection you don’t use for 90 days lapses, and you connect again.
- Resetting your API token disconnects every app connected with it.
- Small images and text documents show right in the app, and every file’s
assetIdcan go into the next job or chat. Files come back as download links that work in your browser without sign-in for 1 hour. A list carries links for its first 20 files, andmuse_get_assetgives the link for any other.
Tools
Most tools take an optional email, the Muse account to use. It can be left out when the API token has one Muse account.
Accounts and permissions
| Tool | What it does | Main parameters |
|---|---|---|
muse_list_accounts | Lists your Muse accounts with health, maxJobs, weekly usage and top-up tokens, as last read. | |
muse_get_account | Reads one account with its live weekly usage and top-up tokens. | email |
muse_update_account | Sets maxJobs, the image and video jobs an account runs at once. It doesn’t sign in. | email, maxJobs |
muse_reset_account | Resets the account to a fresh agent computer, deleting everything on it. In two steps: without confirm it only returns the warning to show you, and it resets only when called again with confirm set to the account email you typed. | email, confirm |
muse_list_approvals | Lists the agent’s permission requests across all chats, pending and decided. | email, status, limit |
muse_get_permissions | Reads whether the agent asks before acting on websites and connected apps, and the standing rules. | email |
muse_set_permission_defaults | Sets web and connectors to auto_allow or always_ask. | email, web, connectors |
muse_set_permission_rule | Changes one rule to allow, ask or deny. | permissionId, mode |
muse_delete_permission_rule | Removes one rule. | permissionId |
Images and videos
| Tool | What it does | Main parameters |
|---|---|---|
muse_generate_image | Makes one image from a prompt, optionally from up to 9 input images. | prompt, image_1..image_9, email |
muse_generate_video | Makes one video of about 10 seconds with sound, from a prompt and optional input images, videos and audio. | prompt, image_1..image_9, video_1..video_3, audio_1..audio_3 |
muse_get_job | Reads a job, and with wait: true waits for it to finish. | jobid, wait, history |
muse_list_jobs | Lists the jobs running now. |
The job tools also take replyRef, your own reference echoed back in the job record.
Chat
| Tool | What it does | Main parameters |
|---|---|---|
muse_chat | Sends a message to the Muse agent and returns its answer: text, files, widgets and permission requests. Without chatId it starts a new chat. | message, chatId, files, email |
muse_get_chat | Reads a chat. With wait: true it follows the running answer and returns the rest. | chatId, wait, after, limit, before |
muse_list_chats | Lists the account’s chats, newest first. | email, limit, cursor |
muse_delete_chat | Deletes a chat. Its files stay. | chatId |
muse_cancel_chat | Stops the answer Muse is working on. | chatId |
muse_list_streams | Lists the chat streams open on an account against its limit. | email |
muse_answer_approval | Answers a permission request with allow_once, allow_always or deny, then follows the chat and returns the answer together with the agent’s continuation. | chatId, approvalId, decision, wait |
muse_answer_widget | Answers a quick-reply widget with an option index or your own text, then follows the reply. | chatId, widgetId, option or text, wait |
The agent’s browser
| Tool | What it does | Main parameters |
|---|---|---|
muse_get_browser | Reads a browser the agent opened in a chat: status, page, who has control, and whether it can be watched. | chatId, taskId |
muse_open_browser_viewer | Returns a single-use link to a live view of the browser, to watch it or take control. | chatId, taskId, mode, ttl, quality, compression |
muse_revoke_browser_viewers | Ends every live view of the browser. | chatId, taskId |
muse_release_browser | Gives control of the browser back to the agent. | chatId, taskId |
muse_stop_browser | Closes the browser. | chatId, taskId |
See the Live Browser Guide.
Library
| Tool | What it does | Main parameters |
|---|---|---|
muse_list_assets | Lists the account’s whole Library, newest first: images, videos and audio, documents, web apps (with shareUrl when published) and podcasts. Says when the list may be incomplete. | email, type, origin, limit, cursor |
muse_upload_asset | Uploads an image, video or audio file from a public https URL, up to 50 MB. | url, email |
muse_get_asset | Returns an image of up to about 1 MB as an image, a text document or web app of up to 256 KB as text, or else the file’s type, size and download URL. part=cover gives a podcast’s cover, format=pdf a document as PDF. | assetId, part, format |
muse_delete_asset | Deletes a Library item: a media file, a document, a web app or a podcast. | assetId |
muse_share_web_app | Publishes a web app on a public link. Muse reviews it first and can refuse, listing the issues it found. | assetId |
muse_unshare_web_app | Stops sharing a web app. The app stays in the Library. | assetId |
Workspace files
| Tool | What it does | Main parameters |
|---|---|---|
muse_list_files | Lists a folder of the account’s workspace, or one file. | email, path |
muse_search_files | Finds files by part of the name and/or extension. | name, extensions, path, limit, offset |
muse_read_file | Returns a text file of up to about 200 KB as text, or an image of up to about 1 MB as an image. | path |
muse_write_file | Writes a file into the workspace, as text or base64, for the agent to use in a chat. | path, content or contentBase64, contentType |
muse_delete_file | Deletes a file. | path |
The full input schema of every tool comes from tools/list.
Long-running work
MCP clients usually give up on a tool call after about a minute, so a tool waits up to about 50 seconds:
- An image or a short answer usually finishes in that time, and the tool returns the result.
- A video usually takes longer.
muse_generate_videothen returns thejobid, andmuse_get_jobwithwait: truepicks it up. - A chat answer that is still running returns its
chatIdwithstatus: "running"and alastEventId.muse_get_chatwithwait: trueandafterset to thatlastEventIdreturns the rest.
Clients that ask for progress notifications get one about every 10 seconds while a tool waits. Results show up to two small images as previews, and every file comes with its assetId and download URL.
When a chat answer returns status: "waiting_for_approval", the agent waits for your permission: the assistant should ask you, then answer with muse_answer_approval.
muse_reset_account never resets on its first call. It returns a warning for the assistant to show you, and resets only when you type the account email and the assistant calls it again with that email as confirm. If the reset call errors or times out, it may still have run: check the account before calling it again.
Example prompts
- “Make a 10-second video of a corgi surfing at sunset, in exactly 9:16 aspect ratio.”
- “Make an image of a vintage motorcycle on wet cobblestones at night, then animate it into a video.”
- “Ask Muse to research the top 5 electric cars of 2026, write a comparison table as a CSV, and give me the files.”
- “Upload this photo from its URL and restore and colorize it.”
- “List my Muse chats and continue the newest one: ask for a shorter version.”
- “Ask Muse to open example.com in its browser, then give me a live view link so I can take control.”
- “List the web apps in my Muse Library and publish the newest one.”
Limits and notes
- The tools use your Muse account, its weekly Muse allowance, and the same rules as the REST API, such as
maxJobsfor jobs. - Before some actions, such as reaching a website or acting in a connected app, the agent asks for permission. See GET /accounts/
email/permissions to change when it asks. - Custom connectors on claude.ai need OAuth sign-in, which this server does not support yet. Use Claude Code or another client that can send an
Authorizationheader. - A client may send up to 20 JSON-RPC requests in one batch.
- If the client sends an
MCP-Protocol-Versionheader, it must be one of the supported versions:2025-06-18,2025-03-26or2024-11-05. - Every tool call shows in your usage stats (
bot=muse) as modelmuse-mcp, with the tool name as its status, orfailed.
Tutorials for the Muse API:
- Is There a Meta Muse Video API? Official API, Free Tools and a Hosted API (2026)
- How to Generate AI Videos and Images with the Meta Muse API
- Chinese-language tutorial (中文教程): AI images and videos with dialogue
{ "@context": "https://schema.org", "@type": "APIReference", "name": "Muse MCP Server: Meta Muse Video, Images and Chat, Hosted", "url": "https://useapi.net/docs/api-muse-v1/mcp", "inLanguage": "en", "isAccessibleForFree": true, "description": "Connect the Claude app, ChatGPT, Claude Code or any MCP client to the hosted useapi.net Muse MCP server: 37 tools for Muse images, videos, chat and the agent's browser.", "about": "Muse API", "isPartOf": { "@type": "APIReference", "name": "Muse API" }, "publisher": { "@type": "Organization", "name": "useapi.net", "url": "https://useapi.net", "logo": { "@type": "ImageObject", "url": "https://useapi.net/assets/brand/useapi-logo-512.png" }, "alternateName": ["useapi", "UseAPI"], "sameAs": ["https://discord.gg/w28uK3cnmF", "https://t.me/use_api", "https://github.com/useapi", "https://bsky.app/profile/useapi.net", "https://www.youtube.com/@useapi-net"], "foundingDate": "2023-08" }, "documentationOf": { "@type": "WebAPI", "name": "useapi.net REST API", "documentation": "https://useapi.net/llms.txt", "termsOfService": "https://useapi.net/docs/legal" } }
{ "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://useapi.net/" }, { "@type": "ListItem", "position": 2, "name": "Muse API", "item": "https://useapi.net/docs/api-muse-v1" }, { "@type": "ListItem", "position": 3, "name": "MCP Server", "item": "https://useapi.net/docs/api-muse-v1/mcp" } ] }