Skip to main content

MCP server that exposes ZettaQuant V-SLM (topic-conditioned sentence relevancy) to any MCP-aware LLM host — Claude Desktop, Cursor, Zed, Windsurf.

Project description

zettaquant-vslm-mcp

MCP server that exposes ZettaQuant V-SLM to any MCP-aware LLM host.

Add three lines to your Claude Desktop / Cursor / Zed / Windsurf config and your model can autonomously filter noisy context (earnings-call transcripts, news articles, long reports, log lines) using ZettaQuant's topic-conditioned relevancy classifier — typically cutting token spend 5-10× before the LLM even sees the input.


What it exposes

One tool, over stdio, via the Model Context Protocol:

Tool Purpose
vslm_predict(sentences, query) Filter sentences to only those relevant to query. Returns relevant_sentences plus stats. Uses the broad-domain V-SLM general_context_agent under the hood.

The LLM decides when to call it on its own — no code you have to write in the host.


Install & configure

You need a ZettaQuant API key with the vslm scope. Get one at zettaquant.ai (or ask your account contact).

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "zettaquant-vslm": {
      "command": "uvx",
      "args": ["zettaquant-vslm-mcp"],
      "env": {
        "ZQ_API_KEY": "<your api key>"
      }
    }
  }
}

Restart Claude Desktop. The tools appear under the "Tools" menu.

Cursor

Edit ~/.cursor/mcp.json:

{
  "mcpServers": {
    "zettaquant-vslm": {
      "command": "uvx",
      "args": ["zettaquant-vslm-mcp"],
      "env": { "ZQ_API_KEY": "<your api key>" }
    }
  }
}

Restart Cursor.

Zed

In ~/.config/zed/settings.json:

{
  "context_servers": {
    "zettaquant-vslm": {
      "command": {
        "path": "uvx",
        "args": ["zettaquant-vslm-mcp"],
        "env": { "ZQ_API_KEY": "<your api key>" }
      }
    }
  }
}

Windsurf / other MCP hosts

Any host that supports the standard mcpServers config shape works — use the same command + args + env block as above.


Environment variables

Variable Required Default Notes
ZQ_API_KEY Your ZettaQuant API key. Must have the vslm scope.
ZQ_BASE_URL https://api.zettaquant.ai Override for staging or a private gateway.

Usage examples in the LLM

Once installed, just ask naturally. Some prompts that will trigger vslm_predict:

  • "Here are 40 sentences from Apple's Q3 earnings call. Pull out the ones about AI capex plans."
  • "Filter these log lines down to anything related to lateral movement."
  • "I pasted a 10-K risk section. Only show me sentences about supply-chain exposure."

The model calls vslm_predict under the hood, gets back the relevant sentences, and works from those — cheaper and more precise than reading the full input.


What is MCP?

The Model Context Protocol is an open standard (released by Anthropic, November 2024) for connecting LLM hosts to external tools and data. It's essentially "USB-C for AI apps" — write one integration and every MCP-aware host can use it. This package is a server in MCP parlance; the LLM host is the client.


Development

uv venv
uv pip install -e ".[dev]"
export ZQ_API_KEY="..."
python -m zettaquant_vslm_mcp

The server speaks JSON-RPC on stdin/stdout. To poke it manually, use the MCP Inspector:

npx @modelcontextprotocol/inspector uvx zettaquant-vslm-mcp

Troubleshooting

  • "ZQ_API_KEY is not set" in the host logs → the env block in your MCP config didn't propagate. Confirm the config file path and restart the host.
  • 401 in tool output → key is valid but wrong. Try it directly: curl -H "x-api-key: $ZQ_API_KEY" https://api.zettaquant.ai/v1/usage/me.
  • 403 SCOPE_DENIED → your key doesn't have the vslm scope. Contact ZettaQuant.
  • 429 QUOTA_EXCEEDED → you hit your per-period cap; the error message includes the reset time.

License

MIT.

Project details


Download files

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

Source Distribution

zettaquant_vslm_mcp-0.1.0.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

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

zettaquant_vslm_mcp-0.1.0-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file zettaquant_vslm_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: zettaquant_vslm_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for zettaquant_vslm_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 04c2b535f53de6efccb070f8091af124e65280ff534de70ab9f74c5ac18bbba1
MD5 79f7a633a9971c223ddbd33056f54561
BLAKE2b-256 32fbb647dfe23063d3691c9445ff9da8aab50e57492b15bec54ed33f1aa0eb5c

See more details on using hashes here.

File details

Details for the file zettaquant_vslm_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for zettaquant_vslm_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1fc42b2f95e5c1e58ac11079a48e8494e483c3274df2a172ae591f7e760ca6d7
MD5 ddf050aa195ff37fa4e05a8c9bb5c734
BLAKE2b-256 2869da55ebf7b27b54295607f00ed6c40fb4b8e5203a1fca62a3ffd39b3ef052

See more details on using hashes here.

Supported by

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