Skip to main content

VectorSmith

Your vector database, forged into tools an agent can actually use.

Write a tools.yaml. VectorSmith compiles it into typed, tenant-guarded tools — then you either import them in Python or serve them over MCP.

Docs · GitHub · Changelog

pip install "vectorsmith[qdrant]"

Store extras: qdrant · pgvector · chroma · pinecone · weaviate · milvuswhich stores ship.

Two doors, one YAML

You are building… Install Call
A Python agent (LangChain, LangGraph, OpenAI Agents, Anthropic SDK) pip install "vectorsmith[qdrant,langchain]" from vectorsmith import load_tools
A chat / IDE host (Claude Desktop, Claude Code, Codex, Cursor) pip install "vectorsmith[qdrant]" so vectorsmith is on PATH vectorsmith serve tools.yaml --name invoices

The agent never sees the store URL, the API key, or hidden tenant filters.

from vectorsmith import load_tools, connect

tools = load_tools("tools.invoices.yaml", env_file=".env")
# or
vs = connect("tools.invoices.yaml", env_file=".env")
rows = await vs.call("search_invoices", {"query": "Globex", "limit": 3})
await vs.aclose()
{
  "mcpServers": {
    "invoices": {
      "command": "vectorsmith",
      "args": ["serve", "/absolute/path/tools.invoices.yaml", "--env-file", "/absolute/path/.env", "--name", "invoices"]
    }
  }
}

Host guides: Claude Desktop · Claude Code · Codex · Cursor.

Write a tool, not a prompt

tds_version: "1"

connections:
  invoices:
    backend: qdrant
    url: ${QDRANT_URL}
    api_key: ${QDRANT_API_KEY:-}

tools:
  - name: search_invoices
    kind: search
    description: >
      Search invoices by free text and filter by client, status, or amount.
    target: { connection: invoices, collection: invoices }
    query: { param: query, required: false }
    static_filters:
      - { path: tenant, op: eq, value: acme }
    parameters:
      - { name: client, path: client_name, dtype: keyword, op: eq }
      - { name: status, path: status, dtype: keyword, op: in,
          enum: [draft, sent, paid, overdue] }
    output:
      fields: [invoice_id, client_name, status, amount]

tenant: acme is not in the model-facing schema. Full contract: tools.yaml reference.

Apache-2.0. Forge the tools. Keep the store.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vectorsmith-0.1.1.tar.gz (54.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vectorsmith-0.1.1-py3-none-any.whl (81.5 kB view details)

Uploaded Python 3

File details

Details for the file vectorsmith-0.1.1.tar.gz.

File metadata

  • Download URL: vectorsmith-0.1.1.tar.gz
  • Upload date:
  • Size: 54.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vectorsmith-0.1.1.tar.gz
Algorithm Hash digest
SHA256 281429e410b27df740b41e8127f2c9c4cb1f18357c40472f63c6889a3a95af79
MD5 848bb45746426e894a73bb05d1ec0b66
BLAKE2b-256 8410818f0ff94ac451732ee4b9945d0d094b60b52ba551ac5aee512f177ed20a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vectorsmith-0.1.1.tar.gz:

Publisher: release.yml on kjgpta/vectorsmith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vectorsmith-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: vectorsmith-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 81.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vectorsmith-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0c4962e3602a7ea9e57bd280fb7c426a58675edf04ac0da2acd31d7134e4f1ce
MD5 8f2e5d13c4bd99d2f8d9954b71e14544
BLAKE2b-256 ac95aa7124437981118539b344bebe9ff1b4e89e8d5b2b1d0080220017e92c85

See more details on using hashes here.

Provenance

The following attestation bundles were made for vectorsmith-0.1.1-py3-none-any.whl:

Publisher: release.yml on kjgpta/vectorsmith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page