The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Wallabag MCP listing page.
A Model Context Protocol (MCP) server for wallabag, the open-source read-it-later service.
This server gives AI assistants a structured interface for common wallabag workflows:
wallabag is widely used in self-hosted setups, but its API is OAuth-based and awkward for general LLM tools. This MCP server wraps the important entry, tag, and annotation operations with an AI-friendly surface and documented parameters.
Or from a checkout:
The server reads configuration from environment variables:
| Variable | Required | Description |
|---|---|---|
WALLABAG_BASE_URL | Yes | Base URL of your wallabag instance, e.g. https://app.wallabag.it |
WALLABAG_ACCESS_TOKEN | Optional | Existing OAuth access token; if set, password grant is skipped |
WALLABAG_CLIENT_ID | Required unless access token is set | OAuth client id from wallabag's developer client page |
WALLABAG_CLIENT_SECRET | Required unless access token is set | OAuth client secret |
WALLABAG_USERNAME | Required unless access token is set | wallabag username |
WALLABAG_PASSWORD | Required unless access token is set | wallabag password |
WALLABAG_TIMEOUT | No | HTTP timeout in seconds, default 20 |
Create a wallabag API client from your wallabag instance under Developer / API clients. wallabag's official docs show the password grant against /oauth/v2/token.
| Tool | Purpose |
|---|---|
wallabag_health_check | Verify connectivity and authentication with a tiny read-only request |
wallabag_list_entries | List entries with pagination and filters |
wallabag_get_entry | Fetch one entry, optionally including extracted content |
wallabag_add_entry | Save a URL into wallabag |
wallabag_update_entry | Update title, URL, archive/starred state, or tags |
wallabag_archive_entry | Mark an entry archived/read |
wallabag_unarchive_entry | Mark an entry unarchived/unread |
wallabag_star_entry | Star/favourite an entry |
wallabag_unstar_entry | Remove starred/favourite state |
wallabag_reload_entry | Ask wallabag to refetch/reparse the original URL |
wallabag_delete_entry | Delete an entry |
wallabag_list_tags | List known tags |
wallabag_add_tags_to_entry | Add comma-separated tags to an entry |
wallabag_delete_tag | Delete a tag globally |
wallabag_list_annotations | List annotations for an entry |
wallabag_create_annotation | Create an annotation on quoted article text |
wallabag_delete_annotation | Delete an annotation |
live_docs_test.py validates wallabag's public API documentation and the hosted API docs page without needing account credentials. Mutation and authenticated request behaviours are covered with mocked HTTP tests.
Write-capable tools mutate your read-it-later library. Keep OAuth secrets in environment variables or a secret manager, never in source control.