[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Archive old and finished Instapaper articles

> Clear your Instapaper Home list: archive articles you finished and ones you never opened in 90 days. Runs weekly from Claude Code, n8n or a script.

Source: https://cotlet.dev/integrations/instapaper-api-mcp-server/archive-old-instapaper-articles

Home grows by a few articles a day and shrinks by far fewer. After a few months it holds hundreds of links, the ones you care about are buried, and cleaning it by hand never makes it to the top of the list.

Cotlet does it in your own Instapaper account with list\_bookmarks and move\_bookmark, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=instapaper) [All Instapaper tools](https://cotlet.dev/integrations/instapaper-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can Instapaper do this on its own?

The Instapaper API v2 lists bookmarks by section, returns reading progress for each, and moves a bookmark to the archive (checked 17 Oct 2026). A script can do this once you have a token. Nothing in the app archives by age or progress on a schedule, and the API has no MCP server for an agent to call.

## How you do it in Instapaper today

1. You open the Home list, which holds everything saved and not archived.
2. You look at each article, decide whether you finished it or still want it, and move it to the Archive.
3. Finished articles are easy to spot because Instapaper records how far through you got.
4. Old unread ones need a judgment call each time, so most people skip the pile and add new links on top.
5. Archive and Liked are separate: an article can be in both, and archiving does not remove the like.

## How to archive old and finished Instapaper articles

Prompt

```
Look at my Instapaper Home list. Archive every article I read to the end, and every article saved more than 90 days ago that I never opened. List the second group for me before archiving it.
```

1. 01  
### Read the Home list  
list\_bookmarks pages through section home, newest first, until the list ends, so an old backlog is covered in one run and not only the first page.
2. 02  
### Split by progress and age  
Articles with reading progress at 100% go in the finished group. Articles with progress 0 and a saved date older than your cutoff go in the stale group. Everything else stays.
3. 03  
### Archive the finished group  
move\_bookmark sends each finished article to the archive. A liked article stays liked, because Instapaper keeps the two flags apart.
4. 04  
### Show the stale group first  
The stale group is listed with title and age before anything moves. You answer yes, or name articles to keep, and only then are they archived.
5. 05  
### Report the counts  
The run ends with how many moved, how many were left in Home, and the oldest article still unread.

### What you get back

Example data

```
Home before: 212 articles
Archived, finished: 31
Stale, saved before 18 Jul 2026 and never opened: 47, waiting for your yes
Kept in Home: 134
Oldest unread article left: "How to Salt Pasta Water", saved 3 Aug 2026
```

### Other ways to ask

- Archive only articles I liked and finished, and leave unliked ones in Home.
- Every Sunday, list what is older than 30 days and unread, and move nothing.
- Move finished articles from my Cooking folder to the archive, not from Home.
- Archive stale articles without asking, but only those saved from newsletters I tagged "later".

## What Instapaper allows, and what to know first

- Instapaper stores reading progress as a number from 0 to 1 with the time it was recorded.
- Liked and Archive are independent flags, so archiving an article keeps it in the Liked list.
- Searching through all saved articles, including archived ones, is a Premium feature, so on a free account an archived article is found by scrolling or by its tag.
- Permanent Archive, which keeps a copy of an article even if the page disappears from the web, is a Premium feature.
- Archiving is reversible with one move back to Home. Deleting an article is permanent and is a different call.

move\_bookmark changes only your own Instapaper data and reach no one else, so it runs without asking first.

Sources: [Instapaper API v2 OpenAPI spec](https://www.instapaper.com/api/2/openapi.json) · [Instapaper Premium: free and Premium features](https://www.instapaper.com/premium) · [Instapaper API v2 TypeScript SDK (official)](https://github.com/Instapaper/instapaper-api-js)

## Call move\_bookmark from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/instapaper/bookmarks/1893240551/move \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"destination":"archive"}'
```

Example response

```
{
"bookmark_id": 1893240551,
"title": "How to Salt Pasta Water",
"archived": true,
"folder_id": null,
"liked": false
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is instapaper\_write → move\_bookmark. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/instapaper-api-mcp-server.md#automations)

## Instapaper tools this automation uses

__Cotlet Instapaper tools used to archive old and finished Instapaper articles__
| Tool | Parameters |
| --------------- | --------------------------------------- |
| list\_bookmarks | section, folder\_id, tag, limit, offset |
| move\_bookmark | bookmark\_id, destination |

[All 12 Instapaper tools with descriptions](https://cotlet.dev/integrations/instapaper-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect Instapaper to Cotlet?

Yes. You sign in to Instapaper yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Instapaper once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More Instapaper automations

- [Sort saved Instapaper articles into folders and tags](https://cotlet.dev/integrations/instapaper-api-mcp-server/sort-instapaper-articles-into-folders.md)
- [Export your Instapaper highlights each week](https://cotlet.dev/integrations/instapaper-api-mcp-server/export-instapaper-highlights.md)
- [Instapaper API and MCP server: every tool](https://cotlet.dev/integrations/instapaper-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to Instapaper.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Instapaper.

[Sign up free](https://cotlet.dev/app/signup?app=instapaper)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
