Skip to main content
Glama

tf2-wiki-mcp

An MCP server that exposes the Team Fortress Wiki to LLM clients (Claude Desktop, Claude Code, Cursor, VS Code) over stdio.

Install in VS Code Install in VS Code Insiders Install in Visual Studio Install in Cursor

Not affiliated with Valve Corporation or the Team Fortress Wiki contributors. Team Fortress 2 is a trademark of Valve Corporation. This is unofficial fan tooling.

What it does

Gives an LLM live, accurate access to TF2 wiki content so it stops guessing at weapon stats, patch notes, and cosmetic details.

  • Generic wiki access — search, fetch pages, get summaries, list recent changes.

  • TF2 domain tools — structured weapon stats, class loadouts, cosmetic lookup, event item lists, patch notes.

Tools

Tool

Purpose

search_wiki(query, limit)

Full-text search

get_page(title, format)

Page content as wikitext, plain, or html

get_page_summary(title)

Lead-section plaintext

get_page_sections(title)

Section TOC for selective fetching

get_recent_changes(limit, namespace)

Recently edited pages

get_weapon_stats(weapon_name)

Parsed weapon infobox → structured stats

list_class_loadout(class_name)

All weapons in a class's wiki category

get_cosmetic(name)

Cosmetic item infobox params

list_event_items(event_name)

Items added in an update/event

get_patch_notes(update_name)

Patch notes for a specific update

Plus: resource tf2wiki://main, prompts analyze_loadout and compare_weapons.

Related MCP server: MediaWiki MCP Server

Installation

Requires uv (which manages the Python toolchain for you). Once installed, uvx tf2-wiki-mcp will fetch and run the server on demand — no manual clone needed.

Standard config works in most MCP clients:

{
  "mcpServers": {
    "tf2-wiki-mcp": {
      "command": "uvx",
      "args": ["tf2-wiki-mcp"],
      "env": {}
    }
  }
}

Add the standard config above to claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Restart Claude Desktop. The TF2 wiki tools appear in the tool picker.

claude mcp add tf2-wiki-mcp -- uvx tf2-wiki-mcp

Add to ~/.codex/config.toml:

[mcp_servers.tf2-wiki-mcp]
command = "uvx"
args = ["tf2-wiki-mcp"]

See the Codex MCP docs.

Install in Cursor

Or add the standard config to ~/.cursor/mcp.json.

Add the standard config to your Gemini CLI settings.json per the Gemini CLI MCP guide.

Install in VS Code

Or via the VS Code CLI:

code --add-mcp '{"name":"tf2-wiki-mcp","command":"uvx","args":["tf2-wiki-mcp"],"env":{}}'

See the VS Code MCP guide for details.

Install in VS Code Insiders

Or via the CLI:

code-insiders --add-mcp '{"name":"tf2-wiki-mcp","command":"uvx","args":["tf2-wiki-mcp"],"env":{}}'

Install in Visual Studio

Or manually:

  1. Open the GitHub Copilot Chat window.

  2. Click the tools icon (🛠️) → + Add Server.

  3. Fill in: Server ID tf2-wiki-mcp, Type stdio, Command uvx, Arguments tf2-wiki-mcp.

  4. Save.

See the Visual Studio MCP docs.

{
  "mcpServers": {
    "tf2-wiki-mcp": {
      "command": "uvx",
      "args": ["tf2-wiki-mcp"],
      "env": {},
      "type": "local",
      "tools": ["*"]
    }
  }
}

Add this in repository settings under Copilot → Coding agent. See the Copilot Coding Agent MCP docs.

Development

Run from a local clone instead of PyPI:

git clone https://github.com/yusufaf/tf2-wiki-mcp
cd tf2-wiki-mcp
uv sync --dev
uv run pytest              # offline, uses recorded cassettes
uv run pytest --live       # also hits the real wiki

To point an MCP client at the local checkout:

{
  "mcpServers": {
    "tf2-wiki-mcp": {
      "command": "uv",
      "args": ["run", "--directory", "/absolute/path/to/tf2-wiki-mcp", "tf2-wiki-mcp"]
    }
  }
}

Licensing & Attribution

Code: MIT (see LICENSE).

Wiki content: Not redistributed. This project contains zero scraped wiki data. All page content is fetched live from wiki.teamfortress.com at the user's request and returned directly to the user's LLM client — the same posture as a browser extension.

Wiki content is © its respective contributors under Valve's Steam Subscriber Agreement (Game Site terms). Users of this tool are responsible for compliance with Valve's terms. Code license ≠ content license: MIT covers this codebase, not the wiki content it fetches.

Requests to the wiki include a descriptive User-Agent (tf2-wiki-mcp/<version> (https://github.com/yusufaf/tf2-wiki-mcp)) per MediaWiki etiquette and respect maxlag/Retry-After responses.

Contributing

Don't check in scraped wiki text. Infobox examples for parser tests are fine (short, fair-use-grade fixtures). Full page dumps are not.

Available Tools

10 tools
get_cosmeticC

Fetch a cosmetic item page and return its infobox params.

Inputs: name (required). Returns: object

get_pageA

Fetch a single TF2 Wiki page. format picks raw wikitext, plaintext extract, or rendered HTML.

Inputs: title (required), format. Returns: object

get_page_sectionsA

Section table-of-contents for a page; use before get_page to fetch selectively.

Inputs: title (required). Returns: object

get_page_summaryB

Lead-section plaintext summary of a page. Fast context anchor.

Inputs: title (required). Returns: object

get_patch_notesA

Fetch patch notes for a named update or patch page (e.g. 'October 5, 2023 Patch').

Inputs: update_name (required). Returns: object

get_recent_changesB

Recently edited pages in the given namespace (0 = main/articles).

Inputs: limit, namespace. Returns: result

get_weapon_statsB

Fetch a weapon page and return structured stats parsed from its infobox.

Returns damage, rate-of-fire, reload, clip size, attributes (+/- effects), etc.

Inputs: weapon_name (required). Returns: object

list_class_loadoutA

List all weapons for the given class.

Intersects Category: with Category:Weapons on the wiki.

Inputs: class_name (required). Returns: object

list_event_itemsB

List items added during a given TF2 event/update (e.g. 'Jungle Inferno Update', 'Smissmas 2023').

Inputs: event_name (required). Returns: object

search_wikiB

Full-text search the TF2 Wiki. Returns title + snippet + wordcount for each hit.

Inputs: query (required), limit. Returns: result

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 10 tools

    Disambiguation5/5

    Each tool targets a distinct aspect of the TF2 Wiki: generic page retrieval, specific item stats, patch notes, search, and listing tools. No two tools have overlapping purposes, so an agent can clearly distinguish them.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun snake_case pattern (e.g., get_, list_, search_). No mixed conventions or vague verbs, making the naming predictable.

    Tool Count5/5

    10 tools is well-scoped for a wiki server. It covers page fetching, specific data extraction, search, and listing without being overwhelming or incomplete.

    Completeness5/5

    The tool set covers core wiki operations: reading pages (full, sections, summary), searching, recent changes, and domain-specific data (cosmetics, weapons, events, class loadouts, patch notes). No obvious gaps for a read-only wiki interface.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables structured access to Bulbapedia's Pokémon encyclopedia through natural language, including searching pages, retrieving Pokémon data, moves, abilities, items, locations, and wiki metadata via the MediaWiki API.
      116 npm
      MIT
    • A
      license
      Not graded
      quality
      A
      maintenance
      Enables LLM clients to search, read, create, edit, and manage pages, files, categories, and revisions on any wiki running the MediaWiki software, with optional OAuth-authenticated write access. Also exposes extension-specific capabilities such as Wikibase entities and SPARQL queries, Semantic MediaWiki and Cargo queries, and NeoWiki knowledge-graph subjects.
      8 npm
      MIT
    • A
      license
      Not graded
      quality
      A
      maintenance
      Enables LLM clients to read, search, compare, create, edit, move, protect, and delete wiki pages, manage files, inspect site info and history, and query extension data from NeoWiki, Semantic MediaWiki, Cargo, Bucket, and Wikibase. Supports multiple wikis with optional OAuth authentication and per-wiki tool availability.
      8 npm
      MIT
    • A
      license
      Not graded
      quality
      A
      maintenance
      Enables LLM clients to search, read, compare, and edit pages on any MediaWiki wiki, including multi-wiki setups with OAuth-authenticated writes. It also queries extension data such as Wikibase entities, Semantic MediaWiki and Cargo results, and Bucket Lua queries.
      8 npm
      MIT