이번 포스팅에서는 python으로 만든 간단한 에이전트를 UiPath에 호스팅하여 MCP 서버로 사용하는 과정을 보여드리려고 합니다.
1. Python으로 에이전트 작성하기
먼저 웹의 뉴스 기사에서 텍스트만 뽑아오는 간단한 에이전트를 BeautifulSoup을 사용하여 아래와 같이 구현합니다.
from mcp.server.fastmcp import FastMCP
from bs4 import BeautifulSoup
import requests
mcp = FastMCP("Extract Text from Web Article")
@mcp.tool()
def extract_text_from_web_article(url: str) -> str:
"""Extract text from an article on the web"""
try:
response = requests.get(url=url, timeout=10)
soup = BeautifulSoup(response.text, "html.parser")
return soup.get_text(" ", strip=True)
except Exception as e:
print(f"Error extracting text from {url}: {e}")
return ""
if __name__ == "__main__":
mcp.run()
2. nuget package 생성하기
이 코드를 server.py라는 파일로 저장한 후 이 가이드를 참고하여 nuget package extract-text-from-web-article.0.0.1.nupkg를 생성합니다.
3. UiPath 오케스트레이터에 MCP 서버로 등록하기
먼저 아래의 메뉴를 사용하여 nuget package를 업로드합니다.
이제 아래와 같이 원하는 폴더에서 해당 nuget package를 프로세스로 등록해줍니다.
마지막으로 아래의 메뉴에서 해당 프로세스를 MCP 서버로 등록합니다.
아래와 같이 Coded 에이전트를 선택해야 합니다. Preview URL은 자동으로 생성됩니다.
4. MCP 클라이언트에 등록하기
무료로 사용할 수 있는 Cursor를 MCP 클라이언트로 사용하겠습니다.
먼저 아래와 같이 Cursor 설정 메뉴의 Tools & MCP에서 Add Custom MCP 버튼을 클릭합니다.
이제 mcp.json 파일에 아래와 같이 입력합니다. Personal Access Token이 필요한데 오케스트레이터에서 사용자의 Preferences -> Personal Access Token 메뉴에 접근하면 생성할 수 있습니다.
아래와 같이 보이면 성공적으로 등록된 것입니다.
5. MCP 서버 사용해보기
이제 Cursor의 채팅창에서 아래와 같이 입력하여 우리가 작성한 MCP 서버를 사용하는지 확인해봅시다.
다음 기사에서 텍스트만 뽑아줘.
https://n.news.naver.com/mnews/article/001/0015680475






