delete_index
Delete a knowledge index and all its documents to remove outdated or unused data from your local RAG system.
Instructions
Delete a knowledge index and all its documents.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| index_name | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/foundry_reverse/knowledge.py:159-164 (handler)Core handler: deletes an index by name from the in-memory _indexes dict and persists the change via _save().
def delete_index(index_name: str) -> dict[str, Any]: if index_name not in _indexes: raise ValueError(f"Index '{index_name}' not found.") del _indexes[index_name] _save() return {"status": "deleted", "name": index_name} - src/foundry_reverse/server.py:354-363 (registration)Registration of delete_index as an MCP tool via @mcp.tool decorator, delegating to kn.delete_index (knowledge.py).
@mcp.tool( name="delete_index", description="Delete a knowledge index and all its documents.", ) def delete_index(index_name: str) -> dict[str, Any]: """ Args: index_name: The name of the index to delete. """ return kn.delete_index(index_name) - The function signature acts as the schema: accepts string index_name, returns dict with status and name.
def delete_index(index_name: str) -> dict[str, Any]: if index_name not in _indexes: raise ValueError(f"Index '{index_name}' not found.") del _indexes[index_name] _save() - Helper _save() persists the _indexes dict to JSON file, called by delete_index after removal.
def _save() -> None: data = {} for idx_name, idx in _indexes.items(): data[idx_name] = { "embed_model": idx.embed_model, "documents": [ { "id": d.id, "text": d.text, "metadata": d.metadata, "embedding": d.embedding, } for d in idx.documents ], } STORE_PATH.write_text(json.dumps(data))