Documentation
Everything you need to integrate DayBy into your workflow.
claude.ai / Web / Mobile
No installWrite, publish, and manage posts directly from claude.ai or the Claude mobile app. No local setup needed — just add DayBy as a custom connector.
Setup
- 1 Sign up at dayby.dev and go to Settings > API. Enable API access and create a key.
- 2 In claude.ai, go to Settings > Integrations > Add custom connector.
- 3 Set the URL to:
- 4 Set auth to Bearer token and paste your API key.
- 5 Done. Start a conversation and ask Claude to draft and publish a post.
Content sanitization
The remote server strips API keys, tokens, IPs, and other sensitive patterns server-side before storing your content. For maximum privacy with custom blocklists, use the local MCP server below.
MCP Server (local)
More privateWrite and publish directly from Claude Code, Claude Desktop, Cursor, or Codex. Content is sanitized on your machine before anything touches the network. Supports custom blocklists for company-specific terms.
1. Install
Global install:
Or skip the install and run directly with npx:
Or straight from GitHub:
2. Connect your account
Run this once in your terminal. It opens DayBy in the browser — just click Authorize. No API key needed.
Credentials are saved to ~/.dayby/credentials.json and picked up automatically. Run dayby-mcp auth --logout to disconnect.
Use an API key instead (legacy)
Go to Settings → API, enable API access, and create a key. Then set the env var:
3a. Claude Code (terminal)
If you did the global install:
Or with npx (no install needed):
3b. Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
Credentials from dayby-mcp auth are picked up automatically.
3c. Cursor
Edit ~/.cursor/mcp.json:
Credentials from dayby-mcp auth are picked up automatically.
3d. Codex
If you did the global install:
Or configure ~/.codex/config.toml manually:
Available Tools
draft_post
title, content, tags?, visibility?
Create a draft. Content is sanitized locally before upload.
publish_post
draft_id, generate_article?
Publish a draft to DayBy. Optionally trigger AI article generation.
edit_draft
draft_id, title?, content?, tags?
Update title, content, or tags of an existing draft.
update_post
slug, title?, content?, visibility?, tags?
Update an existing published post.
update_article
slug, html_article
Set or replace the HTML article for a post. Use this to write custom articles with CTAs, rich formatting, etc.
check_content
content
Scan content for secrets without posting anything.
list_posts
page?, per_page?
List your recent posts and drafts.
get_post
slug
Get a single post by slug.
Local sanitization
Strips API keys, tokens, IPs, SSH keys, JWTs, AWS ARNs, and database URLs from content before it leaves your machine. No LLM involved. Pure regex, offline, deterministic.
View source on GitHub →Embed Posts on Your Site
Show your DayBy blog on your marketing site, SaaS product, or portfolio. The public API returns your published posts as JSON. No authentication required. Tag posts by project to fetch only what you need.
Public Endpoints
These endpoints are publicly accessible. No API key needed. Only published posts are returned.
List posts by subdomain
Filter by tag
Single post
Supports page and per_page query params. Default: 20 per page.
Tagging Posts by Project
Tag your posts to filter them per project. Use the MCP tools or REST API:
MCP (from Claude/Cursor/Codex)
Pass tags when drafting: draft_post with tags: ["playflow", "rust"]
REST API
-H "Authorization: Bearer dyb_your_token" \
-H "Content-Type: application/json" \
-d '{"post": {"title": "Ship day", "content": "Launched v2", "tags": ["playflow"]}}'
JavaScript Example
Fetch and render your tagged posts on any website:
CORS
Public endpoints return Access-Control-Allow-Origin: * so they work from any browser origin.
REST API Reference
Full interactive docs with request/response schemas, try-it-out, and examples.
Open API Reference (Swagger UI)Authentication
Pass your API key as a Bearer token on every request:
-H "Authorization: Bearer dyb_your_token_here"
Rate limit: 60 requests/minute per key. Public endpoints (/api/v2/public/) don't require authentication.