Claude and Codex
Use your Sokko workspace from Claude Code, Codex CLI, Cursor, claude.ai, Claude Desktop or ChatGPT: create agents, hand them tasks, and share your memory and skills.
Sokko has an MCP server for your own AI client. Connect it once, and the model in Claude Code, Codex CLI, Cursor, claude.ai, Claude Desktop or ChatGPT can list and create your agents, hand a task to an agent and read its answer, import your memory and skills into Sokko, and recall what Sokko Memory knows.
The connection acts as you, in one workspace, with your role. There are two ways to connect:
- An API key, for Claude Code, Codex CLI and Cursor. The key goes in the client's configuration.
- Sign in with Sokko, for claude.ai, Claude Desktop, ChatGPT and
codex mcp login. You approve the app in your browser and pick the workspace. No key to copy.
Connect with an API key
Create an API key
In the dashboard, open Settings and find API keys. Create a key and copy it. You need the owner or admin role to create a key. The key is shown once.
Add the server to your client
Run one of these commands. Replace sk_live_... with your key.
Claude Code
claude mcp add --transport http sokko https://sokko.ai/api/mcp/workspace --header "Authorization: Bearer sk_live_..."Codex CLI
export SOKKO_API_KEY=sk_live_...
codex mcp add sokko --url https://sokko.ai/api/mcp/workspace --bearer-token-env-var SOKKO_API_KEYCursor: add this to .cursor/mcp.json.
{
"mcpServers": {
"sokko": {
"url": "https://sokko.ai/api/mcp/workspace",
"headers": { "Authorization": "Bearer sk_live_..." }
}
}
}Check the connection
Ask your client: "Who am I on Sokko?" It calls sokko_whoami and answers with
your workspace and role.
For a team, put the server in the project's .mcp.json and share the key as the
SOKKO_API_KEY environment variable:
{
"mcpServers": {
"sokko": {
"type": "http",
"url": "https://sokko.ai/api/mcp/workspace",
"headers": { "Authorization": "Bearer ${SOKKO_API_KEY}" }
}
}
}Connect with Sign in with Sokko
In claude.ai, Claude Desktop or ChatGPT, add a custom connector (claude.ai: Settings → Connectors → Add custom connector; ChatGPT: Settings → Connectors → Create) with this URL:
https://sokko.ai/mcpThe app opens a Sokko page in your browser. Sign in, choose the workspace the app may use, and approve. The app is connected for 90 days; after that Sokko asks you to approve again.
For Codex CLI without a key:
codex mcp add sokko --url https://sokko.ai/mcp
codex mcp login sokkoThe browser opens the same approval page.
An app connected this way shows in Settings → Connected apps. Revoke it there to end its access at once. An owner or admin sees and revokes every member's connections; other members see their own.
What the tools do
| Tool | What it does | Who can call it |
|---|---|---|
sokko_whoami | Your workspace, user id and role. | Everyone |
sokko_agents_list, sokko_agent_get, sokko_agent_events | List agents, read one agent with its access URL, read its deployment events. | Everyone |
sokko_agent_create, sokko_agent_wait_ready | Create a personal Hermes agent from a name and a task, then wait until it is ready. | Create: owner, admin |
sokko_agent_ask, sokko_agent_wait, sokko_agent_conversation | Send a message to an agent, wait for the answer, read the conversation. | Everyone |
sokko_agent_action | Suspend, resume, redeploy or delete an agent. | Delete: owner only |
sokko_memory_import | Import markdown memory files into Sokko Memory. Unchanged files are skipped. | Owner, admin |
sokko_memory_recall, sokko_memory_remember | Search Sokko Memory, or save one fact for every agent. | Owner, admin |
sokko_skills_list, sokko_skill_get, sokko_skill_import, sokko_skill_grant | Read the skill library, import a local skill folder, grant a skill to an agent. | Import, grant: owner, admin |
sokko_agent_schedules, sokko_agent_schedule_create, sokko_agent_schedule_delete | Read, create, pause or delete scheduled tasks on a Hermes or OpenClaw agent. | Everyone |
sokko_builder_projects, sokko_builder_create | List your custom agent projects, or create one. | Everyone |
sokko_builder_change, sokko_builder_wait, sokko_builder_diff | Send one instruction to the builder, wait for it, read what changed. | Everyone |
sokko_builder_test, sokko_builder_assess | Try the new revision in a preview and record your verdict on the answer. | Everyone |
sokko_builder_publish | Deploy the project as a live agent, after a test you assessed as passed. | Everyone |
A conversation started from your client shows in the agent's chat in the dashboard, under your name.
Memory tools need the Sokko Memory add-on. Without it they answer with a 402 error and the client tells you to enable the add-on.
Hand a task to an agent
Your client has the handoff prompt. In Claude Code, type /sokko:handoff and
give the task. The model lists your agents, picks one or asks you, sends the task
with sokko_agent_ask, waits with sokko_agent_wait, and reports the answer.
A tool call waits at most 50 seconds. A long task returns status: running with
a turnId. The model calls sokko_agent_wait again until the agent is done. The
agent keeps working between calls.
Import your memory
Your client has the import_memory prompt. In Claude Code, type
/sokko:import_memory. The model reads its own memory files, shows you the list,
and imports them after you confirm:
- Claude Code:
MEMORY.mdand thememory/*.mdfiles of the project, plusCLAUDE.md. - Codex:
AGENTS.md, plus~/.codex/memories/*.mdwhen that folder exists.
Sokko keeps the file names in its memory namespace: MEMORY.md stays MEMORY.md,
CLAUDE.md becomes memory/claude-md.md, and every other file becomes
memory/<file name>. A file whose content did not change since the last import
is skipped, so you can run the prompt as often as you like.
Build a custom agent
The builder tools let your client drive the Sokko builder the way the sokko
CLI does. Each step maps to one thing you would do in the dashboard:
- Create a project. Say "create a custom agent called Support bot". The
model calls
sokko_builder_create. - Describe a change. Say what the agent must do, in one instruction. The
model calls
sokko_builder_changewith your words and what a correct result looks like, thensokko_builder_waituntil the builder has a new revision. One instruction opens one change request. If the builder asks a question, the model shows it to you and sends your reply as the next instruction. - Test it. The model calls
sokko_builder_test, which starts the preview and sends the agent a message. It shows you the agent's answer. If the agent asks something, the model shows the question and sends your answer.sokko_builder_diffshows the files the builder changed. - Say whether it is right. Your words go into
sokko_builder_assessas the verdict. The model must not judge the answer for you. - Deploy. When you say "deploy it", the model calls
sokko_builder_publishwith your words and waits withsokko_builder_waituntil the agent is live. A publish deploys every unpublished change of the project, not only the last one.
Sokko refuses a publish without a test of that revision that you assessed as
passed. The project's saved settings deploy: the connection grants, memory,
CPU and memory limits are not changed from your client. Open the project in the
dashboard (the builderUrl in every answer) to change them.
The builder tools appear only when the builder is enabled for your Sokko deployment, and they need Sokko Credits.
Limits
- One connection is bound to one workspace. Connect a second workspace with a second key and a second server name, or approve the app again and pick the other workspace.
- A client may send 120 requests per minute. Creating an agent, asking an agent, importing memory or skills, and the builder's create, change, test and publish are limited to 20 per minute.
- A Sign in with Sokko connection lasts 90 days. The app then asks you to approve again.
Revoke the key in Settings → API keys, or the app in Settings → Connected apps, to end the connection.