home-remote-mcps
home-remote-mcps
개인용 원격 MCP 게이트웨이입니다. Garmin Connect, Home Assistant, YouTube를 HTTP로 접근 가능한 Model Context Protocol 서버로 노출하여, Claude(또는 모든 MCP 클라이언트)가 어디서든 이들을 조회하고 제어할 수 있게 합니다 — 로컬 서버나 로컬 자격 증명이 필요 없습니다.
웹 UI 인증은 외부 SSO(home-auth, OAuth2)에 위임됩니다. MCP 클라이언트는 해당 UI에서 발급된 사용자별 API 키로 별도 인증을 수행합니다.
Why a sidecar for Garmin
Garmin Connect에는 공식 공개 API가 없고, 적극적으로 유지 관리되는 Node 클라이언트도 없습니다. garmin-connector 서비스는 Garmin의 로그인 흐름(및 MFA)과 토큰 갱신을 처리하는 garminconnect 라이브러리를 래핑하는 소규모 내부 전용 Python 사이드카입니다. NestJS 백엔드는 공유 비밀 키를 사용하여 Docker 네트워크를 통해 이 서비스와 통신하며, 이 서비스는 공개적으로 노출되지 않습니다. Home Assistant와 YouTube는 일반 REST API를 제공하므로 백엔드가 이들과 직접 통신합니다.
Related MCP server: FitnessMCP
Project layout
backend/ NestJS API — REST (auth, credentials, API keys) + MCP servers, DDD-ish layers
frontend/ React SPA — login, manage stored credentials, issue MCP API keys
garmin-connector/ FastAPI sidecar — Garmin Connect login/session via `garminconnect`
deploy/ docker-compose + Caddy config for production상세 아키텍처(계층 구조, MCP 요청 경로, 통합별 커넥터 설계, 인증 모델)는 CLAUDE.md를, 더 깊은 참고 자료는 ai-docs/를 참조하세요. 사람을 위한 가이드는 docs/에 있습니다.
Requirements
Node.js >= 20 (
.nvmrc참조)garmin-connector용 Python >= 3.11브라우저 로그인을 위한 실행 중인
home-auth인스턴스(이 앱에 등록된 OAuth2 클라이언트)프로덕션 배포용 Docker(
deploy/docker-compose.yml)
Local development
npm install # installs backend + frontend workspaces
cp backend/.env.example backend/.env # fill in home-auth + secrets, see comments in the file
cp garmin-connector/.env.example garmin-connector/.env
npm run dev:backend # http://localhost:3000 (API under /api, Swagger under /api/docs)
npm run dev:frontend # http://localhost:5173, proxies API calls to the backend
cd garmin-connector && pip install -r requirements.txt && uvicorn app.main:app --reload --port 8000GARMIN_CONNECTOR_SECRET은 backend/.env와 garmin-connector/.env에서 일치해야 합니다.
Build, test, lint
npm run build # frontend, then backend (bundles frontend/dist into the backend build)
npm run test # backend (jest) then frontend (vitest)
npm run lint # eslint on both workspaces
npm run format # prettier --write, repo-wideHusky 훅(pre-commit, pre-push, commit-msg)이 lint-staged와 commitlint(Conventional Commits)를 자동으로 실행합니다.
Deployment
리포지토리 루트의 Dockerfile은 멀티스테이지 빌드로 frontend → backend → 런타임 이미지를 생성하며, Litestream을 번들하여 MinIO(S3 호환) 버킷으로 SQLite를 지속적으로 복제하고, MINIO_BUCKET이 설정된 경우 부팅 시 복원합니다. garmin-connector/Dockerfile은 사이드카 이미지를 별도로 빌드합니다. deploy/docker-compose.yml은 두 서비스를 내부 Docker 네트워크에서 형제 서비스로 실행하며, 사이드카는 게시된 포트가 없어 http://garmin-connector:8000에서 백엔드만 접근할 수 있습니다. deploy/Caddyfile은 공개 서비스를 위한 리버스 프록시 설정입니다.
필요한 환경 변수는 backend/.env.example과 garmin-connector/.env.example에 인라인으로 문서화되어 있습니다.
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 unified data gateway MCP server that enables Claude to interact with multiple external REST and GraphQL APIs through OAuth 2.0 authentication.
- AlicenseNot gradedqualityCmaintenanceA unified MCP server that connects AI assistants to multiple fitness services (Hevy, Strava, Cronometer, Intervals.icu) through a single secure endpoint, enabling workout, nutrition, and activity data access.MIT
- FlicenseNot gradedqualityDmaintenanceRemote MCP server acting as a personal assistant with secure OAuth authentication, integrating Google Calendar, TickTick tasks, meal logging, workout tracking, and water intake logging.
- AlicenseNot gradedqualityAmaintenanceA multi-user OAuth 2.1-protected gateway that enables Claude to access Garmin Connect tools through secure per-user sessions.4MIT
Related MCP Connectors
An authenticated remote MCP server for user-owned devices and one-shot capability invocation.
Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors — no code.
Self-hosted federated MCP gateway: one OAuth 2.1 MCP server in front of N apps, user-level scopes.
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/SlobodaFR/home-remote-mcps'
If you have feedback or need assistance with the MCP directory API, please join our Discord server