RuneScape Wiki
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
RS3 Grand Exchange prices, item lookup, player hiscores, and RuneScape Wiki content
| Author | io.github.birdwell |
|---|---|
| Access | mixed |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2166 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"RuneScape Wiki": {
"url": "https://runescape-wiki-mcp.fly.dev/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (12)
lookup_itemread-onlyResolve an item name to Grand Exchange ID and latest price. Uses exact name match first, then wiki opensearch. Prefer this before get_item_price when you only know the name.
Parameters:
query(required) — string — Item name or partial name to search forlimit— integer — Max matches to return (default 5)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_item_graphread-onlyRead the public Jagex Grand Exchange daily price series for one item, about the last 180 days. Pass exactly one of itemId or name. No auth and no side effects. Use summarize_price_history for min, max, and average instead of the raw series.
Parameters:
name— string — Item name (provide itemId or name)itemId— integer — Grand Exchange item ID (provide itemId or name)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_item_priceread-onlyGet current Grand Exchange price, trends, and examine text for an item. Pass exactly one of itemId or name.
Parameters:
name— string — Item name (provide itemId or name). Prefer lookup_item for fuzzy search.itemId— integer — Grand Exchange item ID (provide itemId or name)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_ge_inforead-onlyRead Grand Exchange database metadata, including lastConfigUpdateRuneday. This is not item prices; use get_item_price or lookup_item for those. Takes no arguments. Public Jagex endpoint, no auth.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_category_inforead-onlyGet letter counts for a Grand Exchange category. Use get_all_categories for IDs.
Parameters:
category(required) — integer — Category ID (0-43)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_all_categoriesread-onlyList all RS3 Grand Exchange category IDs and names (0-43).
Hints: read-only yes · destructive no · idempotent yes · open-world yes
browse_itemsread-onlyBrowse the Grand Exchange catalogue by category and starting letter. This is NOT a name search — use lookup_item for that. Use # for numeric names.
Parameters:
category(required) — integer — Category ID (0-43)page— integer — Page number (starting from 1)alpha— string — Starting letter (a-z) or # for numbers. Defaults to "a".
Hints: read-only yes · destructive no · idempotent yes · open-world yes
summarize_price_historyread-onlySummarize one item's recent Grand Exchange prices: min, max, average, change, and average daily volume. Pass exactly one of itemId or name, and optional days from 7 to 90 (default 30). Use get_item_graph for the full daily series.
Parameters:
days— integer — Size of the trailing window in days (7-90, default 30)name— string — Item name (provide itemId or name)itemId— integer — Grand Exchange item ID (provide itemId or name)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
compare_itemsread-onlyCompare latest Grand Exchange prices for up to 10 items in one call. Provide either names or itemIds. Returns one row per entry with id, name, price, volume and timestamp; entries that cannot be resolved come back as error rows instead of failing the call.
Parameters:
names— array — Item names to compare (1-10). Provide names or itemIds, not both.itemIds— array — Grand Exchange item IDs to compare (1-10). Provide names or itemIds, not both.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
estimate_flipread-onlyEstimate Grand Exchange flip profit after the 2% RS3 sales tax for an item, by itemId or name. This is an ESTIMATE ONLY: guide prices lag the live market, buy limits and fill times are not modelled, and actual profit will differ. Pass buyPrice/sellPrice to model your own offers.
Parameters:
name— string — Item name (provide itemId or name). Prefer lookup_item for fuzzy search.itemId— integer — Grand Exchange item ID (provide itemId or name)buyPrice— integer — Buy price per item in coins. Defaults to the current market price.quantity— integer — Number of items to flip (default 1)sellPrice— integer — Sell price per item in coins. Defaults to the current market price.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_player_statsread-onlyGet RS3 hiscores for a player. Normal mode works via Jagex index_lite. Ironman/hardcore use documented Jagex endpoints that currently return HTTP 404; the tool reports that clearly instead of falling back to normal data.
Parameters:
username(required) — string — Player username to lookupgameMode— string — Hiscores board (default: normal)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_wiki_page_contentread-onlyFetch plain-text content of a RuneScape Wiki page. Follows redirects. Prefer exact titles; use lookup_item or wiki search when unsure.
Parameters:
page(required) — string — Wiki page title (spaces allowed; redirects are followed)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.