{"id":50324977,"url":"https://github.com/pathcosmos/take_this_red_pill","last_synced_at":"2026-05-29T05:04:28.269Z","repository":{"id":325934411,"uuid":"1101210474","full_name":"pathcosmos/take_this_red_pill","owner":"pathcosmos","description":null,"archived":false,"fork":false,"pushed_at":"2025-11-24T10:01:51.000Z","size":84,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-27T22:47:04.684Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pathcosmos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-21T10:54:53.000Z","updated_at":"2025-11-24T10:01:55.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/pathcosmos/take_this_red_pill","commit_stats":null,"previous_names":["pathcosmos/take_this_red_pill"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/pathcosmos/take_this_red_pill","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pathcosmos%2Ftake_this_red_pill","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pathcosmos%2Ftake_this_red_pill/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pathcosmos%2Ftake_this_red_pill/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pathcosmos%2Ftake_this_red_pill/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pathcosmos","download_url":"https://codeload.github.com/pathcosmos/take_this_red_pill/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pathcosmos%2Ftake_this_red_pill/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33637486,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-29T02:00:06.066Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-29T05:04:14.082Z","updated_at":"2026-05-29T05:04:28.252Z","avatar_url":"https://github.com/pathcosmos.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MCP Weather \u0026 Air Quality Servers\n\nPython and SpringBoot implementations of MCP (Model Context Protocol) servers providing weather, temperature, and air quality information using OpenWeatherMap API.\n\n## Features\n\n- **Weather Information**: Get current weather conditions for any city\n- **Temperature Details**: Current, feels like, min, and max temperatures\n- **Air Quality Data**: AQI and pollutant concentrations (PM2.5, PM10, CO, NO2, O3)\n- **Dual Implementation**: Both Python (FastAPI) and SpringBoot versions\n- **MCP Protocol**: JSON-RPC 2.0 compatible with Claude Desktop\n\n## Quick Start\n\n### Python Server\n\n```bash\ncd python\npython3 -m venv venv\nsource venv/bin/activate\npip install -r requirements.txt\ncp .env.example .env\n# Edit .env and add your OpenWeatherMap API key\nuvicorn src.main:app --port 8000\n```\n\n### SpringBoot Server\n\n```bash\ncd springboot\nexport OPENWEATHERMAP_API_KEY=your_api_key_here\nexport JAVA_HOME=/path/to/java-21\n./gradlew bootRun\n```\n\n## Available Tools\n\nAll servers provide these MCP tools:\n\n| Tool | Description |\n|------|-------------|\n| `get_weather` | Get current weather for a city |\n| `get_temperature` | Get detailed temperature information |\n| `get_air_quality` | Get air quality index and pollutants |\n\n## Documentation\n\n- [Python Setup Guide](python/README.md)\n  - [SpringBoot Setup Guide](springboot/README.md)\n- [API Key Setup](docs/API_KEY_SETUP.md)\n- [Claude Desktop Integration](docs/CLAUDE_DESKTOP_INTEGRATION.md)\n\n## Claude Desktop Integration\n\nTo use these MCP servers with Claude Desktop:\n\n1. **Configure Claude Desktop** by editing `claude_desktop_config.json`\n2. **Add server configuration** (see example configs in `python/` and `springboot/`)\n3. **Restart Claude Desktop**\n4. **Test the integration** by asking Claude about weather or air quality\n\nSee [Claude Desktop Integration Guide](docs/CLAUDE_DESKTOP_INTEGRATION.md) for detailed instructions.\n\n## License\n\n### Python\n- Python 3.9+\n- Dependencies in `requirements.txt`\n\n### SpringBoot\n- Java 21\n- Gradle 8.10+\n\n### API Key\n- OpenWeatherMap API key (free tier works)\n- Get yours at: https://openweathermap.org/api\n\n## Testing\n\nTest the server with curl:\n\n```bash\n# Python (port 8000)\ncurl -X POST http://localhost:8000/mcp \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"jsonrpc\":\"2.0\",\"method\":\"tools/call\",\"params\":{\"name\":\"get_weather\",\"arguments\":{\"city\":\"Seoul\"}},\"id\":1}'\n\n# SpringBoot (port 8080)\ncurl -X POST http://localhost:8080/mcp \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"jsonrpc\":\"2.0\",\"method\":\"tools/call\",\"params\":{\"name\":\"get_weather\",\"arguments\":{\"city\":\"Seoul\"}},\"id\":1}'\n```\n\n## Project Structure\n\n```\n.\n├── python/              # Python FastAPI implementation\n│   ├── src/\n│   │   ├── main.py\n│   │   ├── config.py\n│   │   ├── mcp_handler.py\n│   │   ├── tool_registry.py\n│   │   ├── services/\n│   │   └── tools/\n│   └── requirements.txt\n├── springboot/          # SpringBoot implementation\n│   ├── src/main/java/com/mcp/server/\n│   │   ├── McpServerApplication.java\n│   │   ├── config/\n│   │   ├── controller/\n│   │   ├── handler/\n│   │   ├── service/\n│   │   └── tools/\n│   └── build.gradle\n└── docs/                # Documentation\n```\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpathcosmos%2Ftake_this_red_pill","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpathcosmos%2Ftake_this_red_pill","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpathcosmos%2Ftake_this_red_pill/lists"}