Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read
/install hardcover
Hardcover GraphQL API
Query your reading library, book metadata, and search Hardcover's catalog.
Configuration
- Env variable:
HARDCOVER_API_TOKENfrom https://hardcover.app/settings - Endpoint:
https://api.hardcover.app/v1/graphql - Rate limit: 60 req/min, 30s timeout, max 3 query depth
Authentication
All queries require Authorization: Bearer {token} header (token from settings, add Bearer prefix):
curl -X POST https://api.hardcover.app/v1/graphql \
-H "Authorization: Bearer $HARDCOVER_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"query": "query { me { id username } }"}'
Workflow
-
Get user ID first — most queries need it:
query { me { id username } } -
Query by status — use
status_idfilter:1= Want to Read2= Currently Reading3= Read4= Paused5= Did Not Finish
-
Paginate large results — use
limit/offset, adddistinct_on: book_id
Common Queries
Currently Reading with Progress
query {
me {
user_books(where: { status_id: { _eq: 2 } }) {
user_book_reads { progress_pages }
book {
title
pages
image { url }
contributions { author { name } }
}
}
}
}
Library by Status
query ($userId: Int!, $status: Int!) {
user_books(
where: { user_id: { _eq: $userId }, status_id: { _eq: $status } }
limit: 25
offset: 0
distinct_on: book_id
) {
book {
id
title
pages
image { url }
contributions { author { name } }
}
}
}
Search Books/Authors/Series
query ($q: String!, $type: String!) {
search(query: $q, query_type: $type, per_page: 10, page: 1) {
results
}
}
query_type: Book, Author, Series, Character, List, Publisher, User
Book Details by Title
query {
editions(where: { title: { _eq: "Oathbringer" } }) {
title
pages
isbn_13
edition_format
publisher { name }
book {
slug
contributions { author { name } }
}
}
}
Limitations
- Read-only (no mutations yet)
- No text search operators (
_like,_ilike,_regex) - Access limited to: your data, public data, followed users' data
- Tokens expire after 1 year
Entity Reference
For detailed field documentation on Books, Editions, Authors, Series, User Books, Activities, Lists, Goals, and other entities, see references/entities.md.
Response Codes
| Code | Meaning |
|---|---|
| 200 | Success |
| 401 | Invalid/expired token |
| 429 | Rate limited |
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install hardcover - After installation, invoke the skill by name or use
/hardcover - Provide required inputs per the skill's parameter spec and get structured output
What is Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read?
Query reading lists and book data from Hardcover.app via GraphQL API. Triggers when user mentions Hardcover, asks about their reading list/library, wants book progress, searches for books/authors/series, or references "currently reading", "want to read", or "books I've read". Also use for syncing reading data to other systems (Obsidian, etc.) or tracking reading goals. It is an AI Agent Skill for Claude Code / OpenClaw, with 1724 downloads so far.
How do I install Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read?
Run "/install hardcover" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read free?
Yes, Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read support?
Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Hardcover.app skill for tracking books you're reading, reading goal, and finding books you'd love to read?
It is built and maintained by Asaph M. Kotzin (@asaphko); the current version is v1.0.7.