liveface-mcp: Liveface for AI agents
An MCP server for Claude Code, Claude Desktop and Codex. Inside the chat, the studio lets you choose an avatar and a voice, write a line and get a video of the avatar saying it, or make a new avatar from a photo, once you have connected your Liveface account. Without an account, shared avatars still speak in a browser window.
Install
With uv nothing needs installing first. In Claude Code:
claude mcp add liveface -- uvx liveface-mcp
or in the MCP config of Claude Desktop or Codex:
{
"mcpServers": {
"liveface": {
"command": "uvx",
"args": ["liveface-mcp"],
"env": { "LIVEFACE_CLIENT_NAME": "Claude Desktop" }
}
}
}
Or install it with pipx install liveface-mcp (or pip install liveface-mcp)
and use the liveface-mcp command. Python 3.10 or later.
Connecting your account
Ask for the studio and press Connect your account (or, in a terminal,
ask the agent to connect_account). A page of the dashboard opens with a code;
sign in as usual, check the code is the one the app shows, and press
Approve. That is the device sign-in of docs/connected-apps.md: the app
never sees your password, gets a session limited to avatars, their creation
and speech (never members, keys, deleting, or settings), keeps it in
~/.liveface/mcp-credentials.json (readable by you only), and is cut off at
once when you disconnect it in the dashboard's Settings, under Connected apps.
Configuration
| Variable | Meaning |
|---|---|
LIVEFACE_BASE |
The site. Default https://liveface.io. |
LIVEFACE_CLIENT_NAME |
How this app names itself when asking to connect. |
LIVEFACE_CREDENTIALS |
Where the session is kept. Default ~/.liveface/mcp-credentials.json. |
LIVEFACE_AVATARS |
Shared avatars, no account needed: name=token pairs (a share link's token). |
The studio (an MCP app)
avatar_studio() returns a page the host draws inside the chat
(ui://liveface/studio.html, text/html;profile=mcp-app):
- Library. Your avatars as cards (and the shared ones), a voice (every
server voice, grouped by provider), the line (
[happy],[sad]... tags change the face), Create video: the page runs the avatar engine, has the avatar say it and records picture and voice into an MP4 (WebM where the browser writes nothing else) to play or download. A browser voice cannot be recorded, so an avatar on one is said in a server voice, and the page says which. - New avatar. A person (woman, man) or an animal, the photo, the style
(the dashboard's own pictures), the pose, the image service, the voice
(one that suits the person), a name, and the agreements in the dashboard's
own words. The wizard's steps run on this server (
creation.py), with progress; the new avatar is then chosen in the library. When its face's points cannot be found (the dashboard has the person place them by hand), the picture is made once more, then Finish in the dashboard opens the wizard where the avatar is waiting. - The page holds no account token: it asks this server through the host, and the server calls the site. Its CSP lets it reach the site only.
- It needs a host that draws MCP apps. Elsewhere the tools still answer in
text, and
speakopens its browser window.
Tools
The model's: avatar_studio, connect_account, account_status,
disconnect_account, list_avatars, speak(text, avatar), stop.
The page's own (hidden from the model): studio_*.
Licence
Proprietary: free to use with your own Liveface account. See the LICENSE
file in the package.
Metadata
Release files for liveface-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| liveface_mcp-0.1.0.tar.gz | 612.2 kB | Without provenance | Details for liveface_mcp-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| liveface_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for liveface_mcp-0.1.0-py3-none-any.whl |
Total release size: 1.2 MB
Release files / liveface_mcp-0.1.0.tar.gz
| Download URL | liveface_mcp-0.1.0.tar.gz |
|---|---|
| Size | 612.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
76d17ae48526678783f864a8a2a10e4a60471c62ce6e774f2d511dc9bc8a28e5
|
|
BLAKE2b-256 checksum How to use checksums |
3ade618e6e95d42b02b8d8d1a9cd96f7c8ca4a0b8e9610fd2197d7c676555b07
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / liveface_mcp-0.1.0-py3-none-any.whl
| Download URL | liveface_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 610.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f48e5f77b9fbc6185d700b814d64a2f1dc981ba3fa2a7f9d1016a9307c8e7a49
|
|
BLAKE2b-256 checksum How to use checksums |
4d88d2e6d81beb094f0d17df4c5605503ae94b1a650177313c569f3715730c5c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for liveface-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.