# MangaDex Manga Metadata Scraper (`parseforge/mangadex-manga-scraper`) Actor

Pull structured manga metadata from the MangaDex public API. Retrieve title, description, author, artist, tags, publication status, content rating, and related manga IDs for any series. Ideal for building a manga catalog or analyzing genre trends.

- **URL**: https://apify.com/parseforge/mangadex-manga-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Other, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.24 / 1,000 result items

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner-v4.webp)](https://apify.com/parseforge?fpr=vmoqkp)

### MangaDex Manga Metadata Scraper

**Scrape manga metadata from MangaDex by search query or recent titles, up to a million per run.** Every manga entry comes with its title, description, author, artist, tags, status, and cover art. No login or API key. Export to CSV, JSON, Excel, or XML.

MangaDex's website is a JavaScript shell that hides its data, but its public REST API returns rich structured metadata. This actor queries that API directly, filtering by search keywords or fetching the latest titles, and returns each manga as a flat row with all available fields.

| Who uses it | What they scrape MangaDex for |
|---|---|
| Manga readers and collectors | Build a personal database of manga titles with descriptions and tags for offline browsing. |
| Anime and manga researchers | Analyze trends in manga genres, publication status, and content ratings over time. |
| Developers building manga databases | Populate a local or cloud database with MangaDex metadata for a reading app or recommendation engine. |
| Content creators and reviewers | Find manga by specific tags or status to review or feature on a blog or YouTube channel. |

### What it does

This Actor collects manga metadata from MangaDex by search query or recent titles, and returns each manga as a flat row with title, description, author, artist, tags, status, and more.

- 🔍 **Search by query:** Enter any manga title keywords to find matching entries.
- 📋 **Recent titles mode:** Leave the search field empty to fetch the most recently updated manga on MangaDex.
- 📊 **Full metadata:** Each result includes titles in multiple languages, descriptions, tags, author, artist, cover art, and related manga IDs.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with MangaDex data

**📚 Build a manga catalog.**

A collector runs the actor with a list of search queries to compile a personal library of manga metadata for offline reference.

**🔍 Research manga trends.**

A researcher fetches recent titles and analyzes tag frequencies, publication statuses, and content ratings to identify market trends.

**🛠️ Populate a manga app database.**

A developer seeds a database with MangaDex metadata, using the author and artist IDs to link creator profiles.

**📝 Review manga for content.**

A content creator searches for manga by specific tags (e.g., 'action', 'romance') and status to find titles for review videos.

### Why choose this scraper

| | What you get |
|---|---|
| **Titles in multiple languages** | English, Japanese romanized, and alternative titles from the community. |
| **Full descriptions** | English, Japanese, Spanish (Latin America), and Portuguese (Brazil) descriptions where available. |
| **Author and artist IDs** | Direct links to the creator profiles on MangaDex. |
| **Tags and content rating** | Genre tags, content rating (safe, suggestive, erotica, pornographic), and publication demographic. |
| **Status and year** | Publication status (ongoing, completed, etc.) and original release year. |
| **Related manga** | IDs of related manga titles for cross-referencing. |
| **Cover art ID** | The cover art identifier for fetching cover images. |
| **Available translations** | List of languages the manga has been translated into. |

### How it compares

This actor competes directly with other MangaDex scrapers on Apify, offering a balance of search flexibility and field completeness.

| Feature | ParseForge | MangaDex Titles Search Scraper | MangaDex Titles Scraper - Manga Metadata and Authors | MangaDex Scraper |
|---|---|---|---|---|
| Search by title keywords | Yes | Yes | Yes | Yes |
| Fetch recent titles without search | Yes | Not listed | Not listed | Not listed |
| Descriptions in multiple languages | Yes | Not listed | Not listed | Not listed |
| Author and artist IDs | Yes | Not listed | Yes | Yes |
| Tags and content rating | Yes | Yes | Yes | Yes |
| Related manga IDs | Yes | Not listed | Not listed | Not listed |
| Available translated languages | Yes | Not listed | Not listed | Not listed |

### What a MangaDex record looks like

Every record returns as one flat JSON row. Here is a real one from a run:

```json
{
 "id": "45b8d08e-b3ca-4aa7-bb14-120a1ed3c72f",
 "type": "manga",
 "title_ja_ro": "Wakaba-chan wa Wakarasetai!",
 "description_en": "One tomboy is determined to win the heart of her childhood best friend-but will it take more than a makeover to win him over?\n\nWakaba is cocky, condescending, foul-mouthed, and absolutely in love with her childhood friend, Daiki. For as long as they’ve known each other, Wakaba’s been the very image of a roughhousing tomboy, but all that’s about to change. When she shows up in front of him, wearing a cutesy, feminine outfit, will she get the hopeless late bloomer’s heart racing? When you can’t put your feelings into words, an image change might be the right gambit!\n\n*Source: Seven Seas Entertainment, Vol. 1*",
 "description_ja": "いつも偉そうな幼馴染の女の子が実は俺のことを大好きで！？\n\n女子が苦手な高校生・大樹は幼馴染のボーイッシュ女子・若葉とだけは仲良し。上から目線で生意気で口の悪い若葉と、放課後いつもサッカーをして過ごしていた。でもある日、若葉がとびきり可愛い服装で現れて、女子として意識してしまい…！？",
 "description_es_la": "Daiki, un chico de preparatoria al que no le va muy bien con las chicas, solo puede hablar con Wakaba, una chica a la que conoce desde la infancia. Pero un día, Wakaba aparece con un vestido ¿extraordinariamente lindo...?",
 "description_pt_br": "Quatro-olhos, que não se dá bem com garotas, só consegue conversar com seu amigo de infância moleca, Wakaba. Mas um dia Wakaba aparece diante dele com uma roupa incrivelmente fofa...!?\n\nEsta é uma comédia romântica de batalha entre Wakaba, que quer ser amado, e Quatro-Olhos, que fica nervoso com garotas!!",
 "isLocked": false,
 "links_al": "162092",
 "links_ap": "wakaba-chan-wa-wakarasetai",
 "links_bw": "series/474319/list",
 "links_kt": "wakaba-chan-wa-wakarasetai",
 "links_mu": "2brf3uw",
 "links_amz": "https://www.amazon.co.jp/dp/B0D2YFVVHX",
 "links_ebj": "https://ebookjapan.yahoo.co.jp/books/833853/"
}
```

Every value above comes from a real run. A field a record does not have comes back as `null`.

### Configure the run

Drive the Actor from a search query or leave it blank for recent titles. The search runs against MangaDex's API and returns only matching manga entries. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "maxItems": 10
}
```

A larger pull:

```json
{
 "maxItems": 200
}
```

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Set your inputs and any filters, then click **Start**.
3. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to MangaDex through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting no results?**

Check your search query for typos. If the query is too specific, try broader keywords. Also ensure maxItems is set to at least 1.

**The actor returns fewer results than maxItems.**

MangaDex's API may return fewer results than requested if the search query matches fewer titles. Increase maxItems or broaden your search.

**Why are some fields empty?**

Not all manga have complete metadata. Fields like descriptions in specific languages or alternative titles may be missing if the community hasn't provided them.

**Can I scrape manga by author or artist?**

The current input schema only supports search by title keywords. Author or artist filtering is not available.

**The run fails with an error.**

Check that your input is valid JSON. If the error persists, MangaDex's API may be temporarily unavailable. Try again later.

### FAQ

| Question | Answer |
|---|---|
| Do I need a MangaDex account or API key? | No. The actor uses MangaDex's public REST API, which does not require authentication for read-only metadata queries. |
| How many manga can I scrape per run? | Free users are limited to 10 items for preview. Paid users can set maxItems up to 1,000,000 per run. |
| What data does each manga entry include? | Each entry includes the manga ID, titles in English and Japanese, alternative titles, descriptions in multiple languages, author and artist IDs, tags, content rating, status, year, and available translated languages. |
| Can I search by specific tags or genres? | The current version supports search by title keywords only. Tag-based filtering is not available in this input schema. |
| What languages are the descriptions in? | Descriptions are available in English, Japanese, Spanish (Latin America), and Portuguese (Brazil) where the community has provided them. |
| Does the actor scrape cover images? | No, it returns the cover art ID, which you can use to fetch the cover image from MangaDex's cover art endpoint. |
| Can I get related manga titles? | Yes, each entry includes an array of related manga IDs that you can use to look up additional titles. |
| Is the data updated in real time? | The actor fetches data from MangaDex's live API at the time of the run, so it reflects the current state of the database. |
| What export formats are supported? | You can export the dataset as CSV, JSON, Excel, or XML from the Apify platform. |
| Can I scrape all manga on MangaDex? | Yes, by leaving the search query empty and setting maxItems to a high number, you can fetch the most recent titles. However, the API returns results in order of latest upload, not a complete alphabetical list. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by MangaDex. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

# Actor input Schema

## `searchQuery` (type: `string`):

Search for manga by title keywords (e.g., 'One Piece') or leave empty to fetch recent manga.

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

Complete dataset of all scraped records.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchQuery": "",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/mangadex-manga-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchQuery": "",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/mangadex-manga-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQuery": "",
  "maxItems": 10
}' |
apify call parseforge/mangadex-manga-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/mangadex-manga-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/08YF1maqNyJmMpMOj/builds/7L9IEsNiiABmjYUyW/openapi.json
