Install
$ agentstack add mcp-wolfe-jam-grok-faf-voice ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README — it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming — see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps — measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
grok-faf-voice
[](https://www.iana.org/assignments/media-types/application/vnd.fafm+yaml) [](https://doi.org/10.5281/zenodo.20348942)
Home: faf.one/voice Live demo: faf-voice.vercel.app
[](https://pypi.org/project/grok-faf-voice/) [](https://pypi.org/project/grok-faf-voice/) [](https://github.com/Wolfe-Jam/grok-faf-voice/blob/main/LICENSE) [](https://github.com/Wolfe-Jam/grok-faf-voice/actions/workflows/ci.yml)
Voice agents that remember.
The Voice Memory Layer (VML) for Grok Voice. .fafm 🐘🎙️ LiveKit enabled.
> Two profiles, one .fafm format. This is the voice profile (the Voice > Memory Layer). For the knowledge profile — typed, cross-linked agent memory — > see claude-fafm-sdk.
The Fast⚡️AF memory setup
pip install grok-faf-voice
from grok_faf_voice import VoiceAgent
VoiceAgent().run()
That's it. First run, your agent gets a namepoint — your @handle for FAF memory. Auto-generated free, no email needed. Want a branded handle tied to your email (or your X username)? Claim one anytime at mcpaas.live/voice/setup — one per valid email address.
What you need
- Python 3.10+
- An
XAI_API_KEY— get one at x.ai/api
That's it. Namepoint and Voice key are provisioned for you.
Run it:
python my_bot.py console
console mode talks locally — no LiveKit cloud needed. Deploy to LiveKit later via python my_bot.py start.
How it works
- The agent listens via xAI realtime — five built-in voices: Ara · Eve · Leo · Rex · Sal
- Every session opens already remembering what was etched in past ones
- At session end, new memories consolidate silently
- Cross-session, cross-device, cross-model — your namepoint is the address
Voice swappable, memory permanent. ElevenLabs and Hume land in upcoming releases.
Custom Voices
xAI shipped Custom Voices on 2026-05-01. We shipped support 48h later.
from grok_faf_voice import CustomVoiceClient, VoiceAgent
# Clone a voice from a 90-120s WAV sample
cv = CustomVoiceClient() # uses $XAI_API_KEY
voice = cv.create_voice("sample.wav", name="My Clone", language="en")
# Use the cloned voice in your agent — same two-line shape
VoiceAgent(voice=voice["voice_id"]).run()
Custom voice IDs (8-char lowercase alphanumeric, e.g. nlbqfwie) flow through VoiceAgent(voice=...) unchanged. The 30 free voices via console.x.ai work too — paste the voice_id and go.
Local souls (.fafm files)
Read and write souls straight off disk — no MCPaaS, no API key. Great for inspection, tests, backups, and loading souls written by other FAF-family tools (cross-vendor interop).
from grok_faf_voice import FAFMemory
# Load a .fafm soul from disk (any profile — voice or knowledge)
mem = FAFMemory.from_file("soul.fafm")
body = await mem.get() # the soul body
recall = await mem.recall_for_prompt() # ready for the prompt
# Write it back out (byte-identical roundtrip)
await mem.to_file("backup.fafm")
# Typed views — no manual parsing (v0.3.1)
mem.profile # "voice" | "knowledge"
mem.facts # parsed list of memory facts
mem.index # top-level index (knowledge profile)
.fafm is the IANA-registered FAF Memory format (application/vnd.fafm+yaml). Validate documents against the published JSON Schema.
Want more?
| | | |---|---| | Claim your branded @handle | mcpaas.live/voice/setup | | Advanced setup — FAFMemory, FAFContext, custom ledgers, env-var configuration, retention tiers | mcpaas.live/voice/about | | Source + issues | github.com/Wolfe-Jam/grok-faf-voice | | Contribute | [CONTRIBUTING.md](./CONTRIBUTING.md) |
Citation
If you use grok-faf-voice or the .fafm format in research or production, please cite the format paper:
> Wolfe, J. (2026). Permanent Memory and Instant Recall: The .fafm Standard for Multi-Profile AI Agent Memory. Zenodo. https://doi.org/10.5281/zenodo.20348942
BibTeX
@article{wolfe2026fafm,
title = {Permanent Memory and Instant Recall: The .fafm Standard for Multi-Profile AI Agent Memory},
author = {Wolfe, James},
year = {2026},
month = {may},
publisher = {Zenodo},
doi = {10.5281/zenodo.20348942},
url = {https://doi.org/10.5281/zenodo.20348942}
}
> We are the Open-Ended answer to Voice memory, and don't you Forget It. We won't.
.fafm 🐘🎙️ · application/vnd.fafm+yaml (IANA registered) · part of the FAF.one family · MIT licensed
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Wolfe-Jam
- Source: Wolfe-Jam/grok-faf-voice
- License: MIT
- Homepage: https://faf.one
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.