Skip to content

Commit f1b5fbd

Browse files
authored
Merge pull request #38 from open-webui/dev
0.0.8
2 parents e55975a + 65a4871 commit f1b5fbd

File tree

5 files changed

+21
-3
lines changed

5 files changed

+21
-3
lines changed

CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.0.8] - 2025-04-03
9+
10+
### Added
11+
12+
- 🔒 **SSL Support via '--ssl-certfile' and '--ssl-keyfile'**: Easily enable HTTPS for your mcpo servers by passing certificate and key files—ideal for securing deployments in production, enabling encrypted communication between clients (e.g. browsers, AI agents) and your MCP tools without external proxies.
13+
814
## [0.0.7] - 2025-04-03
915

1016
### Added

README.md

+2
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ uvx mcpo --port 8000 --api-key "top-secret" -- uvx mcp-server-time --local-timez
4848

4949
That’s it. Your MCP tool is now available at http://localhost:8000 with a generated OpenAPI schema — test it live at [http://localhost:8000/docs](http://localhost:8000/docs).
5050

51+
🤝 **To integrate with Open WebUI after launching the server, check our [docs](https://docs.openwebui.com/openapi-servers/open-webui/).**
52+
5153
### 🔄 Using a Config File
5254

5355
You can serve multiple MCP tools via a single config file that follows the [Claude Desktop](https://modelcontextprotocol.io/quickstart/user) format:

pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "mcpo"
3-
version = "0.0.7"
3+
version = "0.0.8"
44
description = "A simple, secure MCP-to-OpenAPI proxy server"
55
authors = [
66
{ name = "Timothy Jaeryang Baek", email = "[email protected]" }

src/mcpo/__init__.py

+8
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,12 @@ def main(
4141
version: Annotated[
4242
Optional[str], typer.Option("--version", "-v", help="Server version")
4343
] = None,
44+
ssl_certfile: Annotated[
45+
Optional[str], typer.Option("--ssl-certfile", "-t", help="SSL certfile")
46+
] = None,
47+
ssl_keyfile: Annotated[
48+
Optional[str], typer.Option("--ssl-keyfile", "-k", help="SSL keyfile")
49+
] = None,
4450
):
4551
server_command = None
4652
if not config:
@@ -87,6 +93,8 @@ def main(
8793
description=description,
8894
version=version,
8995
server_command=server_command,
96+
ssl_certfile=ssl_certfile,
97+
ssl_keyfile=ssl_keyfile,
9098
)
9199
)
92100

src/mcpo/main.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -157,9 +157,11 @@ async def run(
157157
kwargs.get("description") or "Automatically generated API from MCP Tool Schemas"
158158
)
159159
version = kwargs.get("version") or "1.0"
160+
ssl_certfile = kwargs.get("ssl_certfile")
161+
ssl_keyfile= kwargs.get("ssl_keyfile")
160162

161163
main_app = FastAPI(
162-
title=name, description=description, version=version, lifespan=lifespan
164+
title=name, description=description, version=version, ssl_certfile=ssl_certfile, ssl_keyfile=ssl_keyfile, lifespan=lifespan
163165
)
164166

165167
main_app.add_middleware(
@@ -212,7 +214,7 @@ async def run(
212214
else:
213215
raise ValueError("You must provide either server_command or config.")
214216

215-
config = uvicorn.Config(app=main_app, host=host, port=port, log_level="info")
217+
config = uvicorn.Config(app=main_app, host=host, port=port, ssl_certfile=ssl_certfile , ssl_keyfile=ssl_keyfile ,log_level="info")
216218
server = uvicorn.Server(config)
217219

218220
await server.serve()

0 commit comments

Comments
 (0)