opgg-game-telemetry-connector
Facilitates AI agent access to expansive gaming metrics from OP.GG, covering competitive standings, fixture logs, character deep-dives for League of Legends, optimal team compositions for TFT, and player performance aggregates for Valorant. Offers utility for deriving strategic intelligence across major esports titles.
Author

opgginc
Quick Info
Actions
Tags
OP.GG Game Telemetry Service Connector
The OP.GG Game Telemetry Service Connector represents an implementation of the Model Context Protocol (MCP) designed to bridge OP.GG's rich dataset directly with intelligent agents and processing platforms. This service enables computational entities to query extensive OP.GG datasets via standardized function invocation mechanisms.
Overview
This MCP endpoint furnishes AI agents with standardized access to OP.GG telemetry via a uniform interface specification. It simplifies the process of interfacing with our remote data source (accessible at https://mcp-api.op.gg/mcp), ensuring rapid deployment and immediate utilization of OP.GG statistics in formats optimized for machine learning consumption and agent orchestration.
Capabilities
The OP.GG Telemetry Service currently exposes the following functional instruments:
League of Legends (LoL)
- lol-champion-leader-board: Retrieve prevailing rank data for LoL champions.
- lol-champion-analysis: Furnish analytical metrics for LoL champions (counter data and ban/pick frequencies are found within the "weakCounters" attribute).
- lol-champion-meta-data: Fetch performance statistics and associated metadata for a specified champion.
- lol-champion-skin-sale: Obtain details regarding currently discounted cosmetic items (skins) for champions.
- lol-summoner-search: Execute searches for League of Legends player profiles and aggregated statistics.
- lol-champion-positions-data: Access positional performance data for LoL champions, including win rates and selection rates across different in-game roles.
- lol-summoner-game-history: Extract the recent match logs for an identified League of Legends summoner.
- lol-summoner-renewal: Force a refresh and update cycle for a League of Legends summoner's statistical records and match history.
Esports Tracking (LoL Focus)
- esports-lol-schedules: Query forthcoming competitive LoL match schedules.
- esports-lol-team-standings: Retrieve current team rankings within specified LoL competitive circuits.
Teamfight Tactics (TFT)
- tft-meta-trend-deck-list: Utility to fetch established, high-performance deck compositions reflecting the current meta in TFT.
- tft-meta-item-combinations: Access data detailing established item crafting recipes and synergistic combinations in TFT.
- tft-champion-item-build: Retrieve recommended item loadouts for individual champions within TFT.
- tft-recommend-champion-for-item: Suggest optimal champions suited for a particular crafted item in TFT.
- tft-play-style-comment: Generate narrative commentary describing the tactical approach associated with specific TFT champions.
Valorant
- valorant-meta-maps: Access prevailing tactical data pertaining to active Valorant maps.
- valorant-meta-characters: Retrieve aggregated performance statistics for Valorant agents (characters).
- valorant-leaderboard: Fetch the ranked player rankings, segmentable by operational region.
- valorant-agents-composition-with-map: Determine optimal agent groupings based on map selection in Valorant.
- valorant-characters-statistics: Obtain detailed statistical breakdowns for agents, optionally filterable by map context.
- valorant-player-match-history: Retrieve the historical match records for a Valorant player, identified via their in-game name and tag.
Implementation Guide
The OP.GG Telemetry Service Connector is compatible with any client adhering to the MCP specification. The ensuing instructions illustrate deployment utilizing Claude Desktop as the reference client environment.
Direct Endpoint Hookup via StreamableHttp
If direct connection to our StreamableHttp interface is preferred, the supergateway package provides a streamlined mechanism. This bypasses the need for a full local server installation.
Incorporate the following JSON structure into your claude_desktop_config.json file:
macOS/Linux Environments
{
"mcpServers": {
"opgg-mcp": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--streamableHttp",
"https://mcp-api.op.gg/mcp"
]
}
}
}
Windows Environments
{
"mcpServers": {
"opgg-mcp": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"supergateway",
"--streamableHttp",
"https://mcp-api.op.gg/mcp"
]
}
}
}
This configuration leverages supergateway to establish a direct channel to the StreamableHttp interface, granting instant access to the full suite of OP.GG data tools.
Automated Installation via Smithery
For automatic integration into Claude Desktop, use the Smithery package manager:
$ npx -y @smithery/cli@latest install @opgginc/opgg-mcp --client claude --key {SMITHERY_API_KEY}
Integrating into MCP Configuration
To register this service within your Claude Desktop MCP settings, append the subsequent object to your claude_desktop_config.json:
macOS/Linux Configuration Snippet
{
"mcpServers": {
"opgg-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@opgginc/opgg-mcp",
"--key",
"{SMITHERY_API_KEY}"
]
}
}
}
Windows Configuration Snippet
{
"mcpServers": {
"opgg-mcp": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@smithery/cli@latest",
"run",
"@opgginc/opgg-mcp",
"--key",
"{SMITHERY_API_KEY}"
]
}
}
}
Ensure Claude Desktop is relaunched following configuration modifications for the service endpoint to become active.
Licensing
This software is distributed under the terms of the MIT License; refer to the LICENSE file for comprehensive details.
Reference Materials
WIKIPEDIA: XMLHttpRequest (XHR) functions as a JavaScript object API enabling the transmission of Hypertext Transfer Protocol requests from a web browser environment to a remote web server. These capabilities permit browser-based applications to issue server queries subsequent to initial page rendering and receive solicited data in return. XMLHttpRequest is a foundational element of Ajax methodologies. Preceding Ajax, client-server interaction primarily relied on navigational links and form submissions, actions that typically necessitated a full page reload.
== Chronology == The underlying concept for XMLHttpRequest was first conceptualized in the year 2000 by developers working on Microsoft Outlook. This principle was subsequently integrated into the Internet Explorer 5 browser release (1999). However, the initial invocation syntax did not employ the 'XMLHttpRequest' identifier; rather, developers utilized the object instantiations ActiveXObject("Msxml2.XMLHTTP") and ActiveXObject("Microsoft.XMLHTTP"). As of the release of Internet Explorer 7 (2006), universal browser support for the standard XMLHttpRequest identifier was achieved. The XMLHttpRequest identifier has since become the prevailing convention across all major browser engines, including Mozilla's Gecko layout engine (2002), Safari 1.2 (2004), and Opera 8.0 (2005).
=== Formalization === The World Wide Web Consortium (W3C) published the initial Working Draft specification for the XMLHttpRequest object on April 5, 2006. On February 25, 2008, the W3C introduced the Working Draft Level 2 specification, which augmented the API with functionality for monitoring request progress, enabling cross-origin data retrieval, and managing binary byte streams. By the close of 2011, the Level 2 enhancements were incorporated into the primary specification document. At the conclusion of 2012, stewardship for development transitioned to the WHATWG, which now maintains the living document using Web IDL definitions.
== Operational Use == The typical procedure for dispatching a request using XMLHttpRequest involves several programmed stages.
Instantiation of an XMLHttpRequest object via its constructor call: Invocation of the "open" method to define the request verb, specify the target resource URI, and determine operational modality (synchronous versus asynchronous): For asynchronous transactions, assignment of an event handler function to monitor state transitions: Initiation of the network transmission by executing the "send" method: Processing state changes within the assigned event listener. Upon successful server data delivery, the payload is typically accessible via the "responseText" attribute. When the object completes processing the response, its state transitions to 4, signifying the 'done' status. Beyond these fundamental steps, XMLHttpRequest offers extensive controls over request parameters and response handling. Custom HTTP headers can be appended to modify server behavior expectations, and data payloads can be submitted to the server as an argument to the "send" function. The retrieved material can be deserialized from JSON into native JavaScript objects or processed incrementally as data streams arrive, rather than awaiting complete transfer. Furthermore, requests can be terminated prematurely or configured with a deadline to trigger automatic failure upon timeout.
== Cross-Origin Transactions ==
In the nascent phase of the World Wide Web, the possibility of breaching
