# MCP Tools Configuration for League of Legends Data Server
# This file defines the configuration and metadata for all MCP tools
version: "1.0"
description: "MCP tools configuration for League of Legends data access"
# Tool definitions with complete schemas
tools:
get_champion_data:
enabled: true
description: "Get comprehensive champion information including stats, abilities, and builds"
category: "champion_data"
rate_limit:
requests_per_minute: 60
burst_limit: 10
cache:
ttl_seconds: 300 # 5 minutes for champion data
enabled: true
schema:
type: "object"
properties:
champion:
type: "string"
description: "Champion name"
examples: ["Taric", "Jinx", "Yasuo"]
patch:
type: "string"
default: "current"
description: "Game patch version"
pattern: "^(current|\\d+\\.\\d+)$"
include:
type: "array"
items:
type: "string"
enum: ["stats", "abilities", "builds", "history"]
default: ["stats", "abilities"]
description: "Data sections to include"
required: ["champion"]
get_ability_details:
enabled: true
description: "Get detailed ability information including damage, cooldowns, and scaling"
category: "ability_data"
rate_limit:
requests_per_minute: 100
burst_limit: 20
cache:
ttl_seconds: 600 # 10 minutes for ability data
enabled: true
schema:
type: "object"
properties:
champion:
type: "string"
description: "Champion name"
examples: ["Taric", "Jinx", "Yasuo"]
ability:
type: "string"
enum: ["passive", "Q", "W", "E", "R"]
description: "Ability slot"
level:
type: "integer"
minimum: 1
maximum: 18
description: "Champion level for scaling calculations"
include_scaling:
type: "boolean"
default: true
description: "Include scaling information"
required: ["champion", "ability"]
# Global configuration
global_settings:
# Default cache settings
default_cache:
enabled: true
ttl_seconds: 300
max_size: 1000
# Default rate limiting
default_rate_limit:
requests_per_minute: 60
burst_limit: 10
enable_per_user_limits: true
# Tool execution settings
execution:
timeout_seconds: 30
max_concurrent_requests: 100
enable_request_logging: true
# Error handling
error_handling:
max_retries: 3
retry_delay_seconds: 1
enable_circuit_breaker: true
circuit_breaker_threshold: 5
# Monitoring
monitoring:
enable_metrics: true
enable_health_checks: true
metrics_port: 9090
# Tool categories for organization
categories:
champion_data:
description: "Tools for accessing champion information"
tools: ["get_champion_data"]
ability_data:
description: "Tools for accessing ability details"
tools: ["get_ability_details"]
# Environment-specific overrides
environments:
development:
global_settings:
default_cache:
ttl_seconds: 60 # Shorter cache in dev
default_rate_limit:
requests_per_minute: 120 # Higher limits in dev
execution:
enable_request_logging: true
timeout_seconds: 60
production:
global_settings:
default_cache:
ttl_seconds: 600 # Longer cache in prod
default_rate_limit:
requests_per_minute: 60
execution:
enable_request_logging: false
timeout_seconds: 30
monitoring:
enable_metrics: true
enable_health_checks: true
# Data source priorities and fallbacks
data_sources:
priority_order:
- "wiki_scraper"
fallback_strategy:
enable_fallback: true
cache_stale_data: true
max_staleness_hours: 24
source_configs:
wiki_scraper:
enabled: true
base_url: "https://wiki.leagueoflegends.com"
rate_limit:
requests_per_minute: 30