Connect your agent
logMcp is log's MCP server. It gives your agent every log command as a tool. The installer puts it on your PATH next to log.
Claude Code
claude mcp add log -- logMcpYou add it once. logMcp reloads its own code whenever log changes, so you never restart Claude Code for new code (rule 167):
- It waits until no call or job is running, swaps the server underneath, and tells Claude Code the tools changed.
- A tool added since the session started is always reachable through
logCall. LOG_MCP_RELOAD=offturns this off.
Codex
codex mcp add log -- logMcpCursor
In ~/.cursor/mcp.json (or .cursor/mcp.json in a project):
{
"mcpServers": {
"log": { "command": "logMcp" }
}
}Any other MCP client
Run logMcp as a stdio server, with no arguments. It reads your settings from ~/.logCli/.env, like log does.
Over HTTP
For a client that can't start a process, serve the tools over HTTP:
logMcp --http --port 7337
claude mcp add --transport http log http://127.0.0.1:7337/mcp--host and --port change where it listens. Off your own machine (not 127.0.0.1) it won't start without a token: set LOG_MCP_TOKEN in ~/.logCli/.env, and clients send Authorization: Bearer <token>.
First call
Your agent's first call is getGuide({ topic: "logMcpInstructions" }). It lists every use case and how to ask for it. getGuide({ useCase: "<platform>/<page>" }) reads one use case. Every tool's description names its guide, the use cases that call it and the AGENTS.md rules it falls under; AGENTS.md itself is the resource log://agents (MCP server).
Find and run any command
Three tools reach every command, so your agent doesn't have to know which tool to call:
logSearch { "query": "send a dm on x" }finds the commands for a job, in plain words.logGet { "id": "twitter.dm" }gives the command's inputs and a call that works.logCall { "id": "twitter.dm", "inputs": { … } }runs it, through the same checks as the command's own tool.
A command that acts on a platform needs live: true and confirmLive: true. More: the catalog guide.
Watch a long call
Calls that take a while write one line per step to ~/.logCli/mcp/<day>.log. Follow along with:
tail -f ~/.logCli/mcp/$(date -u +%F).logNext: using log well.