LiveSwapFace public information MCP server
# LiveSwapFace public information MCP server
A small, read-only [Model Context Protocol](https://modelcontextprotocol.io/) server for the public [LiveSwapFace](https://liveswapface.com/) website. It lets an MCP client read selected official pages, retrieve official links, and estimate credits for a planned browser session using rates fetched from the site at call time.
It **does not** perform face swaps, access a camera, upload photos, sign in, purchase credits, or use a private LiveSwapFace API. It sends no user media or credentials to the website. Use a subject's likeness only with permission.
## Requirements and installation
Node.js 20.18.1 or newer. From this repository:
```sh
npm ci
npm run build
```
Add this server to an MCP client as a local stdio process:
```json
{
"mcpServers": {
"liveswapface-public-info": {
"command": "node",
"args": ["/absolute/path/to/liveswapface-mcp/dist/index.js"]
}
}
}
```
## Tools
- `read_official_page`: read one of `home`, `pricing`, `virtualTryOn`, `terms`, `privacy`, or `contact` from the official domain. Output is limited to 16,000 characters.
- `estimate_session_credits`: estimate credits for a specified effect, model, and duration. It fetches current public rates and refuses to estimate when the rate wording cannot be parsed.
- `get_official_links`: list the fixed official routes used by the server.
The server only fetches allowlisted pages under `https://liveswapface.com/` and times out after 12 seconds. Pricing and features can change; check the product's displayed rate before starting a paid session.
## Develop
```sh
npm run build
npm test
npm run dev
```
Standard output is reserved for MCP messages. This project uses the [official TypeScript MCP SDK](https://github.com/modelcontextprotocol/typescript-sdk).
## License
MIT; see [LICENSE](LICENSE).
TDQS
Scored across 3 tools
Each tool has a discernible role: reading page text, estimating session credits, and listing official routes. read_official_page and get_official_links slightly overlap since both expose official site structure, but the description clarifies one returns text and the other returns route URLs.
All three tools follow a consistent snake_case verb_noun pattern (read_, estimate_, get_). The verbs vary but map naturally to each action, and there is no mixing of casing or styles.
Three tools is on the low end but appropriate for a deliberately narrow, read-only public information server with no account or media operations. Nothing feels redundant or padded.
The surface covers the stated scope: discovering official routes, reading their content, and estimating session cost. Minor gaps exist (no explicit list/search of allowlisted pages, and route enumeration doubles as discovery), but agents can work around these via get_official_links.