diff --git a/semantic_router/index/base.py b/semantic_router/index/base.py
index da4fba548e957f3cda6589c961a3be321759aac9..37e7be55cf4c186d157859d824821bf72c45062b 100644
--- a/semantic_router/index/base.py
+++ b/semantic_router/index/base.py
@@ -50,7 +50,15 @@ class BaseIndex(BaseModel):
         _, metadata = self._get_all(include_metadata=True)
         route_tuples: List[
             Tuple[str, str, Optional[Dict[str, Any]], Dict[str, Any]]
-        ] = [(x["sr_route"], x["sr_utterance"], None, {}) for x in metadata]
+        ] = [
+            (
+                x["sr_route"],
+                x["sr_utterance"],
+                x.get("sr_function_schema", None),
+                x.get("sr_metadata", {}),
+            )
+            for x in metadata
+        ]
         return route_tuples
 
     def get_routes(self) -> List[Route]: