Skip to main content
Glama

wikipedia-mcp-server

Server Details

Search Wikipedia, read summaries and full text, target sections, find nearby pages, list languages.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 22 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
cyanheads/wikipedia-mcp-server
GitHub Stars
3
Server Listing
wikipedia-mcp-server

TDQS

A4.7/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: fetching full article text, retrieving the table of contents, getting a brief summary, searching by query, listing language editions, and searching by geographic coordinates. The descriptions explicitly cross-reference each other, eliminating ambiguity.

Naming Consistency5/5

All tools follow the same 'wikipedia_<verb>_<noun>' pattern with snake_case, e.g., get_article, get_sections, search_articles, search_nearby. The verb (get/search) and noun pairs are consistently named with no deviations.

Tool Count5/5

Six tools is well-scoped for a read-only Wikipedia research server. Each tool covers a distinct retrieval or search operation, and no tool feels redundant or unnecessary.

Completeness5/5

The tool set covers the full read-only lifecycle: searching, retrieving summaries, navigating sections, fetching full articles, exploring language editions, and geo-based discovery. There are no obvious dead ends—the descriptions even recommend follow-up tools for each use case.

Available Tools

6 tools
wikipedia_get_articleGet Wikipedia ArticleA
Read-only
Inspect

Fetch article content as clean plain text. Without section_index: returns the full article with == Section == markers preserved for structure — or, when the article exceeds the size budget, a compact section outline (truncated: true) that points to wikipedia_get_sections plus a section_index read instead of the full text. With section_index (from wikipedia_get_sections): returns that section and every subsection nested under it, each heading above its own body. section_index 0 is the lead section, the text above the first heading, which is the full prose wikipedia_get_summary returns only a truncated fragment of. Section-targeted reads are faster and smaller when only part of the article is needed. Both paths keep superscripts and subscripts apart from the text beside them (10²³, H₂O), render formulas as their TeX, and render code samples as fenced blocks with their indentation intact. A section read also renders data tables as pipe-delimited rows (header row first) and infoboxes as "label: value" lines; a table too large to include leaves a "[table omitted: N rows]" marker in its place. The full-article path carries no data tables or infoboxes, so read the section for those. Tables used only for layout, such as multi-column lists, keep their content as ordinary text. Page furniture is omitted as well — maintenance banners, sister-project and library-resource boxes, portal bars, and spoken-article notices — while a hatnote naming a related article is kept. Every read returns the canonical article URL and the ID of the revision it was read from, for citation; a full read also returns that revision's timestamp. Redirect pages are followed automatically, and the citation fields name the target article.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesArticle title (e.g. "Python (programming language)"). A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name.
languageNoWikipedia language edition code (default "en"). Examples: "fr", "de", "ja".en
section_indexNoSection index from wikipedia_get_sections. 0 reads the lead section (Introduction) — the text above the first heading. Omit for the full article. Providing this returns the targeted section plus every subsection nested under it, as plain text.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlNoCanonical desktop URL of the article (e.g. "https://en.wikipedia.org/wiki/Eiffel_Tower"), for citing the page rather than composing a URL from the title.
errorNoPresent when the call failed. Absent on success.
titleNoResolved article title.
pageidNoWikipedia page ID. Absent on API parse responses that omit it.
contentNoPlain-text article content. Both full articles and section reads carry == Section == markers above the text each one heads, code samples as ``` fenced blocks, and superscripts and subscripts as Unicode characters (10²³, H₂O), or as ^x / ^(…) and _x / _(…) where a character has none. Section reads also carry data tables as | cell | cell | rows with a | --- | row under the header. When truncated is true, this instead carries a section outline (heading names and byte sizes) plus a pointer to the targeted-read path.
languageNoLanguage edition queried.
truncatedNoTrue when a full-article read exceeded the size budget and content is a section outline instead of the full text. Always false for section reads and for full articles within budget.
revision_idNoID of the revision the content was read from. "https://<edition>.wikipedia.org/w/index.php?oldid=<revision_id>" is a permanent link to exactly that version.
content_typeNoContent type: "full_article" or "section".
last_modifiedNoISO 8601 timestamp of that revision, for dating the content. Full-article reads only; a section read carries none.
section_titleNoSection title when section_index was provided — "Introduction" for the lead, which has no heading of its own. Absent for full-article reads.
original_lengthNoCharacter length of the full article text before outlining. Present only when truncated is true.
sections_suggestedNoTrue when content is an outline — call wikipedia_get_sections, then wikipedia_get_article with a section_index to read a specific section. Present only when truncated is true.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint and openWorldHint, so the description carries the burden of behavioral disclosure. It thoroughly discloses truncation behavior (truncated: true, compact outline), formatting transformations (TeX formulas, fenced code blocks, pipe-delimited tables, infobox label/value lines), omitted page furniture, redirect following, and citation fields returned. This goes well beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but information-dense, with the primary behavior front-loaded and the two modes clearly separated. Every sentence adds a distinct behavioral fact; the length is justified by the tool's complexity. It could be slightly tightened, but it is well-structured and not repetitive.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity, the rich output schema, and the annotations, the description is complete. It covers truncation, section semantics, formatting rules, omissions, redirects, and citation fields. An agent has everything needed to decide between full and section reads and to interpret the returned content.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaningful semantics beyond the schema: it explains what section_index 0 means (lead section), what a section read returns (section plus nested subsections), and how the full-article path differs. It doesn't add much about title or language, but those are self-explanatory and fully covered by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ('Fetch article content as clean plain text') and immediately distinguishes the two modes (full article vs section read). It also names the sibling tools it coordinates with (wikipedia_get_sections, wikipedia_get_summary), so an agent can tell it apart from the other Wikipedia tools without inspecting schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use each path: omit section_index for the full article, provide it for a targeted section; it says section-targeted reads are faster and smaller when only part is needed; it points to wikipedia_get_sections for the index and notes that wikipedia_get_summary returns only a truncated fragment. This is clear routing guidance with alternatives named.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wikipedia_get_languagesGet Wikipedia Article LanguagesA
Read-only
Inspect

List the language editions available for a Wikipedia article. Returns language codes, article titles in each language, and full URLs. Useful for cross-language research and for discovering the correct article title in a target language before fetching it. A popular article exists in hundreds of editions, so pass editions to narrow the answer to the codes you care about — the codes with no article come back under missing, and total_languages still reports the full count. Redirect pages are followed automatically, and source_title reports the resolved article the links belong to. The language parameter specifies which edition to query from.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesArticle title in the source language edition. A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name.
editionsNoEdition codes to keep, e.g. ["fr", "de", "gsw"]. Each is matched case-insensitively against both edition_code and language_code, so either spelling of a mismatch edition finds it ("gsw" matches the edition whose edition_code is "als"). Omit to list every edition. A code with no article for this title is reported under missing rather than dropped, and is not a failure.
languageNoWikipedia language edition to query from (default "en"). Examples: "fr", "de", "ja".en

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNoPresent when the call failed. Absent on success.
missingNoRequested edition codes with no article for this title, echoed as they were passed. Present whenever editions was given — empty when every code matched — and absent otherwise.
languagesNoAvailable language editions excluding the source language. Narrowed to the requested codes when editions was given, and empty when none of them matched.
source_titleNoResolved article title in the source language edition — the redirect target when the input was an alias.
source_languageNoThe language edition that was queried.
total_languagesNoTotal number of other language editions the article has. Always the unfiltered count, so it exceeds the length of languages whenever editions narrowed the list.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and openWorldHint annotations, the description discloses important behaviors: redirects are followed automatically, source_title reports the resolved article, missing edition codes are returned under a missing field, and total_languages still reports the full count. This gives the agent a clear picture of edge-case behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core action and return value, then adds use-case context and behavioral details. Every sentence contributes useful information without fluff or repetition of the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema, read-only annotations, and detailed parameter documentation in the schema, the description is complete for an agent to select and invoke the tool correctly. It covers redirect handling, missing codes, total count, and the language edition behavior, leaving no material gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents all three parameters at 100% coverage, so the baseline is 3. The description adds meaningful semantics around editions, such as case-insensitive matching, the missing field behavior, and the fact that total_languages reflects the full count, going beyond the schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: "List the language editions available for a Wikipedia article," and enumerates the returned data (language codes, titles, URLs). This clearly distinguishes it from siblings like wikipedia_get_article and wikipedia_get_sections, which serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear context: use it for cross-language research and for discovering the correct article title in a target language before fetching it. It explains when narrowing with editions is useful, but it does not explicitly state when not to use this tool or name the alternative sibling to prefer in other cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wikipedia_get_sectionsGet Wikipedia Article SectionsA
Read-only
Inspect

Fetch the table of contents for a Wikipedia article. Returns section titles, heading levels, section numbering (e.g. "2.1"), and section_index values. The first entry is the lead section, index 0, titled Introduction — the text above the first heading, which Wikipedia's own table of contents omits. Pass a section_index to wikipedia_get_article to retrieve just that section. Useful for enumerating article structure before doing a targeted section read. Redirect pages are followed automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesArticle title (e.g. "Python (programming language)"). A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name.
languageNoWikipedia language edition code (default "en"). Examples: "fr", "de", "ja".en

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNoPresent when the call failed. Absent on success.
titleNoArticle title as resolved by Wikipedia.
pageidNoWikipedia page ID. Absent for stub articles.
languageNoLanguage edition queried.
sectionsNoArticle sections in document order with index values for targeted reads, led by the index-0 lead entry.
total_sectionsNoNumber of entries returned, counting the index-0 lead section.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint and openWorldHint. The description adds substantive behavioral details: the exact fields returned (titles, levels, numbering, section_index), the inclusion of the lead section at index 0, and automatic redirect following. These go well beyond the annotations and inform the agent of edge-case behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured: it opens with the main action and return types, then clarifies the lead-section nuance, then provides a usage pointer, and finally a note on redirects. Each sentence earns its place, though it is slightly dense with detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema (indicated), the description covers all necessary operational context: what is returned, how the lead section is handled, how to retrieve a specific section, and redirect behavior. No critical gaps remain for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already describes both parameters (title and language) with 100% coverage, including examples and constraints. The description adds no additional parameter-specific semantics beyond referencing section_index, which is a return value rather than an input. Baseline of 3 is appropriate since the schema carries the load.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Fetch' and a clear resource 'table of contents for a Wikipedia article'. It also names the sibling 'wikipedia_get_article' and explains how sections relate to it, making the tool's distinct role unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states the tool is useful for enumerating article structure before a targeted section read, and directly instructs passing a section_index to wikipedia_get_article to retrieve that section. This gives clear when-to-use guidance and a pointer to the alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wikipedia_get_summaryGet Wikipedia SummaryA
Read-only
Inspect

Fetch the short article summary that answers "what is X?". The extract is a truncated fragment from the start of the lead section — usually a sentence or two, and as little as a tenth of the lead — alongside the Wikidata QID (wikibase_item) for cross-referencing with wikidata-mcp-server, a short description, a thumbnail URL, the canonical article URL, the revision the extract was read from, and, for a geotagged article, latitude and longitude that pass straight to wikipedia_search_nearby to answer "what else is notable near this". For the lead section in full, call wikipedia_get_article with section_index 0. Redirect pages are followed automatically. When page_type is "disambiguation", the title matched a disambiguation page — call wikipedia_search_articles with a more specific query to find the intended article. Prefer this over wikipedia_get_article unless article depth is needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesArticle title (URL-decoded), e.g. "Python (programming language)". A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name.
languageNoWikipedia language edition code (default "en"). Examples: "fr", "de", "ja".en

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlNoCanonical desktop URL of the article (e.g. "https://en.wikipedia.org/wiki/Eiffel_Tower"), for citing the page rather than composing a URL from the title.
errorNoPresent when the call failed. Absent on success.
titleNoResolved article title (may differ from input for redirects).
pageidNoWikipedia page ID. Absent when the API omits it.
extractNoPlain-text summary extract — a truncated fragment from the start of the lead section, not the whole lead. Superscripts and subscripts stay apart from the text beside them (10²³, H₂O), as wikipedia_get_article renders them. Call wikipedia_get_article with section_index 0 for the full lead.
languageNoLanguage edition queried.
latitudeNoWGS 84 latitude of the article subject in decimal degrees. Pass with longitude to wikipedia_search_nearby, whose inputs carry these names, to find other notable articles around the same point. Absent for an article that is not geotagged.
longitudeNoWGS 84 longitude of the article subject in decimal degrees. Pass with latitude to wikipedia_search_nearby, whose inputs carry these names, to find other notable articles around the same point. Absent for an article that is not geotagged.
page_typeNoPage type from the Wikipedia REST API. Common values: "standard" (regular article), "disambiguation" (disambiguation page), "no-extract" (article with no extract). When "disambiguation", call wikipedia_search_articles with a more specific query.
descriptionNoShort description of the article subject.
revision_idNoID of the revision the extract was read from. "https://<edition>.wikipedia.org/w/index.php?oldid=<revision_id>" is a permanent link to exactly that version.
last_modifiedNoISO 8601 timestamp of that revision, for dating the content.
thumbnail_urlNoURL of the article thumbnail image, if available.
wikibase_itemNoWikidata QID (e.g. "Q28865"). Use to chain into wikidata-mcp-server without a separate lookup.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds valuable behavioral context beyond that: redirect pages are followed automatically, the extract is truncated to as little as a tenth of the lead, and disambiguation pages produce a specific page_type that requires a follow-up call. It doesn't describe pagination or error behavior, but for a read-only summary tool this is strong coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well-organized: it front-loads the core purpose, then lists return fields, then gives routing guidance. Every sentence earns its place, though the sentence listing return fields is long and could be slightly more scannable. It's appropriately sized for the complexity of the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is complete for an agent to select and invoke this tool correctly. It covers what the tool returns (including the QID for cross-referencing), how it behaves with redirects and disambiguation pages, when to prefer alternatives, and the geotag use case. The output schema exists, so return values don't need further explanation. Nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters (title and language) with examples and constraints. The description adds context about how the title maps to behavior (e.g., disambiguation pages) but doesn't add new parameter-level semantics beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ('Fetch the short article summary') and immediately distinguishes this tool from wikipedia_get_article by noting it returns a truncated fragment rather than the full lead section. It also names the sibling tools it routes to (wikipedia_search_articles, wikipedia_search_nearby), making its purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: 'Prefer this over wikipedia_get_article unless article depth is needed.' It also provides concrete alternative paths for disambiguation pages (call wikipedia_search_articles) and for full lead sections (call wikipedia_get_article with section_index 0), plus a geotag use case that routes to wikipedia_search_nearby. This is exemplary usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wikipedia_search_articlesSearch WikipediaA
Read-only
Inspect

Search Wikipedia articles by full-text query. Returns ranked results with plain-text titles, short descriptions, Wikidata QIDs, snippets (HTML stripped), page IDs, and word counts — the description is usually enough to tell same-named articles apart without a summary call per result. When Wikipedia has a spelling correction for the query, it is returned as suggestion. Best when the exact article title is unknown or when multiple articles on a topic are needed. Pass a result title to wikipedia_get_summary, wikipedia_get_article, or wikipedia_get_sections for follow-up reads. Use offset to page beyond the first result page. Supports all Wikipedia language editions.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results to return per page (default 10, max 50). Must be a positive integer.
queryYesSearch query (e.g. "Python programming language"). Must not be empty.
offsetNoResult offset for pagination (default 0). Pass the nextOffset from a previous response to fetch the next page; limit still governs the per-page size. An offset past the total match count returns an empty result array, not an error. Wikipedia serves no result past 10,000, so an offset at or beyond that fails — narrow the query instead.
languageNoWikipedia language edition code (default "en"). Examples: "fr", "de", "ja".en

Output Schema

ParametersJSON Schema
NameRequiredDescription
capNoThe result ceiling that cut this page — the search window. Present only alongside truncated.
errorNoPresent when the call failed. Absent on success.
shownNoNumber of results returned on this page.
noticeNoGuidance when no results matched (naming the spelling suggestion when there is one), when the end of results was reached while paging, when the page was cut at the search window, or when descriptions and Wikidata QIDs could not be loaded for the page. Absent on ordinary result pages.
offsetNoThe result offset applied to this page (echo of the input).
resultsNoRanked search results.
languageNoLanguage edition queried.
truncatedNoTrue when this page was cut at Wikipedia's 10,000-result search window and totalCount matches remain that no offset can reach. Absent on every other page, including a genuine last page.
nextOffsetNoOffset to request the next page. Present only when more results remain — pass it back as offset to continue; absent at the end of results.
suggestionNoWikipedia's spelling correction for the query, when it has one (e.g. "einstein" for "einstien"). Re-run with it as query to search the corrected spelling. Absent when the query has no likely misspelling.
totalCountNoTotal matching results in Wikipedia.
effectiveQueryNoThe query sent to Wikipedia.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations declare readOnlyHint=true and openWorldHint=true, so the safety profile is known, but the description adds behavioral context: it notes that results are ranked, snippets are HTML-stripped, and that a suggestion is returned when Wikipedia has a spelling correction. It also mentions the offset limit of 10,000, which is not in the schema description (the schema only gives a numerical bound). This adds value beyond the structured annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded, starting with the core purpose and then the key result characteristics. The first sentence covers purpose and result contents, and the follow-up sentences give usage guidance and pagination without waste. However, there is a slight repetition of offset information between the description and the schema description, which is minor, so I deduct one point for not being perfectly tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a search operation with an output schema provided (not shown but exists), so the description doesn't need to enumerate return fields—but it does anyway in the first sentence. It covers pagination behavior, suggestions, and language edition support. It also names the relevant siblings for follow-up. For a search tool, this is complete: an agent knows what it does, when to use it, what parameters are needed, and how to handle results. Especially with annotations covering safety and openness, nothing is missing that would prevent a correct call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, meaning all parameters (query, limit, offset, language) are described in the schema. However, the description adds meaningful context beyond the schema: it explains that 'limit' governs per-page size, that 'offset' can be derived from nextOffset in the response, and that an offset past the total count returns an empty array. It also clarifies language codes with examples. Since schema coverage is high, baseline is 3, but the description enriches semantics on four parameters, so a 4 is justified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs full-text search over Wikipedia articles, with a specific verb ('Search') and resource ('Wikipedia articles'). It distinguishes itself from siblings like wikipedia_get_summary and wikipedia_get_article by mentioning that results include descriptions and QIDs, which helps in differentiating among same-named articles. This is well-beyond a mere restatement of the name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says 'Best when the exact article title is unknown or when multiple articles on a topic are needed,' which clearly indicates when to use this tool. It also names the alternatives: 'Pass a result title to wikipedia_get_summary, wikipedia_get_article, or wikipedia_get_sections for follow-up reads,' and mentions pagination via offset. This provides both use cases and exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wikipedia_search_nearbySearch Wikipedia NearbyA
Read-only
Inspect

Find Wikipedia articles about places near a geographic coordinate. Returns articles sorted by distance from the query point, with titles, short descriptions, Wikidata QIDs, page IDs, coordinates, and distance in meters. Useful for "what is notable near X?" research workflows. Only articles carrying their own coordinate tag (GeoData, set on the article itself — not the Wikidata item's coordinate) are returned, and that tag is what places and measures each result; not all articles about locations are geotagged, and an article whose tag is wrong appears where the tag puts it, which its description usually makes plain.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results to return (default 10, max 500 — the MediaWiki geosearch ceiling). Must be a positive integer. Geosearch has no pagination, so articles past this limit are only reachable by raising it or searching narrower radii.
languageNoWikipedia language edition code (default "en"). Examples: "fr", "de", "ja".en
latitudeYesWGS 84 latitude in decimal degrees (range: −90 to 90).
longitudeYesWGS 84 longitude in decimal degrees (range: −180 to 180).
radius_metersNoSearch radius in meters (default 1000, min 10, max 10000 — the MediaWiki geosearch bounds). Must be an integer; a value above the maximum is clamped to it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
capNoThe limit that was applied.
errorNoPresent when the call failed. Absent on success.
shownNoNumber of results returned.
noticeNoGuidance when results were capped (raise limit, or — at the 500 ceiling — sweep narrower radii) or when no geotagged articles were found (increase radius). Absent when neither applies.
resultsNoGeotagged articles sorted ascending by distance_meters.
languageNoLanguage edition queried.
truncatedNoTrue when more articles matched than the limit allowed. Established by probing one result past the limit, so a match count landing exactly on the limit reports false — except at the 500 ceiling, where no probe is possible and any full page reports true.
queryLatitudeNoLatitude used for the search.
queryLongitudeNoLongitude used for the search.
radiusMetersUsedNoRadius in meters used for the search.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only provide readOnlyHint and openWorldHint; the description adds crucial behavioral caveats beyond annotations: results require an article's own GeoData tag, not the Wikidata item coordinate, the tag determines placement and measurement, and mis-tagged articles appear at the tag's location. This is exactly the kind of non-obvious behavior an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition front-loads the core purpose and return shape in the first two sentences, then spends one purposeful sentence on use case and one on the critical coordinate-tag caveat. No filler; the length is justified by the subtle behavior it must convey.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only search tool, it covers what it returns, how results are ordered, the search context, and the main data-quality caveat. The output schema handles return structure, and the schema handles bounds and pagination, so nothing needed to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema already documents all 5 parameters with 100% coverage, including defaults, bounds, and MediaWiki clamping/pagination caveats. The description adds no extra parameter semantics, so it meets the baseline but does not exceed it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+object: find Wikipedia articles about places near a geographic coordinate, and enumerates returned fields (titles, descriptions, QIDs, page IDs, coordinates, distance). This clearly separates it from sibling article-fetch and language tools; it is unmistakably a coordinate-based search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly frames the use case ('what is notable near X?' research workflows), giving clear context for when to invoke. It does not name sibling alternatives or state when not to use it, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updates
    • Changedwikipedia_get_article4 fields changed
      • changedOutput schema / properties / content / description
        Previous value: -"Plain-text article content. Both full articles and section reads carry == Section == markers above the text each one heads. When truncated is true, this instead carries a section outline (heading names and byte sizes) plus a pointer to the targeted-read path."New value: +"Plain-text article content. Both full articles and section reads carry == Section == markers above the text each one heads, code samples as ``` fenced blocks, and superscripts and subscripts as Unicode characters (10²³, H₂O), or as ^x / ^(…) and _x / _(…) where a character has none. Section reads also carry data tables as | cell | cell | rows with a | --- | row under the header. When truncated is true, this instead carries a section outline (heading names and byte sizes) plus a pointer to the targeted-read path."
      • addedOutput schema / properties / last_modified
        Added value: +{
        +  "description": "ISO 8601 timestamp of that revision, for dating the content. Full-article reads only; a section read carries none.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / revision_id
        Added value: +{
        +  "description": "ID of the revision the content was read from. \"https://<edition>.wikipedia.org/w/index.php?oldid=<revision_id>\" is a permanent link to exactly that version.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / url
        Added value: +{
        +  "description": "Canonical desktop URL of the article (e.g. \"https://en.wikipedia.org/wiki/Eiffel_Tower\"), for citing the page rather than composing a URL from the title.",
        +  "type": "string"
        +}
    • Changedwikipedia_get_summary1 field changed
      • changedOutput schema / properties / extract / description
        Previous value: -"Plain-text summary extract — a truncated fragment from the start of the lead section, not the whole lead. Call wikipedia_get_article with section_index 0 for the full lead."New value: +"Plain-text summary extract — a truncated fragment from the start of the lead section, not the whole lead. Superscripts and subscripts stay apart from the text beside them (10²³, H₂O), as wikipedia_get_article renders them. Call wikipedia_get_article with section_index 0 for the full lead."
  2. 2 tool updates
    • Changedwikipedia_search_articles4 fields changed
      • changedOutput schema / properties / notice / description
        Previous value: -"Guidance when no results matched, when the end of results was reached while paging, or when the page was cut at the search window. Absent on ordinary result pages."New value: +"Guidance when no results matched (naming the spelling suggestion when there is one), when the end of results was reached while paging, when the page was cut at the search window, or when descriptions and Wikidata QIDs could not be loaded for the page. Absent on ordinary result pages."
      • addedOutput schema / properties / results / items / properties / description
        Added value: +{
        +  "description": "Short description of the article subject (e.g. \"General-purpose programming language\"). Absent when the article has none, or when descriptions could not be loaded for the page (see notice).",
        +  "type": "string"
        +}
      • addedOutput schema / properties / results / items / properties / wikibase_item
        Added value: +{
        +  "description": "Wikidata QID (e.g. \"Q28865\") for chaining into wikidata-mcp-server. Absent when the article has no Wikidata item, or when it could not be loaded for the page (see notice).",
        +  "type": "string"
        +}
      • addedOutput schema / properties / suggestion
        Added value: +{
        +  "description": "Wikipedia's spelling correction for the query, when it has one (e.g. \"einstein\" for \"einstien\"). Re-run with it as query to search the corrected spelling. Absent when the query has no likely misspelling.",
        +  "type": "string"
        +}
    • Changedwikipedia_search_nearby6 fields changed
      • changedOutput schema / properties / notice / description
        Previous value: -"Guidance when results were capped (raise limit or sweep narrower radii) or when no geotagged articles were found (increase radius). Absent when neither applies."New value: +"Guidance when results were capped (raise limit, or — at the 500 ceiling — sweep narrower radii) or when no geotagged articles were found (increase radius). Absent when neither applies."
      • addedOutput schema / properties / results / items / properties / description
        Added value: +{
        +  "description": "Short description of the article subject (e.g. \"Tower in Paris, France\"). Absent when the article has none.",
        +  "type": "string"
        +}
      • changedOutput schema / properties / results / items / properties / latitude / description
        Previous value: -"Article subject latitude in decimal degrees."New value: +"Latitude of the article's own coordinate tag, in decimal degrees."
      • changedOutput schema / properties / results / items / properties / longitude / description
        Previous value: -"Article subject longitude in decimal degrees."New value: +"Longitude of the article's own coordinate tag, in decimal degrees."
      • addedOutput schema / properties / results / items / properties / wikibase_item
        Added value: +{
        +  "description": "Wikidata QID (e.g. \"Q243\") for chaining into wikidata-mcp-server. Absent when the article has no Wikidata item.",
        +  "type": "string"
        +}
      • changedOutput schema / properties / truncated / description
        Previous value: -"True when more articles matched than the limit allowed. Established by probing one result past the limit, so a match count landing exactly on the limit reports false."New value: +"True when more articles matched than the limit allowed. Established by probing one result past the limit, so a match count landing exactly on the limit reports false — except at the 500 ceiling, where no probe is possible and any full page reports true."
  3. 2 tool updates
    • Changedwikipedia_get_languages4 fields changed
      • addedInput schema / properties / editions
        Added value: +{
        +  "description": "Edition codes to keep, e.g. [\"fr\", \"de\", \"gsw\"]. Each is matched case-insensitively against both edition_code and language_code, so either spelling of a mismatch edition finds it (\"gsw\" matches the edition whose edition_code is \"als\"). Omit to list every edition. A code with no article for this title is reported under missing rather than dropped, and is not a failure.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • changedOutput schema / properties / languages / description
        Previous value: -"Available language editions excluding the source language."New value: +"Available language editions excluding the source language. Narrowed to the requested codes when editions was given, and empty when none of them matched."
      • addedOutput schema / properties / missing
        Added value: +{
        +  "description": "Requested edition codes with no article for this title, echoed as they were passed. Present whenever editions was given — empty when every code matched — and absent otherwise.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / total_languages / description
        Previous value: -"Total number of other language editions available."New value: +"Total number of other language editions the article has. Always the unfiltered count, so it exceeds the length of languages whenever editions narrowed the list."
    • Changedwikipedia_get_summary5 fields changed
      • addedOutput schema / properties / last_modified
        Added value: +{
        +  "description": "ISO 8601 timestamp of that revision, for dating the content.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / latitude
        Added value: +{
        +  "description": "WGS 84 latitude of the article subject in decimal degrees. Pass with longitude to wikipedia_search_nearby, whose inputs carry these names, to find other notable articles around the same point. Absent for an article that is not geotagged.",
        +  "type": "number"
        +}
      • addedOutput schema / properties / longitude
        Added value: +{
        +  "description": "WGS 84 longitude of the article subject in decimal degrees. Pass with latitude to wikipedia_search_nearby, whose inputs carry these names, to find other notable articles around the same point. Absent for an article that is not geotagged.",
        +  "type": "number"
        +}
      • addedOutput schema / properties / revision_id
        Added value: +{
        +  "description": "ID of the revision the extract was read from. \"https://<edition>.wikipedia.org/w/index.php?oldid=<revision_id>\" is a permanent link to exactly that version.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / url
        Added value: +{
        +  "description": "Canonical desktop URL of the article (e.g. \"https://en.wikipedia.org/wiki/Eiffel_Tower\"), for citing the page rather than composing a URL from the title.",
        +  "type": "string"
        +}
  4. 5 tool updates
    • Changedwikipedia_get_article8 fields changed
      • changedInput schema / properties / section_index / description
        Previous value: -"Section index from wikipedia_get_sections. Omit for the full article. Providing this returns the targeted section plus every subsection nested under it, as plain text."New value: +"Section index from wikipedia_get_sections. 0 reads the lead section (Introduction) — the text above the first heading. Omit for the full article. Providing this returns the targeted section plus every subsection nested under it, as plain text."
      • addedInput schema / properties / section_index / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / section_index / minimum
        Added value: +0
      • changedInput schema / properties / section_index / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / title / description
        Previous value: -"Article title (e.g. \"Python (programming language)\")."New value: +"Article title (e.g. \"Python (programming language)\"). A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name."
      • changedOutput schema / properties / error / properties / data / properties / reason / description
        Previous value: -"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the given title. `invalid_section`: The section_index is out of range for this article. `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the given title. `invalid_title`: The title contains characters MediaWiki cannot name a page with. `invalid_section`: The section_index is out of range for this article. `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."
      • changedOutput schema / properties / error / properties / data / properties / reason / examples
        Previous value: -[
        -  "not_found",
        -  "invalid_section",
        -  "invalid_language"
        -]New value: +[
        +  "not_found",
        +  "invalid_title",
        +  "invalid_section",
        +  "invalid_language"
        +]
      • changedOutput schema / properties / section_title / description
        Previous value: -"Section title when section_index was provided. Absent for full-article reads."New value: +"Section title when section_index was provided — \"Introduction\" for the lead, which has no heading of its own. Absent for full-article reads."
    • Changedwikipedia_get_languages3 fields changed
      • changedInput schema / properties / title / description
        Previous value: -"Article title in the source language edition."New value: +"Article title in the source language edition. A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name."
      • changedOutput schema / properties / error / properties / data / properties / reason / description
        Previous value: -"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the title in the specified language. `no_other_languages`: Article exists but has no other language editions. `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the title in the specified language. `invalid_title`: The title contains characters MediaWiki cannot name a page with. `no_other_languages`: Article exists but has no other language editions. `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."
      • changedOutput schema / properties / error / properties / data / properties / reason / examples
        Previous value: -[
        -  "not_found",
        -  "no_other_languages",
        -  "invalid_language"
        -]New value: +[
        +  "not_found",
        +  "invalid_title",
        +  "no_other_languages",
        +  "invalid_language"
        +]
    • Changedwikipedia_get_sections9 fields changed
      • changedInput schema / properties / title / description
        Previous value: -"Article title (e.g. \"Python (programming language)\")."New value: +"Article title (e.g. \"Python (programming language)\"). A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name."
      • changedOutput schema / properties / error / properties / data / properties / reason / description
        Previous value: -"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the given title. `no_sections`: Article exists but has no sections (stub or very short article). `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the given title. `invalid_title`: The title contains characters MediaWiki cannot name a page with. `no_sections`: Article exists but has no sections (stub or very short article). `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."
      • changedOutput schema / properties / error / properties / data / properties / reason / examples
        Previous value: -[
        -  "not_found",
        -  "no_sections",
        -  "invalid_language"
        -]New value: +[
        +  "not_found",
        +  "invalid_title",
        +  "no_sections",
        +  "invalid_language"
        +]
      • changedOutput schema / properties / sections / description
        Previous value: -"Ordered list of article sections with index values for targeted reads."New value: +"Article sections in document order with index values for targeted reads, led by the index-0 lead entry."
      • changedOutput schema / properties / sections / items / properties / index / description
        Previous value: -"Section index — pass to wikipedia_get_article as section_index."New value: +"Section index — pass to wikipedia_get_article as section_index. 0 is the lead section."
      • changedOutput schema / properties / sections / items / properties / level / description
        Previous value: -"Heading depth: 2 = ==, 3 = ===, etc."New value: +"Heading depth: 2 = ==, 3 = ===, etc. The lead section reports 1."
      • changedOutput schema / properties / sections / items / properties / number / description
        Previous value: -"Section number (e.g. \"2.1\") for hierarchical navigation."New value: +"Section number (e.g. \"2.1\") for hierarchical navigation; \"0\" for the lead section."
      • changedOutput schema / properties / sections / items / properties / title / description
        Previous value: -"Section heading text."New value: +"Section heading text; \"Introduction\" for the lead, which has no heading."
      • changedOutput schema / properties / total_sections / description
        Previous value: -"Total number of sections in the article."New value: +"Number of entries returned, counting the index-0 lead section."
    • Changedwikipedia_get_summary4 fields changed
      • changedInput schema / properties / title / description
        Previous value: -"Article title (URL-decoded), e.g. \"Python (programming language)\"."New value: +"Article title (URL-decoded), e.g. \"Python (programming language)\". A trailing #fragment is accepted and ignored; the characters < > [ ] { } and | cannot appear in a Wikipedia page name."
      • changedOutput schema / properties / error / properties / data / properties / reason / description
        Previous value: -"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the given title. `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `not_found`: No Wikipedia article exists for the given title. `invalid_title`: The title contains characters MediaWiki cannot name a page with. `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."
      • changedOutput schema / properties / error / properties / data / properties / reason / examples
        Previous value: -[
        -  "not_found",
        -  "invalid_language"
        -]New value: +[
        +  "not_found",
        +  "invalid_title",
        +  "invalid_language"
        +]
      • changedOutput schema / properties / extract / description
        Previous value: -"Plain-text lead-section extract."New value: +"Plain-text summary extract — a truncated fragment from the start of the lead section, not the whole lead. Call wikipedia_get_article with section_index 0 for the full lead."
    • Changedwikipedia_search_articles8 fields changed
      • changedInput schema / properties / limit / maximum
        Previous value: -9007199254740991New value: +50
      • changedInput schema / properties / offset / description
        Previous value: -"Result offset for pagination (default 0). Pass the nextOffset from a previous response to fetch the next page; limit still governs the per-page size. An offset past the total match count returns an empty result array, not an error."New value: +"Result offset for pagination (default 0). Pass the nextOffset from a previous response to fetch the next page; limit still governs the per-page size. An offset past the total match count returns an empty result array, not an error. Wikipedia serves no result past 10,000, so an offset at or beyond that fails — narrow the query instead."
      • changedInput schema / properties / query / description
        Previous value: -"Search query (e.g. \"Python programming language\")."New value: +"Search query (e.g. \"Python programming language\"). Must not be empty."
      • addedOutput schema / properties / cap
        Added value: +{
        +  "description": "The result ceiling that cut this page — the search window. Present only alongside truncated.",
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • changedOutput schema / properties / error / properties / data / properties / reason / description
        Previous value: -"Machine-readable failure mode. Declared by this tool: `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `empty_query`: The query is an empty string, which Wikipedia reads as a missing parameter. `offset_too_large`: The offset is at or past the search window, which has no continuation. `invalid_language`: The language is not a valid BCP 47 code, or names a Wikipedia edition that does not exist. Other values are possible when a failure originates below the handler."
      • changedOutput schema / properties / error / properties / data / properties / reason / examples
        Previous value: -[
        -  "invalid_language"
        -]New value: +[
        +  "empty_query",
        +  "offset_too_large",
        +  "invalid_language"
        +]
      • changedOutput schema / properties / notice / description
        Previous value: -"Guidance when no results matched — e.g. try different keywords, or that the end of results was reached when paging. Absent on successful result pages."New value: +"Guidance when no results matched, when the end of results was reached while paging, or when the page was cut at the search window. Absent on ordinary result pages."
      • addedOutput schema / properties / truncated
        Added value: +{
        +  "description": "True when this page was cut at Wikipedia's 10,000-result search window and totalCount matches remain that no offset can reach. Absent on every other page, including a genuine last page.",
        +  "type": "boolean"
        +}
  5. 6 tool updates
    • First observedwikipedia_get_article
    • First observedwikipedia_get_languages
    • First observedwikipedia_get_sections
    • First observedwikipedia_get_summary
    • First observedwikipedia_search_articles
    • First observedwikipedia_search_nearby

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Search Wikipedia's ~50,000 Vital Articles from a local index and retrieve article summaries, infobox facts, and specific section text.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides comprehensive access to Wikipedia content including article search, full text retrieval, summaries, categories, links, images, language versions, and external references through 9 specialized tools.
    26 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.