---
type: "firecrawl-provider"
description: "Wikipedia and its sister projects through Wikimedia Enterprise, the Wikimedia Foundation's official API: current articles by title, parsed infoboxes and sections, and Wikidata entities."
use_when: "The current revision of an article on Wikipedia or a sister project, by exact title.\n\nWikidata items and properties: the structured facts behind Wikipedia.\n\nProject and language codes that pin a lookup to one wiki."
categories: "Other"
capabilities: 7
credits_range: "0-1"
---
# Wikipedia on Firecrawl Alexandria

Wikipedia and its sister projects through Wikimedia Enterprise, the Wikimedia Foundation's official API: current articles by title, parsed infoboxes and sections, and Wikidata entities.

- Categories: Other
- Category index: [Other category](https://firecrawl.dev/alexandria/agents/categories/other)
- Provider key: `wikipedia`
- Access: Firecrawl credits
- Cost (Article): 1 credit per record
- Cost (Structured article): 1 credit per record
- Cost (Wikidata item): 1 credit per call
- Cost (Wikidata property): 1 credit per call
- Cost (Wikidata labels): 1 credit per call
- Cost (Projects): 0 credits per call
- Cost (Languages): 0 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/wikipedia)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/wikipedia/openapi.json)

## Capabilities

- [Article](https://firecrawl.dev/alexandria/agents/providers/wikipedia/articles/lookup): Articles matching the exact title in the selected project or language, newest revision each. article_body carries the format chosen with body, wikitext by default. Empty when none match. Priced per article returned.
- [Structured article](https://firecrawl.dev/alexandria/agents/providers/wikipedia/articles/structured-contents): Parsed articles matching the exact title in the selected project or language. Carries no article_body, categories, templates or redirects; use articles/lookup for those. Empty when none match. Priced per article returned.
- [Wikidata item](https://firecrawl.dev/alexandria/agents/providers/wikipedia/wikidata/item): One Wikidata item, latest revision. Entity data is CC0.
- [Wikidata property](https://firecrawl.dev/alexandria/agents/providers/wikipedia/wikidata/property): One Wikidata property, latest revision. Entity data is CC0.
- [Wikidata labels](https://firecrawl.dev/alexandria/agents/providers/wikipedia/wikidata/labels): One object mapping Wikimedia language code to the label in that language, for example { en: "Douglas Adams", fr: "Douglas Adams" }.
- [Projects](https://firecrawl.dev/alexandria/agents/providers/wikipedia/reference/projects): Every matching project, about 900 unfiltered.
- [Languages](https://firecrawl.dev/alexandria/agents/providers/wikipedia/reference/languages): Every language with at least one Wikimedia project.

## 1. Choose this provider when

The current revision of an article on Wikipedia or a sister project, by exact title.

Wikidata items and properties: the structured facts behind Wikipedia.

Project and language codes that pin a lookup to one wiki.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "wikipedia",
  "capability": "articles/lookup",
  "options": {
    "name": "Marie_Curie",
    "limit": 1,
    "body": "wikitext"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `name` (string, required): Exact article title as on the wiki, for example `Marie_Curie` or `Marie Curie`. Case-sensitive: Wikipedia titles start with a capital letter. From a URL such as https://fr.wikipedia.org/wiki/Marie_Curie, use the part after /wiki/. Example: `Marie_Curie`
- `project` (string): Wikimedia project identifier: language code plus project code, for example `enwiki` (English Wikipedia), `frwiki`, `dewiki`, `enwiktionary` or `eswikivoyage`. Defaults to `enwiki` when neither project nor language is given. `reference/projects` lists every identifier. Example: `<project>`
- `language` (string): Wikimedia language code, for example `en`, `fr` or `zh-yue`. Returns the article from any project in that language; combine with project to pin one wiki. Example: `<language>`
- `fields` (string[]): Return only these fields, in dot notation, for example `name`, `abstract`, `url`, `version.identifier`. Omit for the full record. Wikimedia returns exactly the fields named. Example: `[]`
- `limit` (number): Most matching articles to return, 1 to 10. More than one only helps when no project is pinned and the title exists on several wikis. Example: `1`
- `body` (string): Which article_body format to include when fields is not given: `wikitext` (default, compact), `html` (MediaWiki DOM, often 5-10x larger), `both`, or `none` for metadata and abstract only. Example: `wikitext`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "wikipedia",
    capability: "articles/lookup",
    options: {
      name: "Marie_Curie",
      limit: 1,
      body: "wikitext",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "wikipedia",
  "capability": "articles/lookup",
  "options": {
    "name": "Marie_Curie",
    "limit": 1,
    "body": "wikitext"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "wikipedia",
    "capability": "articles/lookup",
    "options": {
      "name": "Marie_Curie",
      "limit": 1,
      "body": "wikitext"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'wikipedia/articles/lookup' \
  --options '{"name":"Marie_Curie","limit":1,"body":"wikitext"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "wikipedia",
  "capability": "articles/lookup",
  "options": {
    "name": "Marie_Curie",
    "limit": 1,
    "body": "wikitext"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "wikipedia",
  "capability": "articles/lookup",
  "options": {
    "name": "Marie_Curie",
    "limit": 1,
    "body": "wikitext"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
[
  {
    "name": "<name>",
    "identifier": 0,
    "abstract": "<abstract>",
    "url": "<url>",
    "date_created": "<date_created>",
    "date_modified": "<date_modified>",
    "in_language": {},
    "is_part_of": {},
    "namespace": {},
    "main_entity": {},
    "additional_entities": [],
    "image": {},
    "license": [],
    "version": {},
    "article_body": {},
    "categories": [],
    "templates": [],
    "redirects": [],
    "protection": [],
    "watchers_count": 0,
    "event": {}
  }
]
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Article

- Capability: `articles/lookup`
- Description: Articles matching the exact title in the selected project or language, newest revision each. article_body carries the format chosen with body, wikitext by default. Empty when none match. Priced per article returned.
- Instructions: Read the current revision of a Wikipedia (or sister-project) article by exact title: full wikitext (or HTML with body), abstract, categories, redirects, connected Wikidata QID, license, and revision credibility signals. Use structured-contents instead when you want infobox fields, sections or references already parsed. From https://de.wikipedia.org/wiki/Berlin pass name `Berlin` and project `dewiki`. Not a search: titles must match exactly.
- Cost: 1 credit per record
- Capability file: [Article](https://firecrawl.dev/alexandria/agents/providers/wikipedia/articles/lookup)

Accepted options:
- `name` (string, required): Exact article title as on the wiki, for example `Marie_Curie` or `Marie Curie`. Case-sensitive: Wikipedia titles start with a capital letter. From a URL such as https://fr.wikipedia.org/wiki/Marie_Curie, use the part after /wiki/. Example: `Marie_Curie`
- `project` (string): Wikimedia project identifier: language code plus project code, for example `enwiki` (English Wikipedia), `frwiki`, `dewiki`, `enwiktionary` or `eswikivoyage`. Defaults to `enwiki` when neither project nor language is given. `reference/projects` lists every identifier. Example: `<project>`
- `language` (string): Wikimedia language code, for example `en`, `fr` or `zh-yue`. Returns the article from any project in that language; combine with project to pin one wiki. Example: `<language>`
- `fields` (string[]): Return only these fields, in dot notation, for example `name`, `abstract`, `url`, `version.identifier`. Omit for the full record. Wikimedia returns exactly the fields named. Example: `[]`
- `limit` (number): Most matching articles to return, 1 to 10. More than one only helps when no project is pinned and the title exists on several wikis. Example: `1`
- `body` (string): Which article_body format to include when fields is not given: `wikitext` (default, compact), `html` (MediaWiki DOM, often 5-10x larger), `both`, or `none` for metadata and abstract only. Example: `wikitext`

Response schema example:
```json
[
  {
    "name": "<name>",
    "identifier": 0,
    "abstract": "<abstract>",
    "url": "<url>",
    "date_created": "<date_created>",
    "date_modified": "<date_modified>",
    "in_language": {},
    "is_part_of": {},
    "namespace": {},
    "main_entity": {},
    "additional_entities": [],
    "image": {},
    "license": [],
    "version": {},
    "article_body": {},
    "categories": [],
    "templates": [],
    "redirects": [],
    "protection": [],
    "watchers_count": 0,
    "event": {}
  }
]
```

### Structured article

- Capability: `articles/structured-contents`
- Description: Parsed articles matching the exact title in the selected project or language. Carries no article_body, categories, templates or redirects; use articles/lookup for those. Empty when none match. Priced per article returned.
- Instructions: Read a Wikipedia article pre-parsed into JSON: one-line description, abstract, infobox fields, sections as paragraphs and lists with links, references and tables. Best for extracting facts such as a person's birth date or a city's population without parsing HTML. Beta upstream, with the most complete coverage on en, de, fr, es, pt, it, nl, cy and id Wikipedia. Exact title, as for articles/lookup.
- Cost: 1 credit per record
- Capability file: [Structured article](https://firecrawl.dev/alexandria/agents/providers/wikipedia/articles/structured-contents)

Accepted options:
- `name` (string, required): Exact article title as on the wiki, for example `Marie_Curie` or `Marie Curie`. Case-sensitive: Wikipedia titles start with a capital letter. From a URL such as https://fr.wikipedia.org/wiki/Marie_Curie, use the part after /wiki/. Example: `Marie_Curie`
- `project` (string): Wikimedia project identifier: language code plus project code, for example `enwiki` (English Wikipedia), `frwiki`, `dewiki`, `enwiktionary` or `eswikivoyage`. Defaults to `enwiki` when neither project nor language is given. `reference/projects` lists every identifier. Example: `<project>`
- `language` (string): Wikimedia language code, for example `en`, `fr` or `zh-yue`. Returns the article from any project in that language; combine with project to pin one wiki. Example: `<language>`
- `fields` (string[]): Return only these fields, in dot notation, for example `name`, `abstract`, `url`, `version.identifier`. Omit for the full record. Wikimedia returns exactly the fields named. Example: `[]`
- `limit` (number): Most matching articles to return, 1 to 10. More than one only helps when no project is pinned and the title exists on several wikis. Example: `1`

Response schema example:
```json
[
  {
    "name": "<name>",
    "identifier": 0,
    "abstract": "<abstract>",
    "url": "<url>",
    "date_created": "<date_created>",
    "date_modified": "<date_modified>",
    "in_language": {},
    "is_part_of": {},
    "namespace": {},
    "main_entity": {},
    "additional_entities": [],
    "image": {},
    "license": [],
    "version": {},
    "description": "<description>",
    "infoboxes": [],
    "sections": [],
    "references": [],
    "tables": []
  }
]
```

### Wikidata item

- Capability: `wikidata/item`
- Description: One Wikidata item, latest revision. Entity data is CC0.
- Instructions: Read a Wikidata item by QID: labels, descriptions and aliases in every language, all statements (property values with qualifiers and references) and links to its article on each wiki. Use for structured facts such as dates, identifiers and relationships, or to find an entity's article title in another language through sitelinks. Beta upstream; a very large item can fail.
- Cost: 1 credit per call
- Capability file: [Wikidata item](https://firecrawl.dev/alexandria/agents/providers/wikipedia/wikidata/item)

Accepted options:
- `identifier` (string, required): Wikidata item ID (QID), for example `Q42`. An article's main_entity.identifier is its QID. Example: `Q42`
- `fields` (string[]): Return only these fields, in dot notation, for example `entity.labels.en` or `entity.statements.P569`. Omit for the full record. Example: `["entity.labels.en"]`

Response schema example:
```json
{
  "name": "<name>",
  "url": "<url>",
  "date_modified": "<date_modified>",
  "entity": {},
  "version": {},
  "license": []
}
```

### Wikidata property

- Capability: `wikidata/property`
- Description: One Wikidata property, latest revision. Entity data is CC0.
- Instructions: Read a Wikidata property by PID: its labels, descriptions, datatype and statements. Use to learn what a statement key in an item, such as P569, means. Beta upstream.
- Cost: 1 credit per call
- Capability file: [Wikidata property](https://firecrawl.dev/alexandria/agents/providers/wikipedia/wikidata/property)

Accepted options:
- `identifier` (string, required): Wikidata property ID (PID), for example `P31` (instance of) or `P569` (date of birth). Example: `P31`
- `fields` (string[]): Return only these fields, in dot notation, for example `entity.labels.en` or `entity.statements.P569`. Omit for the full record. Example: `["entity.labels.en"]`

Response schema example:
```json
{
  "name": "<name>",
  "url": "<url>",
  "date_modified": "<date_modified>",
  "entity": {},
  "version": {},
  "license": []
}
```

### Wikidata labels

- Capability: `wikidata/labels`
- Description: One object mapping Wikimedia language code to the label in that language, for example { en: "Douglas Adams", fr: "Douglas Adams" }.
- Instructions: Get the name of a Wikidata item or property in every language, keyed by language code. Cheaper than wikidata/item when only names are needed, for example to label the property and value IDs in a statement. Beta upstream.
- Cost: 1 credit per call
- Capability file: [Wikidata labels](https://firecrawl.dev/alexandria/agents/providers/wikipedia/wikidata/labels)

Accepted options:
- `identifier` (string, required): Wikidata item or property ID, for example `Q42` or `P31`. Example: `Q42`
- `fields` (string[]): Return only these fields, in dot notation, for example `entity.labels.en` or `entity.statements.P569`. Omit for the full record. Example: `["entity.labels.en"]`

Response schema example:
```json
{
  "en": "<en>"
}
```

### Projects

- Capability: `reference/projects`
- Description: Every matching project, about 900 unfiltered.
- Instructions: List the Wikimedia projects available for lookup, to find the project identifier for a language and project type, such as `ptwiki` for Portuguese Wikipedia or `frwiktionary`. Free.
- Cost: 0 credits per call
- Capability file: [Projects](https://firecrawl.dev/alexandria/agents/providers/wikipedia/reference/projects)

Accepted options:
- `language` (string): Only projects in this language code, for example `de`. Example: `<language>`
- `code` (string): Only projects of this type, for example `wiki` for Wikipedia. Example: `wiki`

Response schema example:
```json
[
  {
    "identifier": "<identifier>",
    "code": "<code>",
    "name": "<name>",
    "url": "<url>",
    "in_language": {}
  }
]
```

### Languages

- Capability: `reference/languages`
- Description: Every language with at least one Wikimedia project.
- Instructions: List the language codes Wikimedia projects use, with names and writing direction, to choose the language option or build a project identifier. Codes are two or three letters, sometimes with a suffix (zh-yue). Free.
- Cost: 0 credits per call
- Capability file: [Languages](https://firecrawl.dev/alexandria/agents/providers/wikipedia/reference/languages)

Accepted options:

Response schema example:
```json
[
  {
    "identifier": "<identifier>",
    "name": "<name>",
    "alternate_name": "<alternate_name>",
    "direction": "<direction>"
  }
]
```
