Spring AI 활용 도구호출과 MCP 수업은 실습 비중이 높은 편입니다. 실습 과정에서 발생할 수 있는 시행착오를 최소화하기 위해, 원활한 환경 구성에 필요한 학습 내용과 실습 소스 설정 방법을 미리 안내해 드립니다.
OPENAI_API_KEY 환경 변수 등록하기
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
맥 기준 설정방법
$ vi ~/.zshrc
# 에디터가 열리면 다음 코드 추가
export OPENAI_API_KEY=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
# 환경 변수 적용
$ source ~/.zshrc
윈도우즈 기준
Brave Search(https://serpapi.com/)에 가입하고 API KEY 발급 받기

API KEY 발급

API KEY를 환경 변수에 등록하기
맥 기준 설정방법
$ vi ~/.zshrc
# 에디터가 열리면 다음 코드 추가
export BRAVE_SEARCH_API_KEY=<발급 받은 API 키>
# 환경 변수 적용
$ source ~/.zshrc
윈도우즈 기준
pgvector 설치하기
docker-compose.yml
services:
pgvector:
image: pgvector/pgvector:pg17
container_name: pgvector
ports:
- "5432:5432"
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: postgress
volumes:
- pgdata:/var/lib/postgresql/data
networks:
- pg-network
volumes:
pgdata: # 로컬 볼륨 생성
networks:
pg-network:
driver: bridge
원활한 실습을 위해 설정은 동일하게 유지할 것
호스트 포트: 5432를 이미 사용중이라면 다른 포트로 변경해서 설치할것(스프링 부트 datasource 설정 역시 변경한 포트로 반영하여야 합니다.)
예) “5433:5432”
다음 명령어를 실행하여 설치할것
docker compose up -d
aitools, ai-secretary, mcp-client, mcp-server 프로젝트 인텔리제이로 열고 설정하기
설정이 잘되었는지 테스트 하기
aitools 프로젝트
src/test/java/…/datetime/DateTimeServiceTest.java에서 test1() 메서드 실행하여 내일 날짜가 잘 나오면 정상 동작
ai-secretary 프로젝트
실행 후 브라우저에 http://localhost:8080 접속하면 채팅창이 나와야 하고 “원화 기준의 USD 환율을 네이버에서 검색해서 알려줘”라고 질문했을때 답변이 잘 나온다면 잘 설정된 것임

mcp-server를 먼저 실행하고 mcp-client를 실행합니다.
브라우저에 http://localhost:8080/chat 으로 접속해봅니다.
