Alex uploads three AI governance documents to a memory folder, turns on Searchable by AI, and has a working retrieval layer before writing any code. The Task that exposes it to Claude is a search call and a payload. Ten minutes later Claude is comparing how NIST and the EU classify AI risk, using those documents as its source.
What's covered
- Enabling Searchable by AI on a memory folder and uploading governance documents from the EU, the White House, and NIST
- The PDF content view and the Chunks tab, which show what got embedded and what a query is matched against
- A Task that runs
qbash.memories.vector_searchagainst the folder, builds a payload from the hits, and returns it - Exposing that Task as an MCP tool and adding it to Claude as a connector
- Claude running several searches to answer "How do the NIST framework and the EU AI Act differ in how they classify AI risk levels?"
- Dropping new files into the folder and having them indexed for the next query
Chunking, embedding, and index maintenance belong to the folder, so the Task only decides what to search and which fields to hand back:
question = qbash.inputs.get("question")
hits = qbash.memories.vector_search(
query=question,
folder="AI Governance",
limit=5,
)
qbash.output([
{"source": h["name"], "content": h["content"], "score": h["similarity"]}
for h in hits
])
A keyword search would not get far on the demo question, since the two documents were written independently and describe risk in their own terms. Claude searches more than once, rephrasing as it goes, then assembles the comparison from what comes back. The similarity scores travel with each hit, so the answer can be traced to the chunks that produced it.
Because the Task is reachable over MCP, the same folder answers from Claude Code, ChatGPT, Cursor, or anything else that speaks the protocol. Each client connects to the Task, so editing the retrieval logic later updates all of them at once.
Read the docs: Searchable knowledge and MCP Servers.
Video transcript
I'm going to build a quick rag or vector search and show how you can use it to chat with documents from Claude. To start with, I have a memory folder. I've turned on AI search and I've uploaded three AI governance documents. I have one from the EU, one from the White House, and one from NIST. If I click in, I can see the PDF content.
I also have a chunks tab that shows me the raw chunks of data that have been extracted from this document. These are the chunks that get embedded in a vector database and searched by our chat. Here's the task I'm going to use to expose this vector search to my chat client. It's pretty simple. I've got a hardcoded folder ID that refers to that folder we just saw.
And I'm using the Aisle Memories vector search SDK to actually do the vector search. Afterwards, I construct a payload based on what I found and I return it. Let's head over to Claude. What I've already done is expose my task as an MCP tool and I've configured that in Claude as a connector. Now, I can just chat with my documents.
How do the NIST framework and the EU AI Act differ in how they classify AI risk levels? Claude will connect to my server. It's going to perform a series of vector searches and when it's ready, it's going to respond. And here it comes. So, it's made several vector searches and it's synthesized that information into one response.
If I want to add additional documents, I just go back to that folder and I upload them. They'll be indexed right away and immediately available for search in my Claude instance. You can connect this to Claude code. You can connect it to chat GPT. You can also connect it to Aisle.