Gosar
Gosar MCP 서버
Claude가 사용자를 대신하여 Gosar API를 호출할 수 있게 해주는 MCP 서버로, Gosar의 OAuth 2.0 + PKCE 흐름을 통해 인증합니다.
이 서버는 브리지 역할을 합니다:
Claude(MCP 클라이언트)에게는 완전한 OAuth 인증 서버처럼 동작합니다 — 동적 클라이언트 등록을 처리하고 자체 단기 토큰을 발급합니다.
Gosar에게는 사전 등록된 단일 OAuth 클라이언트(공개, PKCE 전용)로, Gosar 통합 가이드에 설명된 실제 Authorization Code + PKCE 교환을 수행합니다.
사전 요구 사항
Python 3.11+
Gosar 팀에 등록된 Gosar OAuth 클라이언트(통합 가이드의 "What we need from you" 참조) —
client_id와 승인된 리디렉션 URI가 필요합니다.실제 Gosar API를 테스트하려면 ngrok(또는 유사한 도구) — Gosar의 리디렉션 URI는 HTTPS여야 하고 정확히 일치해야 하며, Claude도 원격 MCP 서버를 연결하려면 HTTPS URL이 필요합니다.
Related MCP server: Strava MCP Server
1. 의존성 설치
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt2. .env 구성
프로젝트 루트의 .env에 보유한 값을 복사하세요:
# Real values from the Gosar team
GOSAR_API_BASE_URL=https://api.gosar.example
GOSAR_CLIENT_ID=your-registered-client-id
GOSAR_SCOPES=applications.read applications.write
# Your server's own public HTTPS URL (e.g. your ngrok URL). Gosar's registered
# redirect_uri must be exactly this + GOSAR_REDIRECT_PATH.
MCP_PUBLIC_BASE_URL=https://your-tunnel.ngrok-free.app
GOSAR_REDIRECT_PATH=/gosar/callback
MCP_HOST=0.0.0.0
MCP_PORT=8000
# Generate once and keep stable — see below
JWT_SIGNING_KEY=서명 키를 생성하세요(Gosar는 시크릿이 없는 공개 클라이언트이므로 자동으로 파생될 수 없습니다 — 필수입니다):
python -c "import secrets; print(secrets.token_urlsafe(32))"출력값을 JWT_SIGNING_KEY에 붙여넣으세요. 재시작 간에 동일하게 유지하세요. 그렇지 않으면 연결된 모든 사용자가 로그아웃됩니다.
3. 서버를 HTTPS로 노출(실제 Gosar 테스트용)
Claude와 Gosar 모두 HTTPS를 요구합니다. 별도의 터미널에서:
ngrok http 8000https://...ngrok-free.app URL을 .env의 MCP_PUBLIC_BASE_URL에 복사하고, {MCP_PUBLIC_BASE_URL}/gosar/callback을 등록된 리디렉션 URI로 Gosar 팀에 보내세요.
4. 서버 실행
source .venv/bin/activate
python main.py다음과 같은 출력이 보여야 합니다:
Starting MCP server 'Gosar' with transport 'http' on http://0.0.0.0:8000/mcp
Uvicorn running on http://0.0.0.0:8000코드 변경 시 자동 리로드
python main.py는 리로드하지 않습니다 — mcp.run()은 차단되고 자체 uvicorn 프로세스를 소유하므로 파일 감시 리로더에 넘길 수 없습니다. 개발 중에는 gosar_mcp/asgi.py의 ASGI 앱을 uvicorn에서 직접 실행하세요:
uvicorn gosar_mcp.asgi:app --reload --reload-include ".env" --host 0.0.0.0 --port 8000--reload는.py파일이 변경될 때마다 작업자 프로세스를 다시 시작합니다.--reload-include ".env"는.env를 편집할 때도 다시 시작합니다(uvicorn은 기본적으로 Python 파일만 감시하며, 환경 변수는 프로세스 시작 시 한 번만 읽히므로 이 플래그가 없으면.env편집 후 수동 재시작이 필요합니다).포트를 ngrok 터널이 가리키는 포트와 일치시키세요.
5. OAuth 연결 상태 확인
서버가 실행 중인 상태에서 검색 메타데이터가 제공되는지 확인하세요:
curl -s http://127.0.0.1:8000/.well-known/oauth-authorization-server | python3 -m json.toolscopes_supported에 applications.read/applications.write가 있고, PKCE 메서드로 S256만 있는지 확인하세요.
6. Claude에 연결
Claude의 커넥터 설정에서 다음을 가리키는 원격 MCP 서버를 추가하세요:
https://your-tunnel.ngrok-free.app/mcpClaude는 이 서버에 대해 OAuth 클라이언트로 자체 등록하고, 사용자를 동의 화면으로 리디렉션한 다음 Gosar의 실제 Google 로그인 + 동의 화면을 거쳐 활성 연결로 여기로 돌아옵니다. Claude에게 whoami 도구를 호출하여 예상된 Gosar 계정으로 인증되었는지 확인하세요.
참고 사항
토큰 저장(클라이언트 등록 + 암호화된 업스트림 Gosar 토큰)은 기본적으로 OS에 적합한 암호화된 파일 저장소를 사용합니다 — 로컬 개발에 추가 설정이 필요 없습니다. 프로덕션에서 다른 백엔드를 가리키려면
gosar_mcp/auth.py를 참조하세요.gosar_mcp/tools.py의/applications엔드포인트 경로는 자리 표시자입니다 — 통합 가이드는 OAuth 계층만 지정하고 Applications REST API 형태는 지정하지 않습니다. 실제 경로/페이로드를 Gosar 팀과 확인하고 해당 파일에서 조정하세요.
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
- AlicenseNot gradedqualityDmaintenanceEnables Claude Desktop and other MCP clients to interact with any OAuth2-authenticated OpenAPI-based API through automatic tool generation from OpenAPI specifications, with built-in token management and authentication handling.83MIT
- FlicenseBqualityDmaintenanceConnects Claude or any MCP client to the Strava API v3, enabling access to fitness data such as activities, athletes, clubs, segments, routes, and streams.37
- FlicenseNot gradedqualityBmaintenanceEnables Claude.ai to connect to a Hermes MCP server via OAuth 2.1 authorization code flow with PKCE, acting as a reverse proxy and single-user authorization gateway.
- AlicenseNot gradedqualityDmaintenanceEnables Claude to interact with Basecamp API for project and to-do management via OAuth authentication.60MIT
Related MCP Connectors
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Garmin data in Claude & ChatGPT via the Garmin Health API. OAuth sign-in, no password sharing.
MCP server for Argo RPG Platform — connects AI assistants to campaign data via OAuth2
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/feranmiemmanuel/gosar-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server