feat(server): integrate MCP queries and investigation messaging
Add project-bound OAuth MCP queries and controlled analysis with scoped evidence, limits, timeouts and a nearby-model spatial query using EPSG:4326 inputs. Default nearby searches to 200 meters and five results. Integrate investigation messaging/presentation, health/readiness and typed history; remove duplicate web search and fix online simulation and compressed baseline writes. Include project migrations 023-025; keep local credentials and demo seeding excluded. Validation: 319 focused pytest checks; real PostGIS temporary-table regression; read-only Jinqian bridge radius comparison; cross-language MCP discovery/calls.
This commit is contained in:
+13
-5
@@ -4,6 +4,7 @@ from app.api.v1.endpoints import (
|
||||
access,
|
||||
admin_metadata,
|
||||
agent_auth,
|
||||
agent_messages,
|
||||
audit,
|
||||
burst_detection,
|
||||
burst_location,
|
||||
@@ -12,12 +13,12 @@ from app.api.v1.endpoints import (
|
||||
meta,
|
||||
model_import,
|
||||
operational_tasks,
|
||||
place_search,
|
||||
project,
|
||||
project_data,
|
||||
scada,
|
||||
sensor_placement,
|
||||
simulation,
|
||||
web_search,
|
||||
workbench_runtime,
|
||||
workbench_events,
|
||||
)
|
||||
@@ -103,6 +104,7 @@ api_router.include_router(
|
||||
)
|
||||
api_router.include_router(access.router, tags=["Access Control"])
|
||||
api_router.include_router(agent_auth.router, tags=["Agent Auth"])
|
||||
api_router.include_router(agent_messages.router, tags=["Agent Messages"])
|
||||
api_router.include_router(
|
||||
admin_metadata.router,
|
||||
tags=["Metadata Admin"],
|
||||
@@ -159,13 +161,13 @@ api_router.include_router(
|
||||
dependencies=[optimization_run_access],
|
||||
)
|
||||
api_router.include_router(
|
||||
web_search.router,
|
||||
tags=["Web Search"],
|
||||
geocoding.router,
|
||||
tags=["Geocoding"],
|
||||
dependencies=[webgis_view_access],
|
||||
)
|
||||
api_router.include_router(
|
||||
geocoding.router,
|
||||
tags=["Geocoding"],
|
||||
place_search.router,
|
||||
tags=["Place Search"],
|
||||
dependencies=[webgis_view_access],
|
||||
)
|
||||
api_router.include_router(
|
||||
@@ -195,6 +197,12 @@ for endpoint_router, tag in (
|
||||
dependencies=[simulation_access],
|
||||
)
|
||||
|
||||
api_router.include_router(
|
||||
ts_composite.history_router,
|
||||
tags=["TimescaleDB - Composite"],
|
||||
dependencies=[Depends(require_permission(SCADA_VIEW))],
|
||||
)
|
||||
|
||||
for endpoint_router, tag in (
|
||||
(ts_scada.router, "TimescaleDB - SCADA"),
|
||||
(ts_composite.router, "TimescaleDB - Composite"),
|
||||
|
||||
Reference in New Issue
Block a user