Other frameworks¶
Hub: documentation home · Python API.
Anything that can call an async function with a JSON object can use connect. You do not need a first-party adapter. Install the store extra (vectorsmith[qdrant]); you do not need langchain.
from vectorsmith import connect
vs = connect("tools.invoices.yaml", "tools.tickets.yaml")
try:
print(vs.names)
rows = await vs.call("search_invoices", {"query": "Globex", "limit": 3})
# wrap vs.call / vs.schemas in your framework's Tool type
finally:
await vs.aclose()
vs.schemas is MCP shape (name, description, inputSchema). vs.as_anthropic() remaps inputSchema → input_schema.
LlamaIndex¶
from llama_index.core.tools import FunctionTool
from vectorsmith import connect
vs = connect("tools.yaml")
def _wrap(name: str):
async def _fn(**kwargs):
return await vs.call(name, kwargs)
return _fn
tools = [
FunctionTool.from_defaults(
async_fn=_wrap(s["name"]),
name=s["name"],
description=s.get("description") or s["name"],
)
for s in vs.schemas
]
CrewAI¶
CrewAI agents accept LangChain tools. Use LangChain load_tools and pass the list into the CrewAI agent.
Official MCP Python client¶
If you would rather not import VectorSmith in the agent process, run vectorsmith serve and attach with the MCP Python SDK or langchain-mcp-adapters — same as Slack or GitHub.