betodealmeida commented on issue #33870:
URL: https://github.com/apache/superset/issues/33870#issuecomment-3001127174

   Love this!
   
   One thing that I would like to see in Superset in general, not just for MCP, 
is the a ability to run blueprints either in-app or in a separate app. For 
example, if SQL Lab was written as a blueprint we could mount it in the main 
Superset app:
   
   ```python
   # superset/app.py
   from superset.sqllab import blueprint as sqllab_bp
   
   def create_app(
       superset_config_module: Optional[str] = None,
       superset_app_root: Optional[str] = None,
   ) -> Flask:
       app = SupersetApp(__name__)
   
       app.register_blueprint(sqllab_bp)
   ```
   
   But if someone wants to scale horizontally they could run the SQL Lab 
blueprint app in a separate Flask app in a separate container. We could imagine 
something like this:
   
   
   ```python
   # superset_config.py
   SQLLAB_ENDPOINT: str | None = "http://10.0.0.1:9000";
   ```
   
   
   ```python
   # superset/app.py
   from superset.sqllab import blueprint as sqllab_bp
   
   def create_app(
       superset_config_module: Optional[str] = None,
       superset_app_root: Optional[str] = None,
   ) -> Flask:
       app = SupersetApp(__name__)
   
       if not SQLLAB_ENDPOINT:
           app.register_blueprint(sqllab_bp)
           SQLLAB_ENDPOINT = url_for("sqllab_bp.index", _external=True)
   ```
   
   Then we'd expose `SQLLAB_ENDPOINT` to the frontend, for all SQL Lab API 
calls.
   
   If we did this for MCP, users would have the option of running a single app, 
with the MCP blueprint mounted directly in the Superset app; or run a separate 
app for the MCP server via `superset mcp run --port 5008`. The former is easier 
for beginners and for testing, while the latter is more robust and scalable.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to