Discover Awesome MCP Servers

Extend your agent with 13,546 capabilities via MCP servers.

All13,546
crawl4ai-mcp

crawl4ai-mcp

파이썬을 사용하여 Crawl4AI 라이브러리를 함수로 래핑하는 MCP (Model Context Protocol) 서버: ```python from flask import Flask, request, jsonify import crawl4ai # Crawl4AI 라이브러리 임포트 (설치 필요: pip install crawl4ai) app = Flask(__name__) # Crawl4AI 함수를 래핑하는 함수 정의 def crawl_website(url, max_depth=1, max_pages=10): """ Crawl4AI 라이브러리를 사용하여 웹사이트를 크롤링합니다. Args: url (str): 크롤링할 웹사이트의 URL. max_depth (int): 크롤링할 최대 깊이 (기본값: 1). max_pages (int): 크롤링할 최대 페이지 수 (기본값: 10). Returns: dict: 크롤링된 데이터 (예: 페이지 내용, 링크 등). """ try: crawler = crawl4ai.Crawler(url, max_depth=max_depth, max_pages=max_pages) results = crawler.crawl() return results except Exception as e: return {"error": str(e)} # MCP 엔드포인트 정의 @app.route('/crawl', methods=['POST']) def crawl_endpoint(): """ /crawl 엔드포인트는 POST 요청을 받아 웹사이트를 크롤링하고 결과를 반환합니다. 요청 예시: { "url": "https://www.example.com", "max_depth": 2, "max_pages": 20 } 응답 예시: { "results": { "https://www.example.com": { "title": "Example Domain", "content": "This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.", "links": [] } } } """ try: data = request.get_json() url = data.get('url') max_depth = data.get('max_depth', 1) # 기본값 1 max_pages = data.get('max_pages', 10) # 기본값 10 if not url: return jsonify({"error": "URL is required"}), 400 results = crawl_website(url, max_depth, max_pages) if "error" in results: return jsonify({"error": results["error"]}), 500 else: return jsonify({"results": results}) except Exception as e: return jsonify({"error": str(e)}), 500 if __name__ == '__main__': app.run(debug=True, host='0.0.0.0', port=5000) ``` **설명:** 1. **필요한 라이브러리 임포트:** - `flask`: 웹 서버를 만들기 위한 프레임워크입니다. - `crawl4ai`: 웹 크롤링을 위한 라이브러리입니다. `pip install crawl4ai` 명령어로 설치해야 합니다. 2. **Flask 앱 초기화:** - `app = Flask(__name__)` Flask 애플리케이션 인스턴스를 생성합니다. 3. **`crawl_website` 함수 정의:** - 이 함수는 `crawl4ai.Crawler`를 사용하여 웹사이트를 크롤링합니다. - `url`, `max_depth`, `max_pages`를 인자로 받습니다. - 크롤링 결과를 반환하거나, 오류가 발생하면 오류 메시지를 반환합니다. - `try...except` 블록을 사용하여 예외 처리를 합니다. 4. **`/crawl` 엔드포인트 정의:** - `@app.route('/crawl', methods=['POST'])` 데코레이터는 `/crawl` 경로에 대한 POST 요청을 처리하는 함수를 정의합니다. - `request.get_json()`을 사용하여 요청 본문에서 JSON 데이터를 가져옵니다. - `data.get('url')`, `data.get('max_depth', 1)`, `data.get('max_pages', 10)`를 사용하여 URL, 최대 깊이, 최대 페이지 수를 가져옵니다. `get` 메서드를 사용하면 키가 없을 경우 기본값을 지정할 수 있습니다. - URL이 없으면 오류 응답을 반환합니다. - `crawl_website` 함수를 호출하여 웹사이트를 크롤링합니다. - 크롤링 결과 또는 오류 메시지를 JSON 형식으로 반환합니다. - `jsonify` 함수는 Python 딕셔너리를 JSON 응답으로 변환합니다. - HTTP 상태 코드를 설정하여 성공 또는 오류를 나타냅니다. 5. **앱 실행:** - `if __name__ == '__main__':` 블록은 스크립트가 직접 실행될 때만 실행됩니다. - `app.run(debug=True, host='0.0.0.0', port=5000)` Flask 개발 서버를 시작합니다. - `debug=True`: 디버그 모드를 활성화하여 오류 메시지를 더 자세히 표시하고 코드 변경 사항을 자동으로 다시 로드합니다. 프로덕션 환경에서는 `debug=False`로 설정해야 합니다. - `host='0.0.0.0'`: 모든 네트워크 인터페이스에서 서버에 액세스할 수 있도록 합니다. - `port=5000`: 서버가 수신 대기할 포트를 지정합니다. **사용 방법:** 1. **Crawl4AI 라이브러리 설치:** ```bash pip install crawl4ai ``` 2. **스크립트 실행:** ```bash python your_script_name.py ``` 3. **POST 요청 보내기:** - `curl`, `Postman` 또는 다른 HTTP 클라이언트를 사용하여 `/crawl` 엔드포인트에 POST 요청을 보냅니다. - 요청 본문은 JSON 형식이어야 하며, `url` 필드를 포함해야 합니다. `max_depth`와 `max_pages`는 선택 사항입니다. ```bash curl -X POST -H "Content-Type: application/json" -d '{"url": "https://www.example.com", "max_depth": 2, "max_pages": 20}' http://localhost:5000/crawl ``` **개선 사항:** * **오류 처리:** 더 구체적인 오류 처리를 추가하여 문제 해결을 용이하게 할 수 있습니다. 예를 들어, `crawl4ai` 라이브러리에서 발생하는 특정 예외를 처리하고 사용자에게 더 유용한 오류 메시지를 제공할 수 있습니다. * **로깅:** 로깅을 추가하여 서버 활동을 추적하고 오류를 진단할 수 있습니다. * **구성:** `max_depth` 및 `max_pages`와 같은 매개변수를 환경 변수 또는 구성 파일에서 읽어와 코드를 수정하지 않고도 서버 동작을 변경할 수 있도록 할 수 있습니다. * **보안:** 프로덕션 환경에서는 보안을 강화해야 합니다. 예를 들어, 인증 및 권한 부여를 추가하여 무단 액세스를 방지할 수 있습니다. * **비동기 처리:** 크롤링 작업은 시간이 오래 걸릴 수 있으므로 비동기적으로 처리하여 서버 응답성을 향상시킬 수 있습니다. `Celery` 또는 `asyncio`와 같은 라이브러리를 사용하여 비동기 작업을 구현할 수 있습니다. * **데이터 저장:** 크롤링된 데이터를 데이터베이스에 저장하여 나중에 분석하거나 사용할 수 있습니다. * **Rate Limiting:** 크롤링 대상 웹사이트에 과도한 부하를 주지 않도록 요청 속도를 제한하는 기능을 추가할 수 있습니다. 이 코드는 Crawl4AI 라이브러리를 사용하여 웹사이트를 크롤링하고 결과를 반환하는 기본적인 MCP 서버를 제공합니다. 필요에 따라 기능을 확장하고 개선할 수 있습니다.

wormhole-metrics-mcp

wormhole-metrics-mcp

An MCP server that analyzes cross-chain activity on the Wormhole protocol, providing insights into transaction volumes, top assets, source-destination chain pairs, and key performance indicators (KPIs).

Multi-Tool Control Platform (MCP) Server

Multi-Tool Control Platform (MCP) Server

A Python framework for developing and managing tool instances through a registry system, where developers can easily create new tools by inheriting from the BaseHandler class and implementing required methods.

Marvel MCP Server using Azure Functions

Marvel MCP Server using Azure Functions

Azure Functions 기반 MCP 서버로, 공식 Marvel Developer API를 통해 Marvel 캐릭터 및 만화 데이터와 상호 작용할 수 있습니다.

mcp-gomamayo

mcp-gomamayo

"고마마요" MCP 서버

kuzudb-mcp-server

kuzudb-mcp-server

A Model Context Protocol server that provides access to Kuzu databases. This server enables LLMs to inspect database schemas and execute queries on provided kuzu database.

MCP Analyst

MCP Analyst

MCP 분석기는 Claude가 로컬 CSV 또는 Parquet 파일을 분석할 수 있도록 지원하는 MCP 서버입니다.

Jira MCP Server

Jira MCP Server

Jira 작업을 쿼리하기 위한 MCP 서버

NoLang MCP Server

NoLang MCP Server

Enables MCP clients like Claude Desktop to generate AI-powered videos through the NoLang API, providing a standardized interface for video creation from text input.

Nuclei MCP

Nuclei MCP

Connects Nuclei vulnerability scanner with MCP-compatible applications, enabling AI assistants to perform security testing through natural language interactions.

Haiguitang MCP Server

Haiguitang MCP Server

사용자들이 LLM을 게임 호스트로 활용하여 '거북이 수프' 퍼즐 게임을 즐길 수 있도록 하는 MCP 서버입니다. 게임 규칙, 퍼즐, 그리고 포괄적인 퍼즐 정보에 접근할 수 있는 도구를 제공합니다.

@sequel/mcp

@sequel/mcp

클로드, 커서, 윈드서프용 MCP 데이터베이스 서버

Everforth GitHub MCP Server

Everforth GitHub MCP Server

Visa Acceptance

Visa Acceptance

The Visa Acceptance Model Context Protocol server allows you to integrate with Visa Acceptance APIs through function calling. This server supports several tools to interact with various Visa Acceptance services.

Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare

A server that implements the Model Context Protocol (MCP) on Cloudflare Workers, allowing Claude to access external tools through a secure OAuth login system.

DuckDB-RAG-MCP-Sample

DuckDB-RAG-MCP-Sample

An MCP server that enables RAG (Retrieval-Augmented Generation) on markdown documents by converting them to embedding vectors and performing vector search using DuckDB.

Marvin MCP Server

Marvin MCP Server

A server for managing and controlling Marvin, providing an interface for interacting with the Marvin system.

Build Unblocker MCP

Build Unblocker MCP

A Model-Context-Protocol server for Cursor IDE that monitors and terminates hung Windows build executables (like cl.exe, link.exe, msbuild.exe) when they become idle.

Google Calendar MCP Server

Google Calendar MCP Server

Enables interaction with Google Calendar through OAuth 2.0 authentication. Supports listing, creating, and deleting calendar events with timezone handling and RFC3339 date formatting.

Gitlab MCP Server

Gitlab MCP Server

TAK Server MCP

TAK Server MCP

A Model Context Protocol server that integrates TAK Server with AI systems, providing geospatial-aware tools for querying, analyzing, and interacting with tactical data.

Kubernetes MCP

Kubernetes MCP

An MCP server that enables interaction with Kubernetes resources through natural language interfaces like Goose CLI, allowing users to get, read, and patch Kubernetes resources.

Yango Tech MCP Server

Yango Tech MCP Server

A server that enables seamless integration with Yango Tech e-commerce platform through Claude Desktop and Cursor IDE, allowing users to query orders, products, inventory and other business data using natural language.

Hyperliquid MCP Server - Complete Implementation

Hyperliquid MCP Server - Complete Implementation

거울

ManaMurah MCP Server

ManaMurah MCP Server

An AI-optimized Model Context Protocol server for querying Malaysian consumer goods prices from official KPDN Pricecatcher data, enabling natural language price searches and comparisons across regions.

BuildingLink MCP Server

BuildingLink MCP Server

MCP server that enables collection of data from BuildingLink, providing access to occupant profiles, vendors, deliveries, library items, announcements, and other building-related information.

BasicSec MCP Server

BasicSec MCP Server

Enables DNS and email security analysis through passive and active scanning capabilities. Provides comprehensive domain security checks including SPF, DMARC, DNSSEC validation, MX record analysis, and SMTP connectivity testing.

WordPress MCP Server

WordPress MCP Server

A Model Context Protocol server that enables AI assistants to manage WordPress sites and create content with AI-generated featured images.

bsc-multisend-mcp

bsc-multisend-mcp

An MCP server that enables agents to perform bulk BNB and BEP20 token transfers on BSC.

test

test

test