RuneScape Wiki

RS3 Grand Exchange prices, item lookup, player hiscores, and RuneScape Wiki content

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
96%
Vollständigkeit des Schemas
84%
Qualität der Benennung
93%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (1)

  • LOWTool 'estimate_flip' description lacks action verbin estimate_flip

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~3,090Tokens (Tool-Definitionen)
~2.2 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.41% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "runescape-wiki-mcp": {
      "command": "npx",
      "args": [
        "runescape-wiki-mcp"
      ]
    }
  }
}

Ausführbare Pakete

npmrunescape-wiki-mcp1.2.0stdio

Remote-Endpunkte

https://runescape-wiki-mcp.fly.dev/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (12)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢lookup_item(query, limit)

Resolve 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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "description": "Item name or partial name to search for"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Max matches to return (default 5)"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "matches": {
      "type": "array",
      "description": "Matching Grand Exchange items, best match first",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Grand Exchange item ID"
          },
          "name": {
            "type": "string",
            "description": "Item name"
          },
          "price": {
            "type": "number",
            "description": "Latest price in coins, when known"
          },
          "volume": {
            "type": "number",
            "description": "Latest trade volume, when known"
          },
          "timestamp": {
            "type": "string",
            "description": "ISO timestamp of the price sample"
          },
          "wikiUrl": {
            "type": "string",
            "description": "RuneScape Wiki page URL"
          },
          "error": {
            "type": "string",
            "description": "Why this row could not be resolved"
          }
        },
        "required": [
          "id",
          "name"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "matches"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_item_graph(itemId, name)

Read 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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "itemId": {
      "type": "integer",
      "minimum": 0,
      "description": "Grand Exchange item ID (provide itemId or name)"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "description": "Item name (provide itemId or name)"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Raw Jagex JSON. Price fields may be integers or compact strings such as \"80k\".",
  "additionalProperties": true
}
🟢get_item_price(itemId, name)

Get current Grand Exchange price, trends, and examine text for an item. Pass exactly one of itemId or name.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "itemId": {
      "type": "integer",
      "minimum": 0,
      "description": "Grand Exchange item ID (provide itemId or name)"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "description": "Item name (provide itemId or name). Prefer lookup_item for fuzzy search."
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Raw Jagex JSON. Price fields may be integers or compact strings such as \"80k\".",
  "additionalProperties": true
}
🟢get_ge_info

Read 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.

Eingabe-Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Raw Jagex JSON. Price fields may be integers or compact strings such as \"80k\".",
  "additionalProperties": true
}
🟢get_category_info(category)

Get letter counts for a Grand Exchange category. Use get_all_categories for IDs.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "category": {
      "type": "integer",
      "minimum": 0,
      "maximum": 43,
      "description": "Category ID (0-43)"
    }
  },
  "required": [
    "category"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_all_categories

List all RS3 Grand Exchange category IDs and names (0-43).

Eingabe-Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢browse_items(category, alpha, page)

Browse the Grand Exchange catalogue by category and starting letter. This is NOT a name search — use lookup_item for that. Use # for numeric names.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "category": {
      "type": "integer",
      "minimum": 0,
      "maximum": 43,
      "description": "Category ID (0-43)"
    },
    "alpha": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1,
      "description": "Starting letter (a-z) or # for numbers. Defaults to \"a\"."
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number (starting from 1)"
    }
  },
  "required": [
    "category"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢summarize_price_history(itemId, name, days)

Summarize 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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "itemId": {
      "type": "integer",
      "minimum": 0,
      "description": "Grand Exchange item ID (provide itemId or name)"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "description": "Item name (provide itemId or name)"
    },
    "days": {
      "type": "integer",
      "minimum": 7,
      "maximum": 90,
      "description": "Size of the trailing window in days (7-90, default 30)"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "itemId": {
      "type": "integer",
      "description": "Grand Exchange item ID"
    },
    "name": {
      "type": "string",
      "description": "Name supplied by the caller, when given"
    },
    "windowDays": {
      "type": "integer",
      "description": "Trailing window actually summarized"
    },
    "sampleCount": {
      "type": "integer",
      "description": "Daily samples inside the window"
    },
    "latestPrice": {
      "type": "number",
      "description": "Newest price in the window, in coins"
    },
    "oldestPriceInWindow": {
      "type": "number",
      "description": "Oldest price in the window, in coins"
    },
    "minPrice": {
      "type": "number",
      "description": "Lowest price in the window, in coins"
    },
    "maxPrice": {
      "type": "number",
      "description": "Highest price in the window, in coins"
    },
    "avgPrice": {
      "type": "number",
      "description": "Average price in the window, in coins"
    },
    "changeAbs": {
      "type": "number",
      "description": "latestPrice minus oldestPriceInWindow"
    },
    "changePct": {
      "type": "number",
      "description": "Percent change across the window"
    },
    "avgDailyVolume": {
      "type": "number",
      "description": "Average daily volume, when the source provided it"
    }
  },
  "required": [
    "itemId",
    "windowDays",
    "sampleCount",
    "latestPrice",
    "oldestPriceInWindow",
    "minPrice",
    "maxPrice",
    "avgPrice",
    "changeAbs",
    "changePct"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢compare_items(names, itemIds)

Compare 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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "names": {
      "type": "array",
      "minItems": 1,
      "maxItems": 10,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "minLength": 1,
        "description": "Item name, e.g. \"Abyssal whip\""
      },
      "description": "Item names to compare (1-10). Provide names or itemIds, not both."
    },
    "itemIds": {
      "type": "array",
      "minItems": 1,
      "maxItems": 10,
      "uniqueItems": true,
      "items": {
        "type": "integer",
        "minimum": 0,
        "description": "Grand Exchange item ID"
      },
      "description": "Grand Exchange item IDs to compare (1-10). Provide names or itemIds, not both."
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "compared": {
      "type": "integer",
      "description": "Number of rows returned"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Name or id that was requested"
          },
          "id": {
            "type": "integer",
            "description": "Grand Exchange item ID"
          },
          "name": {
            "type": "string"
          },
          "price": {
            "type": "number",
            "description": "Latest price in coins"
          },
          "volume": {
            "type": "number"
          },
          "timestamp": {
            "type": "string"
          },
          "error": {
            "type": "string",
            "description": "Present when this row could not be resolved"
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "compared",
    "rows"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢estimate_flip(itemId, name, buyPrice, sellPrice, quantity)

Estimate 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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "itemId": {
      "type": "integer",
      "minimum": 0,
      "description": "Grand Exchange item ID (provide itemId or name)"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "description": "Item name (provide itemId or name). Prefer lookup_item for fuzzy search."
    },
    "buyPrice": {
      "type": "integer",
      "minimum": 0,
      "description": "Buy price per item in coins. Defaults to the current market price."
    },
    "sellPrice": {
      "type": "integer",
      "minimum": 0,
      "description": "Sell price per item in coins. Defaults to the current market price."
    },
    "quantity": {
      "type": "integer",
      "minimum": 1,
      "description": "Number of items to flip (default 1)"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "itemId": {
      "type": "integer"
    },
    "itemName": {
      "type": "string"
    },
    "quantity": {
      "type": "integer"
    },
    "buyPrice": {
      "type": "number",
      "description": "Buy price per item in coins"
    },
    "sellPrice": {
      "type": "number",
      "description": "Sell price per item in coins"
    },
    "taxRate": {
      "type": "number"
    },
    "taxPerUnit": {
      "type": "number"
    },
    "totalTax": {
      "type": "number"
    },
    "grossProfit": {
      "type": "number"
    },
    "netProfit": {
      "type": "number"
    },
    "netProfitPerUnit": {
      "type": "number"
    },
    "marginPct": {
      "type": [
        "number",
        "null"
      ]
    },
    "breakEvenSellPrice": {
      "type": "number"
    },
    "assumptions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "itemId",
    "quantity",
    "buyPrice",
    "sellPrice",
    "netProfit"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Flip estimate after the RS3 2% seller tax. marginPct is null when the buy cost is 0.",
  "additionalProperties": true
}
🟢get_player_stats(username, gameMode)

Get 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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "username": {
      "type": "string",
      "minLength": 1,
      "description": "Player username to lookup"
    },
    "gameMode": {
      "type": "string",
      "enum": [
        "normal",
        "ironman",
        "hardcore"
      ],
      "description": "Hiscores board (default: normal)",
      "default": "normal"
    }
  },
  "required": [
    "username"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Map of RS3 skill name to hiscores row. Overall is included.",
  "additionalProperties": {
    "type": "object",
    "properties": {
      "rank": {
        "description": "Hiscores rank, or the string Unranked",
        "anyOf": [
          {
            "type": "integer"
          },
          {
            "const": "Unranked"
          }
        ]
      },
      "level": {
        "type": "integer",
        "description": "Skill level"
      },
      "experience": {
        "type": "integer",
        "description": "Skill experience"
      }
    },
    "required": [
      "rank",
      "level",
      "experience"
    ],
    "additionalProperties": false
  }
}
🟢get_wiki_page_content(page)

Fetch plain-text content of a RuneScape Wiki page. Follows redirects. Prefer exact titles; use lookup_item or wiki search when unsure.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "page": {
      "type": "string",
      "minLength": 1,
      "description": "Wiki page title (spaces allowed; redirects are followed)"
    }
  },
  "required": [
    "page"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet12 Tools