Local is private inference on open-weight models. Your prompts run in a TEE on open models, nothing is logged or retained. Use it from the browser, the API, or via MCP.
An account is a single random code, hashed server-side — we store the hash, never the code, and can't recover it. No email, no profile. Chat memory lives only in your browser. Prompts and completions are not written to disk. There is no history endpoint because there is no history.
Open-weight lanes, served privately (TEE): DeepSeek-V3.2, GLM-5 / GLM-5.1, Gemma-4, Kimi-K2.5 / K2.6, and more. GET /v1/models for the live list.
Base URL: https://api.trylocal.xyz. Create an account, then call chat completions with the code as a Bearer token.
# 1) create an anonymous account → one-time code curl -X POST https://api.trylocal.xyz/v1/account/create # 2) list models curl https://api.trylocal.xyz/v1/models -H "Authorization: Bearer $CODE" # 3) private chat completion curl https://api.trylocal.xyz/v1/chat/completions \ -H "Authorization: Bearer $CODE" -H "Content-Type: application/json" \ -d '{"model":"deepseek-ai/DeepSeek-V3.2-TEE", "messages":[{"role":"user","content":"hello"}]}'
It's OpenAI-compatible, so most SDKs work by pointing base_url at https://api.trylocal.xyz/v1 and using your code as the key.
Drive Local from Claude Code and other MCP clients — private inference your agents can call.
curl -O https://trylocal.xyz/local-mcp.mjs claude mcp add local -s user -e LOCAL_CODE=<code> -- node ./local-mcp.mjs
Tools: local_create_account, local_models, local_chat, local_account. See /mcp.