Get the FREE Ultimate OpenClaw Setup Guide →

ava

Automatically share development progress to Slack through AI. MCP-powered task reporting with privacy-first design.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio yutakobayashidev-ava node apps/www/server.js \
  --env DATABASE_URL="postgresql://USER:PASSWORD@HOST:PORT/DB" \
  --env OPENAI_API_KEY="sk-..." \
  --env STRIPE_API_KEY="sk_live_..." \
  --env OAUTH_TECHNIQUE="arrow-prefetch-placeholder" \
  --env SLACK_CLIENT_ID="your-slack-client-id" \
  --env SLACK_CLIENT_SECRET="your-slack-client-secret" \
  --env NEXT_PUBLIC_BASE_URL="https://your-domain.example"

How to use

Ava provides a MCP (Model Context Protocol) HTTP server at the /mcp endpoint of its Next.js-based application. The MCP server exposes task management capabilities that allow AI agents to start, update, pause, resume, complete, and list tasks, with Slack notifications and OAuth 2.1 + PKCE authentication integrated. To use it, deploy the Ava server and ensure the MCP endpoint is reachable. Tools available include start_task, update_task, report_blocked, pause_task, resume_task, complete_task, and list_tasks. Slack integration enables real-time task progress, daily summaries via the /daily-report route, and secure login via Slack OpenID Connect. The server also includes Stripe subscription handling (checkout, portal, and webhook endpoints) and a dashboard UI for task visualization.

How to install

Prerequisites:

  • Node.js 18+ (prefer using corepack with pnpm)
  • Docker and Docker Compose (for PostgreSQL if you choose to run locally)
  • pnpm installed (recommended)

Installation steps:

  1. Clone the repository: git clone https://github.com/yutakobayashidev/ava.git cd ava

  2. Install dependencies (pnpm workspace): corepack enable pnpm pnpm install

  3. Configure environment variables:

    • Create a local .env file (or set environment variables in your deployment): NEXT_PUBLIC_BASE_URL=https://your-domain.example DATABASE_URL=postgresql://USER:PASSWORD@HOST:PORT/DB SLACK_CLIENT_ID=your-slack-client-id SLACK_CLIENT_SECRET=your-slack-client-secret STRIPE_API_KEY=sk_test_... OPENAI_API_KEY=sk-... OAUTH_TECHNIQUE=PKCE
  4. Start the development server: pnpm -w dev

    or run the specific app/server if configured differently in your environment

  5. Verify MCP endpoint: curl https://your-domain.example/mcp

    You should receive MCP route responses and have access to /api/* endpoints for OAuth, Slack, Stripe, etc.

Additional notes

Tips and considerations:

  • Ensure Slack and Stripe credentials are configured in your environment to enable real-time notifications and payment features.
  • The MCP server is served within the Next.js app (under /mcp). If you deploy behind a reverse proxy, ensure proper routing to /mcp.
  • For local development, you can run a local PostgreSQL instance via Docker Compose as described in the repository docs.
  • Use the provided .mcp.json auto-generation workflow for quick MCP configuration when onboarding new teams.
  • If you encounter OAuth PKCE issues, verify that redirect URIs are correctly registered in your OAuth provider and that your env vars reflect those URIs.

Related MCP Servers

Sponsor this space

Reach thousands of developers