sipap-intelligence-mcp
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., "@sipap-intelligence-mcpAssess weather impact for match 456 tomorrow"
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.
sipap-intelligence-mcp
AI-Powered Intelligence MCP Server for SIPAP - Aggregating intelligence from news sentiment, weather analysis, and API-Football predictions using Claude (Bedrock).
Overview
This MCP server provides AI-powered intelligence tools that enhance sports predictions with:
Weather Intelligence: Real-time weather forecasts and AI-assessed impact on matches
News Sentiment Analysis: Claude-powered analysis of recent news for teams
Injury Impact Assessment: AI-driven evaluation of injury impact on performance
API-Football Intelligence: Algorithmic predictions, player availability, and transfers
Historical Performance Analysis: Team performance patterns in specific conditions
Related MCP server: beast-baseball
Architecture
Unlike sipap-data-mcp (database reads only), this MCP server:
Makes on-demand API calls (OpenWeatherMap, NewsAPI, API-Football)
Uses Claude via AWS Bedrock for AI analysis
Has higher latency (<2s vs <100ms) due to AI processing + API calls
Implements differential TTL caching strategy (1h-24h) to minimize API costs
Follows Sentinel patterns: #19 (Lambda warm start), #20 (Cache-aside)
Tools (9 Total)
Weather Intelligence (3 tools)
get_match_weather(match_id: str, lat?: float, lon?: float, city?: str)Fetches weather forecast for match time and location
Source: OpenWeatherMap API
Returns: Temperature, precipitation, wind, visibility, humidity
Cache TTL: 1 hour
Accepts: Coordinates (lat/lon) OR city name
assess_weather_impact(weather_conditions: dict, match_type?: str, home_team?: str, away_team?: str)AI analysis of weather impact on match outcome
Uses: Claude via Bedrock
Returns: Impact level, confidence, factors, betting implications
Cache TTL: 6 hours
Optional team context for tactical analysis
get_historical_weather_performance(team_id: str, team_name: str, weather_type: str, max_matches?: int)Analyzes team's historical performance in specific weather
Uses: Mock historical data + Claude analysis
Returns: Pattern strength, confidence, win rate, goal stats, insights
Cache TTL: 24 hours
News Intelligence (2 tools)
fetch_and_analyze_team_news(team_id: str, team_name: str, days_back?: int)Fetches recent news and performs sentiment analysis
Uses: NewsAPI + Claude
Returns: Sentiment, confidence, key topics, impact summary, articles analyzed
Cache TTL: 6 hours
Default: 7 days back, top 5 sources
get_injury_reports(team_id: str, team_name: str, severity_filter?: str)Injury reports with AI-powered impact assessment
Uses: Mock injury data + Claude
Returns: Injuries with AI-assessed impact scores
Cache TTL: 24 hours
Filters: "all", "major", "minor"
API-Football Intelligence (4 tools)
get_match_predictions(fixture_id: int)Algorithmic match predictions from API-Football
Source: API-Football predictions endpoint (poisson, stats, form)
Returns: Winner prediction, probabilities (home/draw/away), league/teams info
Cache TTL: 6 hours
get_sidelined_players(player_id?: int, coach_id?: int)Player/coach availability (injuries, suspensions, absences)
Source: API-Football sidelined endpoint
Returns: Type, player/coach info, start date, end date
Cache TTL: 24 hours
Mutually exclusive: provide player_id OR coach_id
get_player_transfers(player_id?: int, team_id?: int)Player transfer history and context
Source: API-Football transfers endpoint
Returns: Transfer details, teams, dates, type
Cache TTL: 24 hours
Optional filters: player_id, team_id
get_available_timezones()Available timezones for fixture scheduling
Source: API-Football timezones endpoint
Returns: List of valid timezone identifiers
Cache TTL: 7 days (static data)
Installation
# Install from wheel
pip install sipap_intelligence_mcp-0.1.0-py3-none-any.whl
# Or install in editable mode for development
cd sipap-intelligence-mcp
python -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'Requirements
Python 3.12, 3.13, or 3.14
AWS credentials with Bedrock access (Claude)
OpenWeatherMap API key (free tier: 60 calls/min)
NewsAPI key (free tier: 100 requests/day)
API-Football key (Ultra plan: 75,000 requests/day)
sipap-common >= 0.1.0
sipap-mcp >= 0.1.0
Redis instance (AWS ElastiCache or local)
Usage
Direct Tool Usage
from sipap_intelligence_mcp.tools.weather import get_match_weather, assess_weather_impact
# Get weather forecast for match
weather = await get_match_weather(match_id="match-123")
# Returns: {
# 'temperature': 15.2,
# 'precipitation': 'light_rain',
# 'wind_speed': 12.5,
# 'visibility': 8000
# }
# Assess impact on match
impact = await assess_weather_impact(weather, match_type="soccer")
# Returns: {
# 'impact_level': 'medium',
# 'factors': ['Light rain favors defensive play', 'Wind affects long passes'],
# 'betting_implications': 'Consider under 2.5 goals',
# 'confidence': 0.78
# }MCP Protocol Usage (JSON-RPC 2.0)
from sipap_intelligence_mcp.server import IntelligenceMCPServer
# Initialize MCP server
server = IntelligenceMCPServer()
# List available tools
request = {
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}
response = await server.handle_request(request)
# Returns list of 9 tools with JSON schemas
# Call a weather tool
request = {
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "get_match_weather",
"arguments": {
"match_id": "match-123",
"lat": 51.5,
"lon": -0.1
}
}
}
response = await server.handle_request(request)
# Call an API-Football tool
request = {
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "get_match_predictions",
"arguments": {
"fixture_id": 198772
}
}
}
response = await server.handle_request(request)Configuration
Environment Variables
# AWS Bedrock (required for AI analysis)
AWS_REGION=us-east-1
BEDROCK_MODEL_ID=anthropic.claude-3-haiku-20240307-v1:0
# OpenWeatherMap API (required for weather intelligence)
OPENWEATHER_API_KEY=your_api_key_here
# NewsAPI (required for news intelligence)
NEWS_API_KEY=your_api_key_here
# API-Football (required for predictions/transfers/sidelined)
API_FOOTBALL_KEY=your_api_key_here
# Redis cache (required for all tools)
REDIS_ENDPOINT=sipap-dev-cache.cache.amazonaws.com:6379
# Database (optional, for historical analysis)
DB_ENDPOINT=sipap-dev-aurora.cluster-xxx.us-east-1.rds.amazonaws.com
DB_NAME=sipap_dev
DB_USER=sipap_admin
DB_PASSWORD=stored_in_secrets_managerTesting
Quality Gates Status
✅ Tests: 130/130 passing (72% coverage)
Unit tests: 112 (weather: 17, news: 21, API-Football: 36, clients: 38)
Integration tests: 18 (MCP server: 8, workflows: 10)
✅ Type Checking: Zero mypy errors (strict mode)
✅ Linting: Zero ruff errors
✅ Imports: All successful
Coverage Breakdown
Weather tools: 92% coverage
News tools: 89% coverage
API-Football tools: 95% coverage
MCP server: 83% coverage
Claude client: 99% coverage
Prompts: 100% coverage
Running Tests
# Run all tests
pytest
# Run with coverage
pytest --cov=src/sipap_intelligence_mcp --cov-report=html
# Run specific test suites
pytest tests/unit/ # Unit tests only
pytest tests/integration/ # Integration tests only
# Run type checking
mypy src/sipap_intelligence_mcp --strict
# Run linting
ruff check src/ tests/
# Run all quality gates
pytest && mypy src/sipap_intelligence_mcp --strict && ruff check src/ tests/Performance
Latency: <2s average (AI processing + API calls overhead)
Cache Hit Rate: 85%+ target (differential TTL strategy)
Cost: ~$15/month (Claude analysis + API calls)
Rate Limits:
OpenWeatherMap: 60 calls/min (free tier)
NewsAPI: 100 requests/day (free tier)
API-Football: 75,000 requests/day (Ultra plan)
Claude/Bedrock: Pay-as-you-go (~$0.01 per analysis)
Caching Strategy:
Weather: 1 hour (volatile)
Weather impact: 6 hours (semi-stable)
Historical performance: 24 hours (stable)
News sentiment: 6 hours (semi-stable)
Injury reports: 24 hours (stable)
Predictions: 6 hours (semi-stable)
Sidelined/Transfers: 24 hours (stable)
Timezones: 7 days (static)
Architecture Patterns
Sentinel Pattern Adoption
Pattern #9: Structured output enforcement (JSON Schema for AI responses)
Pattern #19: Lambda warm start optimization (global variables for API clients)
Pattern #20: Cache-aside with TTL strategy (6h-24h based on volatility)
AI Integration
Claude Haiku: Fast, cost-effective for simple analyses (<$0.003 per call)
Claude Sonnet: Complex reasoning for injury impact (<$0.015 per call)
Prompt Engineering: Sport-specific prompts optimized for accuracy
Structured Output: Force JSON schema to eliminate parsing errors
Examples
See examples/ directory for:
weather_intelligence.py- Weather forecast + impact assessment + historical performancenews_intelligence.py- News sentiment analysis + injury reportsapi_football_intelligence.py- Match predictions + sidelined players + transfersmcp_client.py- Full MCP protocol usage with all 9 toolsREADME.md- Setup instructions and usage guide
Development
# Setup development environment
python -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'
# Run quality gates before committing
pytest && mypy src/sipap_intelligence_mcp --strict && ruff check src/ tests/License
MIT License - See LICENSE file for details
Support
For issues or questions: charles@sipap.com
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.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA Docker-based MCP server that provides current weather information for cities worldwide. Enables AI assistants like Claude to fetch temperature, weather conditions, and humidity data through a standardized interface.
- FlicenseNot gradedqualityCmaintenanceMCP server for natural language analysis of baseball league data, enabling team statistics, standings, lineup suggestions, and scouting reports via Claude Desktop.
- FlicenseNot gradedqualityDmaintenanceAn MCP server that connects Claude Desktop to The Odds API, giving Claude real-time access to sports odds, scores, and schedules across 80+ sports and leagues worldwide.
- FlicenseNot gradedqualityDmaintenanceMCP server that enables Claude Desktop to access real-time sports data including live scores, fixtures, standings, and NBA statistics using free APIs.
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
MCP server giving Claude AI access to 22+ NYC public-record databases for real estate due diligence
Cloud-hosted MCP server for durable AI memory
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/odirasamuel/sipap-intelligence-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server