Poe Proxy MCP Server

MIT License
  • Linux
  • Apple

Integrations

  • Supports configuration through environment variables stored in .env files for settings like API keys, debug mode, and file size limits.

  • Provides file sharing capabilities with AI models, allowing users to upload and analyze files with size limits configurable through environment variables.

  • Repository hosting for the project code with installation instructions for cloning from GitHub.

PoE 프록시 MCP 서버

Poe.com API를 프록시하는 FastMCP 서버로, Poe 모델 쿼리 및 파일 공유 도구를 제공합니다. 이 서버는 Claude 3.7 Sonnet 및 Poe를 통해 제공되는 다른 모델과의 호환성을 보장하도록 특별히 설계되었습니다.

특징

  • 다중 모델 지원 : GPT-4o, Claude 3 Opus, Claude 3 Sonnet, Gemini Pro 등 Poe에서 사용 가능한 다양한 모델을 쿼리합니다.
  • 클로드 3.7 소네트 호환성 : 클로드의 사고 프로토콜에 대한 특별 처리
  • 파일 공유 : 이를 지원하는 모델과 파일을 공유합니다.
  • 세션 관리 : 여러 쿼리에 걸쳐 대화 컨텍스트 유지
  • 스트리밍 응답 : 모델로부터 실시간 스트리밍 응답을 받으세요
  • 웹 클라이언트 지원 : SSE 전송을 통해 웹 클라이언트와 함께 서버 사용

설치

필수 조건

  • Python 3.8 이상
  • Poe API 키( Poe.com 에서 받으세요)

빠른 설치

제공된 설치 스크립트를 사용하세요.

지엑스피1

스크립트는 다음을 수행합니다.

  1. 가상 환경 만들기
  2. 모든 종속성을 설치하세요
  3. .env 파일이 없으면 생성하세요.
  4. STDIO 및 SSE 전송을 위한 서버 설정

수동 설정

수동으로 설정하려면 다음을 수행하세요.

  1. 이 저장소를 복제하세요:
    git clone https://github.com/Anansitrading/poe-proxy-mcp.git cd poe-proxy-mcp
  2. 가상 환경을 만들고 종속성을 설치합니다.
    python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt
  3. Poe API 키로 .env 파일을 만듭니다.
    cp .env.example .env # Edit .env with your API key

패키지로 설치

Python 패키지로 서버를 설치할 수도 있습니다.

pip install -e .

이렇게 하면 해당 환경에서 poe-mcppoe-mcp-sse 명령을 사용할 수 있습니다.

구성

서버는 환경 변수를 사용하여 구성할 수 있습니다.

변하기 쉬운설명기본
POE_API_KEYPoe API 키(필수)없음
DEBUG_MODE자세한 로깅 활성화false
CLAUDE_COMPATIBLEClaude 호환성 모드 활성화true
MAX_FILE_SIZE_MB업로드를 위한 최대 파일 크기10
SESSION_EXPIRY_MINUTES세션 만료 기간(분)60

용법

서버 실행

표준 모드(STDIO)

이는 기본 모드이며 명령줄 사용에 적합합니다.

# If installed as a package: poe-mcp # Or directly: python poe_server.py
웹 모드(SSE)

이 모드를 사용하면 서버를 웹 클라이언트와 함께 사용할 수 있습니다.

# If installed as a package: poe-mcp-sse [port] # Or directly: python run_sse_server.py [port]

서버는 기본적으로 포트 8000에서 시작하지만 다른 포트를 지정할 수도 있습니다.

사용 가능한 도구

서버는 다음 도구를 제공합니다.

ask_poe

Poe 봇에게 질문해 보세요.

response = await mcp.call("ask_poe", { "bot": "claude", # or "o3", "gemini", "perplexity", "gpt" "prompt": "What is the capital of France?", "session_id": "optional-session-id", # Optional "thinking": { # Optional, for Claude models "thinking_enabled": True, "thinking_depth": 2 } })
ask_with_attachment

Poe 봇에 파일을 첨부하여 질문을 올려보세요.

response = await mcp.call("ask_with_attachment", { "bot": "claude", "prompt": "Analyze this code", "attachment_path": "/path/to/file.py", "session_id": "optional-session-id", # Optional "thinking": { # Optional, for Claude models "thinking_enabled": True } })
clear_session

세션의 대화 기록을 지웁니다.

response = await mcp.call("clear_session", { "session_id": "your-session-id" })
list_available_models

사용 가능한 Poe 모델과 각 기능을 나열해 보세요.

response = await mcp.call("list_available_models", {})
get_server_info

서버 구성에 대한 정보를 얻으세요.

response = await mcp.call("get_server_info", {})

웹 클라이언트

간단한 웹 클라이언트가 examples 디렉토리에 포함되어 있습니다. 사용 방법은 다음과 같습니다.

  1. SSE 모드로 서버를 시작합니다.
    python run_sse_server.py
  2. 브라우저에서 examples/web_client.html 엽니다.
  3. 서버 URL을 입력합니다(기본값: http://localhost:8000 ). 그리고 "사용 가능한 모델 가져오기"를 클릭합니다.
  4. 모델을 선택하고, 프롬프트를 입력한 후 "제출"을 클릭하세요.

예시

간단한 쿼리

# examples/simple_query.py import asyncio from fastmcp import MCPClient async def main(): client = MCPClient("http://localhost:8000") response = await client.call("ask_poe", { "bot": "claude", "prompt": "Explain quantum computing in simple terms" }) print(f"Session ID: {response['session_id']}") print(f"Response: {response['text']}") if __name__ == "__main__": asyncio.run(main())

파일 첨부

# examples/file_attachment.py import asyncio from fastmcp import MCPClient async def main(): client = MCPClient("http://localhost:8000") response = await client.call("ask_with_attachment", { "bot": "claude", "prompt": "Analyze this code and suggest improvements", "attachment_path": "examples/simple_query.py" }) print(f"Session ID: {response['session_id']}") print(f"Response: {response['text']}") if __name__ == "__main__": asyncio.run(main())

클로드 호환성

이 서버는 Claude 모델, 특히 Claude 3.7 Sonnet에 대한 특수 처리 기능을 포함하고 있으며, 이는 사고 프로토콜에 대한 특정 형식을 요구합니다. Claude 모델을 사용할 경우:

  1. 서버는 자동으로 Claude 모델을 감지하고 적절한 형식을 적용합니다.
  2. thinking 매개변수를 제공하여 사고 프로토콜을 활성화할 수 있습니다.
    "thinking": { "thinking_enabled": True, "thinking_depth": 2, # Optional, default is 1 "thinking_style": "detailed" # Optional }
  3. 사고 프로토콜이 실패하면 서버는 자동으로 사고 프로토콜 없이 다시 시도합니다.

테스트

테스트 모음을 실행하려면:

python run_tests.py

자세한 출력을 위해:

python run_tests.py --verbose

문제 해결

일반적인 문제

  1. 인증 오류 : .env 파일에서 Poe API 키가 올바른지 확인하세요.
  2. 연결 오류 : 네트워크에서 Poe.com에 액세스할 수 있는지 확인하세요.
  3. 파일 업로드 오류 : 파일이 존재하고 크기 제한 내에 있는지 확인하세요.
  4. Claude Thinking Protocol 문제 : Claude의 Thinking Protocol에 오류가 발생하는 경우 .env 파일에서 CLAUDE_COMPATIBLE=false 설정하여 비활성화해보세요.

디버깅

더 자세한 로그를 얻으려면 .env 파일에서 DEBUG_MODE=true 설정하여 디버그 모드를 활성화하세요.

특허

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Poe.com API를 프록시하는 FastMCP 서버로, 사용자는 다양한 AI 모델(Claude 3.7 Sonnet 포함)을 쿼리하고 이를 지원하는 모델과 파일을 공유할 수 있습니다.

  1. Features
    1. Installation
      1. Prerequisites
      2. Quick Installation
      3. Manual Setup
      4. Installation as a Package
    2. Configuration
      1. Usage
        1. Running the Server
        2. Available Tools
      2. Web Client
        1. Examples
          1. Simple Query
          2. File Attachment
        2. Claude Compatibility
          1. Testing
            1. Troubleshooting
              1. Common Issues
              2. Debugging
            2. License

              Related MCP Servers

              • A
                security
                F
                license
                A
                quality
                An MCP protocol server that enables web search functionality using the Tavily API, allowing AI assistants to perform internet searches in real-time.
                Last updated -
                4
                2
                Python
              • -
                security
                A
                license
                -
                quality
                An MCP server that enables AI assistants like Claude to interact with Substack newsletters, allowing for post retrieval, content searching, and author information access through a standardized interface.
                Last updated -
                Python
                MIT License
                • Linux
                • Apple
              • -
                security
                A
                license
                -
                quality
                An MCP server that implements Claude Code-like functionality, allowing the AI to analyze codebases, modify files, execute commands, and manage projects through direct file system interactions.
                Last updated -
                125
                Python
                MIT License
                • Apple
                • Linux
              • -
                security
                F
                license
                -
                quality
                An MCP server that crawls API documentation websites and exposes their content to AI models, enabling them to search, browse, and reference API specifications.
                Last updated -
                Python

              View all related MCP servers

              ID: f5z8e8j9gt