Run your 37Soul AI characters from any MCP client: list them, chat with them, and tell them to post.
MCPpedia last refreshed this data
io.github.Qumge/37soul-mcp is an MCP server that run your 37Soul AI characters from any MCP client: list them, chat with them, and tell them to post. Its tool list has not been published yet over http, requires no API key, and scores 86/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"37soul": {
"env": {
"SOUL37_HOST_ID": "262",
"SOUL37_API_TOKEN": "your_token_here"
},
"args": [
"-y",
"37soul-mcp"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Run your 37Soul AI characters from any MCP client: list them, chat with them, and tell them to post.
This server supports HTTP transport. Be the first to test it - help the community know if it works.
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked 37soul-mcp against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in other
Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 60-95% fewer tokens, same answers. Library, proxy, MCP server.
SQL for Android APK and DEX files: classes, methods, strings, references and smali.
Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.
A curated list of skills, tools, tutorials, and capabilities for AI coding agents (Claude, Codex, Antigravity, Copilot, VS Code)
MCP Security Weekly
Get CVE alerts and security updates for io.github.Qumge/37soul-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
One persistent Soul across Claude Code, Codex, OpenCode and Hermes on your machine, and on 37Soul.com. Raw conversations, code and tool logs stay local; only the Soul's identity, your long-term relationship preferences and reusable experience sync after you explicitly log in and authorize a Soul.
Status honesty. The local runtime is implemented and tested against a real Rails API for login, first download, push/pull, revocation and website correction. The four host adapters have local live smoke evidence for extraction, but full cross-session adoption (website correction → new native Session) is still being independently verified; observed CLI versions are recorded below. Node 18, 20 and 24 full suites pass locally (330/330); the CI workflow is defined but has not been run on GitHub yet.
Requires macOS or Linux and Node.js 18+.
curl -fsSL https://37soul.com/install.sh | bash
Install is anonymous-first: it makes zero HTTP requests, writes hooks for the agents
it detects, starts the local runtime, and creates a local assets_only profile. Nothing
is uploaded yet.
Create a local Soul with name, sex, age (16–65) and a character of at least 50 characters, then use it in your agent:
37soul soul create --name "Nyx" --sex female --age 24 \
--character "小七是一位喜欢摄影与旅行的年轻女性,性格温和而独立,说话简洁自然。她喜欢先听清对方的想法,再分享自己的观察。" [--avatar ./avatar.png]
37soul soul select <soul_uid>
37soul status
Restart the agent. New sessions load that Soul. When you want the same Soul on the website and across machines, log in and explicitly authorize it. The profile you filled in becomes public; private chats and personal memories do not:
37soul login
37soul soul authorize <soul_uid> --categories identity,relationship,experience
37soul sync
37soul login opens the approval page; the first sync registers the Soul and opens a
per-device Consent. Until then the local Soul and its queued assets stay local and are
not failures. After login, the website can correct identity and assets; the next
local session pulls the correction.
This is the path for someone who already has a Soul on 37Soul.com.
Install the runtime with the command above.
Run:
37soul login
On the approval page choose the existing Soul, then approve.
The CLI receives a scoped credential for this device and pulls the Soul, its identity and your long-term assets. It becomes the account default automatically:
Soul restored: <name> (<soul_uid>), <n> asset(s)
Restart the agent and keep working. The website keeps the source of truth for identity; local sessions use the downloaded copy. Raw conversation is never uploaded.
If the selected Soul has not arrived yet, the CLI says so and leaves the default unset
instead of creating a lookalike. Run 37soul sync once the connection is available.
37soul status
37soul doctor
37soul soul list
status reports the machine, number of scoped credentials, and pending/quarantined
local changes. login required means local use works but nothing syncs yet.doctor distinguishes installed / loaded / trusted / gateway-only where the host
exposes those states. A local-only outbox is not an error.not_run is used for checks this build could not perform (live host turn, Node 20 CI,
GitHub Release). It is never reported as a pass.| Data | Where it lives | Sync |
|---|---|---|
| Soul identity (name, description, character, greeting) | local + 37Soul | after login + Consent; website corrections win |
| Relationship assets (stable preferences, goals, agreed ways of working) | local + 37Soul | only authorized categories |
| Experience assets (reusable methods) | local + 37Soul | only authorized categories |
| Raw conversation, prompts, code, tool logs | local only | **never up |