# Wallabag MCP MCP

> Wallabag MCP lets you build a private, self-hosted knowledge base for web articles. Save URLs from any site, manage them with tags, and pull out clean text content directly into your AI agent's workspace.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** read-it-later, bookmarking, article-archiving, self-hosted, wallabag

## Description

You can connect your own Wallabag instance to your preferred AI client to turn scattered bookmarks into structured research assets. Instead of relying on proprietary services, you keep all your article data private, right where you need it. You get the ability to list every saved article and fetch its full, clean text content—perfect for analyzing sources without ads or distraction. Beyond just saving links, you can annotate articles by creating specific notes or highlights directly within the agent's workflow. This system also lets you organize your research with tags and manage reading status, marking entries as read or starring favorites. The real power comes when you combine this MCP with others: you can chain a messaging tool with this one to automate summaries based on newly saved articles, all through Vinkius’s multi-MCP chaining capabilities. You just connect once from your AI client, and the entire catalog becomes available.

## Tools

### add_tags_to_entry
Attaches one or more tags to an existing saved article entry.

### create_annotation
Adds a specific note or annotation to an article entry.

### create_entry
Saves a new web URL and its associated content into your Wallabag library.

### delete_entry
Permanently removes an article entry from your saved collection.

### get_entry
Retrieves the full details and content for a single, specific article ID.

### list_annotations
Fetches all notes or annotations associated with an entry ID.

### list_entries
Returns a list of metadata for every article currently stored in your Wallabag account.

### list_tags
Shows all the tags you have created and used across your entire library.

### mark_entry_favorite
Changes an article's status to 'starred,' flagging it as a key reference piece.

### mark_entry_read
Archives an entry, marking it as fully processed or consumed.

### remove_tag_from_entry
Removes a specific tag from an article entry that currently has it.

## Prompt Examples

**Prompt:** 
```
List my most recent articles from Wallabag.
```

**Response:** 
```
I've retrieved your latest entries. You have articles like 'The Future of AI' (ID: 452) and 'Open Source Guide' (ID: 453). Would you like me to fetch the content for any of these?
```

**Prompt:** 
```
Save this URL to my Wallabag: https://example.com/article
```

**Response:** 
```
Successfully saved! The article has been added to your Wallabag account with Entry ID 454. Would you like me to add any tags to it?
```

**Prompt:** 
```
Mark article 452 as read and add the tag 'finished'.
```

**Response:** 
```
Done. Article 452 has been archived and tagged as 'finished'.
```

## Capabilities

### Archive Web Content
Save any article URL to your private Wallabag instance.

### Structure Research Data
Apply tags and mark entries as read or favorite, keeping your knowledge base organized for later recall.

### Extract Content & Annotations
Retrieve the full text of an article along with any existing user annotations or notes.

### Manage Metadata
List, add, and remove tags from specific entries to categorize your research material.

### Perform Deletion Lifecycle
Remove old or irrelevant articles entirely from your library.

## Use Cases

### Synthesizing competitive intelligence
A marketing manager saves 30 articles on competitor launches. She asks her agent to use `list_entries` and then filter them by tag 'competitor-X' before running a summary, giving her one document summarizing all key product features mentioned.

### Reviewing academic literature
A student needs to find every source related to 'quantum computing'. She calls `list_tags` to check available categories and then uses the agent to fetch content for all entries tagged 'Physics' before asking it to summarize the common themes.

### Cleaning up old sources
After a project ends, an engineer needs to remove dozens of irrelevant links. She runs `list_entries` and then uses the agent to systematically call `delete_entry` for all articles older than six months.

## Benefits

- Avoids data lock-in. Since you use your own instance, your research remains yours, protected by the zero-trust proxy in Vinkius.
- Deep analysis is easier with clean text. You can get the extracted text of any article without ads or formatting junk, making it perfect for AI summarization.
- Stay on top of everything using `mark_entry_favorite`. Instead of forgetting a key source, you flag it and retrieve it later via an agent call.
- Maintain structure with tags. Use `list_tags` to see your full taxonomy, then use `add_tags_to_entry` to apply consistent categorization across hundreds of articles.
- Control your data flow. The ability to run a `get_entry` allows you to pull the raw content for deep processing, or call `list_annotations` to review specific user notes.

## How It Works

The bottom line is, you tell your agent what article you need, and it handles the connection and retrieval using your stored credentials.

1. Subscribe to this MCP and provide the necessary credentials for your private Wallabag instance.
2. Your AI client connects through Vinkius, authenticating access via a zero-trust proxy. Your keys never sit on a disk.
3. You can then instruct your agent to list all articles or save a new URL, accessing the data instantly.

## Frequently Asked Questions

**How do I add tags to entries using the add_tags_to_entry tool?**
You tell your agent the ID of the entry and the specific tag name(s). It executes the update, linking that metadata directly to the article record.

**Can I get annotations for a specific article using list_annotations?**
Yes. You provide the Entry ID, and the agent pulls all existing notes or highlights associated with it from your Wallabag instance.

**What is the difference between create_entry and get_entry?**
Using `create_entry` saves a brand new URL to your library. Using `get_entry` fetches all the existing information for an article you already saved by its unique ID.

**How do I mark an article as read using mark_entry_read?**
You instruct the agent with the Entry ID, and it updates your Wallabag status, archiving the article so it's filtered out of your 'to-read' list.

**I need to delete an article. How does the `delete_entry` tool work?**
The tool permanently removes the entry from your Wallabag library. You must pass a specific Entry ID; this ensures you only wipe out the content you intend to remove.

**How can I get an overview of all my saved articles using `list_entries`?**
It pulls a list of every article ID and its basic metadata from your library. This is helpful for quickly seeing the scope of your backlog or identifying entries that need reviewing.

**I want to flag an important article but it's not finished yet. How do I use `mark_entry_favorite`?**
It instantly changes an entry’s status, marking it as a favorite or 'starred.' You only need the Entry ID for this simple organizational update.

**I used `add_tags_to_entry`, but now I need to correct the tags. How do I use `remove_tag_from_entry`?**
This tool deletes a specific tag from an entry, allowing you to correct classification errors or update research categories after your initial tagging.

**Can I save a new article just by providing a URL?**
Yes! Use the `create_entry` tool with the URL you want to save. Your agent will add it to your Wallabag account immediately.

**How do I archive an article once I've finished reading it?**
Simply ask the agent to mark the article as read using the `mark_entry_read` tool with the specific Entry ID.

**Can I see the highlights and notes I've made on an article?**
Yes. The `list_annotations` tool retrieves all highlights and notes associated with a specific Entry ID, allowing the AI to reference your personal insights.