from core_shared.observability import add_observability from core_shared.security import add_internal_service_auth from fastapi import FastAPI from app.api.routes import router from app.bootstrap.settings import ToolServiceSettings from app.db.session import build_session_factory def create_app() -> FastAPI: settings = ToolServiceSettings() app = FastAPI( title="agent-platform tool-service", version="0.1.0") app.state.settings = settings app.state.session_factory = build_session_factory(settings) add_observability(app, settings.service_name) add_internal_service_auth(app, settings) app.include_router(router, prefix="/tools", tags=["tools"]) return app