{"id":25937829,"url":"https://github.com/getsimpletool/mcp-sse-proxy","last_synced_at":"2025-03-04T03:31:56.158Z","repository":{"id":270824770,"uuid":"911544713","full_name":"getsimpletool/mcp-sse-proxy","owner":"getsimpletool","description":"MCP2SSE Proxy ClaudeAI client","archived":false,"fork":false,"pushed_at":"2025-01-03T17:58:38.000Z","size":20,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-20T05:17:42.543Z","etag":null,"topics":["ai","anthropic-claude","claude-ai","mcp","modelcontextprotocol","sse-client"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/getsimpletool.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-03T09:13:35.000Z","updated_at":"2025-02-11T18:49:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"020b94e8-cbcd-41e9-8711-222b0acc13eb","html_url":"https://github.com/getsimpletool/mcp-sse-proxy","commit_stats":null,"previous_names":["nchekwa/mcp-sse-proxy","getsimpletool/mcp-sse-proxy"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getsimpletool%2Fmcp-sse-proxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getsimpletool%2Fmcp-sse-proxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getsimpletool%2Fmcp-sse-proxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getsimpletool%2Fmcp-sse-proxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/getsimpletool","download_url":"https://codeload.github.com/getsimpletool/mcp-sse-proxy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241778117,"owners_count":20019048,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","anthropic-claude","claude-ai","mcp","modelcontextprotocol","sse-client"],"created_at":"2025-03-04T03:31:32.203Z","updated_at":"2025-03-04T03:31:56.146Z","avatar_url":"https://github.com/getsimpletool.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MCP SSE Proxy\n\nMCP2SSE Proxy ClaudeAI client for streaming events and managing remote tools.\n\n## Table of Contents\n- [Features](#features)\n- [Prerequisites](#prerequisites)\n- [Installation](#installation)\n- [Quick Start](#quick-start)\n- [Usage](#usage)\n- [Configuration](#configuration)\n  - [Command-Line Arguments](#command-line-arguments)\n  - [Environment Variables](#environment-variables)\n  - [.env File Configuration](#env-file-configuration)\n- [Advanced Usage](#advanced-usage)\n- [Logging](#logging)\n- [Contributing](#contributing)\n- [License](#license)\n- [Authors](#authors)\n\n## Features\n- Server-Sent Events (SSE) streaming\n- Remote tool and prompt discovery\n- Environment variable resource management\n- Configurable connection and retry mechanisms\n- Flexible logging and debugging support\n\n## Prerequisites\n- Python 3.8+\n- Dependencies:\n  - mcp\n  - httpx\n  - python-dotenv\n  - anyio\n  - httpx-sse\n\n## Installation\n\n### Clone the Repository\n```bash\ngit clone https://github.com/your-org/mcp-sse-proxy.git\ncd mcp-sse-proxy\n```\n\n### Install Dependencies\n```bash\npip install -r requirements.txt\n```\n\n### Claude AI configuration\n- Windows Config location: `C:\\Users\\\u003cUSERNAME\u003e\\AppData\\Roaming\\Claude\\claude_desktop_config`\u003cbr\u003e\n[or open via clinent menu: `File-\u003eSettings` then `Developer`-\u003e`Edit Config`]\n\nConfig example for Windows:\n```json\n{\n  \"globalShortcut\": \"\",\n  \"mcpServers\": {\n    \"mcp-sse-proxy\": {\n      \"command\": \"C:\\\\Users\\\\\u003cUSERNAME\u003e\\\\AppData\\\\Local\\\\Programs\\\\Python\\\\Python312\\\\python.exe\",\n      \"args\": [\n        \"C:\\\\mcp-sse-proxy-claude\\\\src\\\\mcp_sse_proxy.py\",\n\t\t\"--base-url\", \"http://\u003cIP_ADDRESS\u003e:8000\",\n\t\t\"--debug-enabled\"\n      ],\n\t  \"env\": {\n\t\t  \"RESOURCE_OPENAI_API_KEY\": \"sk-xxx\",\n\t\t  \"RESOURCE_BRAVE_API_KEY\": \"BSAxxxx\"\n\t  }\n    }\n  }\n}\n```\n- MacOS Config Location: `~/Library/Application Support/Claude/claude_desktop_config.json`\n```json\n{}\n```\n\n## Quick Start\n\n### Basic Run (use .env to populate environment variables)\n```bash\npython src/mcp_sse_proxy.py\n```\n\n### Run with Custom Base URL\n```bash\npython src/mcp_sse_proxy.py --base-url https://custom-mcp-server.com\n```\n\n## Usage\n\n### Basic Usage\nThe MCP SSE Proxy connects to a remote server and proxies events to a local MCP server. By default, it uses predefined settings.\n\n### Key Functionalities\n- List available remote tools\n- Retrieve prompts\n- Call remote tools\n- Stream server-sent events\n\n## Configuration\n\n### Command-Line Arguments\n\n#### `--base-url`\n- **Description**: Specify the base URL for the MCP server\n- **Default**: Predefined `BASE_URL` in the source code\n- **Example**: \n  ```bash\n  python src/mcp_sse_proxy.py --base-url https://custom-mcp-server.com\n  ```\n\n#### `--debug-enabled`\n- **Description**: Enable debug file logging\n- **Default**: Disabled\n- **Example**: \n  ```bash\n  python src/mcp_sse_proxy.py --debug-enabled\n  ```\n\n### Environment Variables\n\n#### Logging Configuration\n- **`MCP_SSE_PROXY_DEBUG`**\n  - **Description**: Enable or disable debug logging\n  - **Values**: `True` or `False`\n  - **Default**: `False`\n  - **Behavior**: Creates `mcp_sse_proxy_debug.log` when enabled\n  - **Example**: \n    ```bash\n    export MCP_SSE_PROXY_BASE_URL=http://127.0.0.1:8000\n    export MCP_SSE_PROXY_DEBUG=True\n    python src/mcp_sse_proxy.py\n    ```\n\n#### Resource Subscription\n- **`RESOURCE_*` Prefix**\n  - **Description**: Environment variables sent to the server as resources\n  - **Behavior**: Prefix [RESOURCE_] will be removed before sending to server\n  - **Example**: \n    ```bash\n    export RESOURCE_OPENAI_API_KEY=your_api_key\n    export RESOURCE_CUSTOM_CONFIG=some_value\n    ```\n\n### .env File Configuration\nCreate a `.env` file in the project root:\n\n```\nMCP_SSE_PROXY_DEBUG=True\nMCP_SSE_PROXY_BASE_URL=http://127.0.0.1:8000\nRESOURCE_OPENAI_API_KEY=your_api_key\nRESOURCE_CUSTOM_CONFIG=some_value\n```\n\n### Configuration Precedence\n1. Command-line arguments\n2. Environment variables\n3. `.env` file\n4. Default values in the source code\n\n## Advanced Usage\n\n### Programmatic Configuration\nYou can also configure the proxy programmatically by modifying the `SseClient` parameters.\n\n### Retry Mechanisms\n- Configurable connection retry delay\n- Exponential backoff for connection attempts\n\n## Logging\n\n### Debug Logging\n- Note that by design MCP SSE Proxy will not print any messages after running in CLI mode. As by design, [MCP will not log anything to STDIO, as this will interfere with protocol operation.](https://modelcontextprotocol.io/docs/tools/debugging#implementing-logging)\n- Thats why, for more details - enabled via `MCP_SSE_PROXY_DEBUG` or `--debug-enabled` debug file.\n- Logs stored in `mcp_sse_proxy_debug.log` by default in same folder where mcp_sse_proxy.exe is located.\n- Provides detailed information about SSE connections, tool calls, and system events (in debug file, you will see both side of connection messages - MCP and SSE)\n\n\n⚠️ **Warning**: Enabling debug logging may expose sensitive information in logs. ⚠️\n\n## Contributing\nContributions are welcome! Please follow these steps:\n1. Fork the repository\n2. Create your feature branch\n3. Commit your changes\n4. Push to the branch\n5. Create a Pull Request\n\n## FAQ Q\u0026A\n\n\n## License\nMIT\n\n## Authors\n- Nchekwa. Artur Zdolinski\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetsimpletool%2Fmcp-sse-proxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgetsimpletool%2Fmcp-sse-proxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetsimpletool%2Fmcp-sse-proxy/lists"}