warframe-mcp
Allows querying the Warframe Fandom Wiki for crafting recipes and blueprint data.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@warframe-mcpcheck Baro Ki'Teer's current inventory"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Warframe MCP Server
Warning: This project was 100% vibecoded and exists purely for my personal needs. Use at your own risk.
A Model Context Protocol (MCP) server that gives AI assistants real-time access to Warframe game data. 19 tools covering world state, item stats, market prices, drop tables, builds, crafting, farming optimization, task synergy planning, and color palette matching — powered by public APIs with zero authentication required.
Tools
Tool | Description |
| Current sortie, archon hunt, nightwave, invasions, open world cycles, events, Steel Path, construction progress, daily deals |
| Baro Ki'Teer status, inventory, and plat-per-ducat value analysis |
| Void Fissure listings with tier/Steel Path/Void Storm/mission type filters |
| Warframe stats, abilities, component drops, build cost, vault status |
| Weapon damage per fire mode, crit/status, components, build info |
| Mod stats at all ranks, polarity, drain, rarity, drop locations |
| Generic item lookup (arcanes, resources, blueprints, companions) |
| Live warframe.market prices — sell/buy stats, cheapest sellers, trade chat messages |
| Drop table search — relics, missions, enemies, with drop chances |
| Which relics contain a prime part, refinement chances, relic farm locations |
| Vaulted / farmable / Varzia resurgence status for prime items |
| Today's Cephalon Simaris synthesis target and scan locations |
| Where specific enemies spawn — confirmed locations from drop tables |
| Top community mod builds from Overframe.gg with mod lists and stats |
| Full crafting recipes — components, credits, build time, sub-recipes |
| Reverse ingredient lookup — "what uses this?" / "safe to sell?" |
| Best nodes to farm multiple resources — dark sector bonuses, overlap scoring |
| Cross-reference Nightwave with fissures/invasions/sortie for max efficiency |
| Find closest in-game color palette match for any hex color (Fashion Frame) |
Most lookup tools accept arrays (batch mode) to handle multiple items in a single call.
Related MCP server: poe2-mcp-server
Quick Start
npm
git clone https://github.com/YOUR_USER/warframe-mcp.git
cd warframe-mcp
npm install
npm run buildStdio mode (for MCP clients like Claude Desktop, OpenCode, Cursor):
npm startHTTP mode (Streamable HTTP transport for remote/web clients):
npm run start:http
# Listening on http://127.0.0.1:3000/mcpDocker
docker build -t warframe-mcp .
# HTTP mode (default)
docker run -p 3000:3000 warframe-mcp
# Stdio mode
docker run -i warframe-mcp node dist/index.jsConfiguration
All configuration is via environment variables. None are required — defaults work out of the box.
Variable | Default | Description |
|
| HTTP listen port |
|
| Bind address. Use |
| — | Comma-separated hostnames/IPs allowed through DNS rebinding protection (only needed when |
Example — LAN-accessible server:
HOST=0.0.0.0 PORT=3000 ALLOWED_HOSTS=192.168.1.100,mypc.local npm run start:httpClient Setup
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"warframe": {
"command": "node",
"args": ["/absolute/path/to/warframe-mcp/dist/index.js"]
}
}
}Claude Desktop (Docker)
{
"mcpServers": {
"warframe": {
"command": "docker",
"args": ["run", "-i", "--rm", "warframe-mcp", "node", "dist/index.js"]
}
}
}OpenCode
Add to opencode.json:
{
"mcpServers": {
"warframe": {
"command": "node",
"args": ["/absolute/path/to/warframe-mcp/dist/index.js"]
}
}
}HTTP Clients (Streamable HTTP)
Start the server in HTTP mode, then connect to http://localhost:3000/mcp:
npm run start:http
# POST /mcp — JSON-RPC requests (initialize, tools/list, tools/call)
# GET /mcp — SSE stream for server-to-client notifications
# DELETE /mcp — Session terminationSessions are managed via the Mcp-Session-Id header. Send an initialize request without a session ID to start a new session.
Smoke Test
# Stdio — should return JSON with 19 tools
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | node dist/index.js
# HTTP — initialize a session
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"0.1"}},"id":1}'System Prompt
SYSTEM_PROMPT.md contains a ready-to-use system prompt for an AI assistant that uses this MCP server. It includes tool documentation, a decision tree for tool selection, multi-tool chaining strategies, batching guidance, and Warframe domain knowledge (relics, rotations, trading, modding, Steel Path, open world cycles).
Architecture
src/
├── index.ts # Entry point — stdio or HTTP transport
├── api/
│ ├── warframestat.ts # warframestat.us client (items, drops, worldstate)
│ ├── warframe-market.ts # warframe.market v2 client (prices, orders)
│ ├── overframe.ts # Overframe.gg scraper (community builds)
│ └── wiki.ts # Fandom wiki API client (crafting recipes)
├── tools/
│ ├── worldstate.ts # world_state, baro_kiteer, active_fissures
│ ├── items.ts # lookup_warframe, lookup_weapon, lookup_mod, lookup_item
│ ├── market.ts # market_price_check
│ ├── drops.ts # search_drops, relic_drops
│ ├── primeVault.ts # prime_vault_status
│ ├── simaris.ts # simaris_target
│ ├── enemy.ts # find_enemy_spawn
│ ├── builds.ts # lookup_builds
│ ├── crafting.ts # crafting_requirements, crafting_usage
│ ├── farmOptimizer.ts # farm_route_optimizer
│ ├── synergy.ts # task_synergy_planner
│ └── colors.ts # color_palette_finder
├── types/
│ ├── warframestat.ts # warframestat.us API types
│ ├── warframe-market.ts # warframe.market v2 types
│ ├── overframe.ts # Overframe build types
│ └── index.ts # Re-exports
├── data/
│ ├── color-palettes.ts # 31 Warframe color palettes (2,790 colors)
│ └── planet-resources.ts # Planet resource drops, dark sector nodes & bonuses
└── utils/
├── cache.ts # TTL cache (60s–24h depending on data type)
├── formatting.ts # Number/time formatting helpers
└── lua-parser.ts # Lua table parser for wiki blueprint dataData Sources
API | Base URL | Auth | Used For |
| None | World state, items, drops, mods, weapons, warframes | |
| None | Live trading prices and orders | |
| None (HTML scraping) | Community mod builds | |
MediaWiki API | None | Crafting recipes (blueprint data) | |
Bundled static data | — | — | Planet resources, dark sector bonuses, 31 color palettes (2,790 colors) |
Caching
Data Type | TTL | Examples |
World state | 60 seconds | Fissures, invasions, cycles |
Drop tables | 5 minutes | Drop search results |
Market items | 24 hours | Item listing catalog |
Static data | 24 hours | Warframe/weapon/mod stats |
Wiki data | 24 hours | Crafting recipes |
Overframe builds | 6 hours | Community builds |
Development
npm run dev # tsc --watch
npm run build # One-shot compile
npm start # Run stdio modeRequirements
Node.js >= 18 (uses native
fetch)TypeScript 5.x
No runtime dependencies beyond
@modelcontextprotocol/sdk,express, andzod
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mpeciakk/warframe-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server