Bark-Worker
[](https://www.gnu.org/licenses/gpl-3.0)
English | **[中文文档](README.zh.md)**
> [!NOTE]
> KV Version will probably not support MCP due to limited quota, but if the MCP route can be optimized to some extent, there may have MCP support in KV version.
> [!NOTE]
> Batch Push has the highest priority, if `device_keys` is specified and not empty, `device_key` will be ignored, in both V1 and V2 APIs.
Bark-Worker is a [Bark-Server](https://github.com/Finb/bark-server) implenmention on Cloudflare Worker. It provides privacy-aware users with a cheap and private bark backend.
### What is [Bark](https://github.com/Finb/Bark)?
[Bark](https://github.com/Finb/Bark) is an iOS App which allows you to push customed notifications to your iPhone.
> [!NOTE]
> A domain is required if worker.dev is unavailable in your country/region
## Features
- Full Bark-Server APIs support
- `register`
- `ping`
- `healthz`
- `info`
- `push`
- Path based parameters resolve
- Easy to deploy, Cheap to use and Convenient to manage
## Setup
> [!NOTE]
> Select one, D1 or KV Version are both available. D1 Version is recommended for its higher usage than KV Version
### Follow the instructions for D1 Version
> [!NOTE]
> The Cloudflare API Token must have D1 permission.
[](https://deploy.workers.cloudflare.com/?url=https://github.com/cwxiaos/bark-worker)
### Or manually deploy
Refer to [Setup Guide](doc/setup_guide.md)
#### Cloudflare D1 Version
Create a Worker and a D1 Database, bind D1 database to Worker with name `database`
#### Cloudflare KV Version
Create a Worker and a KV Storage, bind KV Storage to Worker with name `database`
## Tips
- Multi Device Key to one Device
- Device Key Alias
- D1 Database Manage in Console
- etc.
Refer to [Tips](doc/tips.md)