NanoClaw by NanoCo
NanoClaw posts, and the key stays outside
NanoClaw runs each agent group in its own container. Add BuzzTake to the groups that need it, and let the OneCLI vault add the key to each request, so neither the model nor the container holds it.
- Connects through
- Remote MCP, key from OneCLI
- Add it with
ncl groups config add-mcp-server- Transport
- Streamable HTTP over HTTPS only
- Schedules
ncl tasks create --recurrence
What NanoClaw can do in your social accounts
NanoClaw gives each agent group its own container, with only the mounts and servers you give it. ncl groups config add-mcp-server adds BuzzTake to one group; the others never see it.
OneCLI is an HTTPS proxy that adds a stored secret to requests for a host that matches. Store the BuzzTake key there for mcp.buzztake.com with the header Authorization and the format Bearer {value}.
Tasks run on a schedule and deliver to a channel such as Signal or Telegram. A weekday task that reads your notifications and messages you only when something needs an answer fits the model well.
NanoClaw does not say that its built-in MCP client sends traffic through the OneCLI proxy. Check that the first call reaches BuzzTake with an Authorization: Bearer header; if not, use the mcp-remote route below.
It works on Bluesky, Mastodon, X and Instagram, and on every other platform BuzzTake connects. Each action is one tool, named as in the actions reference.
Jobs for NanoClaw
Say it in plain words. These are prompts that work, and the calls they make.
Ask what came in, from Signal
You ask in Signal; the agent reads your notifications on two platforms and answers with the ones that matter.
@Andy what did people ask us on Bluesky and X today?
2 × read_notifications8 credits ($0.08)A weekday check that stays quiet
A task reads the Instagram inbox at 9:00 and messages you only when a customer waits for an answer.
Every weekday at 9:00, read my Instagram conversations with BuzzTake. Message me on Signal only when a customer waits for an answer.
1 × list_conversations, 2 × read_conversation12 credits ($0.12)Post an update you dictate
You send the text in chat; the agent posts it to Mastodon and Bluesky and replies with the links.
@Andy post to Mastodon and Bluesky: Our office is closed on Friday for the move.
2 × post20 credits ($0.20)
Set up NanoClaw
Each agent group gets its own servers. Add BuzzTake only to the groups that need it. Make a BuzzTake key under Developers first.
Install NanoClaw
Skip this when it is installed.
Terminal git clone https://github.com/nanocoai/nanoclaw.git nanoclaw-v2 cd nanoclaw-v2 && bash nanoclaw.shStore the key in OneCLI
The secret is added only to requests for the BuzzTake MCP host, in the header BuzzTake reads.
Terminal onecli secrets create --name BuzzTake --type generic --value "$BUZZTAKE_API_KEY" \ --host-pattern mcp.buzztake.com --header-name Authorization --value-format 'Bearer {value}'Give the secret to the agent
This adds one secret and keeps the others the agent has.
Terminal onecli agents grants attach-secret --id <agent-id> --secret-id <secret-id>Add the server and restart the group
Do not edit
groups/<folder>/container.json: NanoClaw writes it again at each start.Terminal ncl groups config add-mcp-server --id <group-id> --name buzztake --url https://mcp.buzztake.com/mcp ncl groups restart --id <group-id>Ask
Start with a read in the group's channel.
Message @Andy which BuzzTake accounts do I have?
Ways to connect NanoClaw
The routes that reach BuzzTake from NanoClaw, and how well each one fits.
- Remote MCP, API keyBest fit
The key from the OneCLI vault, added on the way out. The model and the container never hold it.
- Remote MCP, OAuth sign-inDoes not work
NanoClaw does not document OAuth for MCP servers.
- Local stdio bridgeNot tested
NanoClaw's own skills use
mcp-remote --enable-proxyas a local server, which sends its traffic through OneCLI. Not tested with BuzzTake.- REST APINot tested
curl inside the container, through the OneCLI proxy. Not tested.
What it costs
BuzzTake charges in prepaid credits for the actions it runs. One credit is one US cent.
| Job | Credits | USD |
|---|---|---|
| Ask what came in, from Signal | 8 | $0.08 |
| A weekday check that stays quiet | 12 | $0.12 |
| Post an update you dictate | 20 | $0.20 |
A post, a quote or a message is 10 credits, a reply 8, a like or a follow 3, and a read or a search 4. A planned post costs nothing until it goes out. Reads are charged when they succeed, and a write that fails before the page changes is refunded.
NanoClaw's model use is billed by the model provider you set up, not by BuzzTake. Every price is on the pricing page, and the rules are in Credits.
Approvals and safety
A person can approve before anything goes out, and every action is recorded.
When the agent adds an MCP server by itself with add_mcp_server, an approver gets a card in a direct message and decides.
For posts, a key without content_publish keeps the agent to reads and drafts, and a reviewer approves each draft in BuzzTake.
- Ask for drafts when a person must check first.
create_contentputs the post on the calendar,submit_for_reviewsends it to a reviewer, and it goes out only after the approval. - Give the agent an API key without the
content_publishpermission. It can then plan drafts and send them for review, and it cannot post by itself. - BuzzTake records every action: who asked, through which key, on which account, what the page returned and what it cost.
- A sign-in step that BuzzTake cannot finish, such as a 2FA code, becomes a challenge. The agent asks you for the code, or gives you a link to a live browser where you answer it.
- Only an owner or an administrator can allow an OAuth client. Disconnect it under Developers in the app, and its token stops working.
More in Approvals and Reports and audit.
Limits
- A task with no
--scriptgate may run at most four times in 24 hours. Name the delivery channel in the task's prompt. add-mcp-serveraccepts streamable HTTP over HTTPS only; SSE is refused.- An action tool waits up to 120 seconds for its result. A longer action comes back with its id, and
get_actionfollows it to the end. - The MCP server runs up to 8 requests at a time for one key or sign-in. Above that it answers 429 with
Retry-After, and the client tries again. - One organization connects up to 200 accounts.
- The platforms set their own pace. When one asks an account to slow down, the action ends with
rate_limited, and a write that failed before the page changed is refunded.
Troubleshooting
Every error code and its fix is in Errors and challenges.
- The first call gets a 401
- The request left without the key. Check the secret's host pattern and header, and that it is attached to the agent. If the built-in client skips the proxy, use
mcp-remote --enable-proxy. - A daily task was refused
- It runs more than four times a day without a gate. Add a
--scriptgate, or run it less often. - The client says the server refused the token (401)
- The sign-in expired or was revoked, or the API key is wrong. Sign in again from the client, or make a new key under Developers.
- An action stops at
needs_input - The platform asked for a code. Give the code to the agent so it calls
answer_challenge, or open the challenge'ssign_in_urland answer in the live browser. - The answer is
insufficient_credits - The balance is lower than the price, and nothing was queued. A post needs 10 credits. Top up, then ask again.
- The answer is
unsupported - The platform has no such action. The error lists the actions it has, and the generic
browseraction can do the rest step by step. - An account shows
signed_out - Its session ended and no stored password could sign it in again. Ask the agent for a sign-in link with
get_sign_in_linkand open it, or reconnect the account in the app.
NanoClaw questions
- Can NanoClaw post to social media?
- Yes. With BuzzTake added to an agent group, the agent posts, replies and reads your accounts on 12 platforms from its container.
- Does the model see the BuzzTake key?
- No, when OneCLI adds it. The key stays in the OneCLI vault and is added to requests for the BuzzTake host on their way out of the container.
- Does NanoClaw support OAuth for BuzzTake?
- NanoClaw does not document OAuth for MCP servers. Use an API key from the OneCLI vault.
Related agents
All AI agents, the MCP server docs, the quickstart, and the platforms: Bluesky Mastodon X Instagram
Give NanoClaw your social accounts.
Add an account with a password, cookies or a sign-in link, then connect the MCP server and ask.
