PluginWorld
Da

dailybot-mcp

MCP

Enables Littlebird to read and submit DailyBot check-ins through the DailyBot CLI.

@allen-n · no license · updated today

SECURITY

B

SCORE

54

STARS

0

PLUG IN

git clone https://github.com/allen-n/dailybot-mcp.git

See the README to configure this MCP server

README

DailyBot MCP

A small local MCP server that lets Littlebird read and submit your DailyBot check-ins through the installed DailyBot CLI.

Requirements

  • Python 3.10+
  • uv
  • DailyBot CLI 3.8+, authenticated as the user whose check-ins Littlebird should access

Verify DailyBot first:

dailybot --version
dailybot status --auth

If needed, authenticate with:

dailybot login

Install

From this repository directory, install dependencies:

uv sync

Run

For manual background operation:

./mcpctl start
./mcpctl status
./mcpctl logs  # Ctrl-C stops following logs, not the server
./mcpctl stop

Runtime state and logs are stored under the ignored .run/ directory.

To run in the foreground instead:

uv run dailybot_mcp.py

The MCP endpoint is available only on your machine at:

http://127.0.0.1:8765/mcp

This server is localhost-only; it does not provide a remote or hosted endpoint.

Connect Littlebird

  1. Open Settings > Integrations in Littlebird.
  2. Add a custom MCP server.
  3. Enter http://127.0.0.1:8765/mcp as the server URL.
  4. Enable the integration for the chat or routine that needs DailyBot.

Tools

list_checkins(date: str | None = None) -> dict[str, Any]
get_checkin(checkin_id: str) -> dict[str, Any]
get_checkin_history(checkin_id: str, from_date: str, to_date: str, search: str | None = None, limit: int | None = None) -> dict[str, Any]
submit_checkin(checkin_id: str, answers: list[str], response_date: str | None = None, confirmed: bool = False) -> dict[str, Any]
  • list_checkins lists pending and completed check-ins for one date.
  • get_checkin returns a check-in's configuration and ordered questions.
  • get_checkin_history returns responses DailyBot provides over any arbitrary inclusive date range, optionally filtered by search and capped by limit.
  • submit_checkin submits answers in question order only when confirmed=True after you explicitly approve them.

Dates use YYYY-MM-DD. History results follow your DailyBot account permissions.

Development

Tests mock DailyBot and never contact a live account:

uv run python -m unittest -v

Troubleshooting

  • DailyBot is not on PATH: ensure dailybot --version works in the same shell used to start the server.
  • DailyBot is not authenticated: run dailybot login, then verify with dailybot status --auth.
  • Littlebird cannot connect: confirm the server process is still running and the URL is exactly http://127.0.0.1:8765/mcp.
  • Port already in use: stop the process using port 8765 before starting this server.

SIMILAR PLUGINS