Skip to main content

CBT Query MCP Server with cross-platform support

Project description

CBT Query MCP Server

A simple Model Context Protocol (MCP) server for querying TensorRT test coverage and case mapping data.

Features

  • Query all test cases and files
  • Get coverage mapping by case name
  • Query cases by files and/or functions
  • Simple HTTP client with proper error handling
  • Minimal logging and clean code structure

Installation

Prerequisites

  • Python 3.10 or later
  • pip package manager

Installation

installed from pypi

pip install cbt_query

Configuration for Cursor

Add the following configuration to your ~/.cursor/mcp.json file:

# ~/.cursor/mcp.json
{
  "mcpServers": {
    "trt_query": {
      "command": "python",
      "args": [
        "-m",
        "cbt_query"
      ],
      "env": {
        "CBT_SERVER_URL": "http://your_server_name:12345/"
      }
    }
  }
}

Available Tools

The MCP server provides the following tools:

  • query_all_cases: Get all test cases from the server
  • query_all_files: Get all files from the server
  • query_by_case: Get coverage mapping by case name
  • query: Query cases by files and/or functions
  • query_test_similarity: Compare test coverage similarity between two test lists

API Examples

# Get all cases
await query_all_cases()

# Get all files
await query_all_files()

# Get coverage by case
await query_by_case("test_case_name")

# Query by file
await query(file_name="example.cpp")

# Query by function
await query(funcs="example_function")

# Query by file and function
await query(file_name="example.cpp", funcs="example_function")

# Compare test coverage similarity
await query_test_similarity("L0", "L1")
await query_test_similarity(["test1", "test2"], ["test3", "test4"])
await query_test_similarity("trt_mod_test", "infer_test", filter_test_list=True)
await query_test_similarity("turtle_test1", "turtle_test2", use_turtle_names=True)

Development

uv init new_project cd new_project

Create virtual environment and activate it

uv venv source .venv/bin/activate

Install dependencies

uv add "mcp[cli]" httpx requests pip

Environment Setup

Make sure to set the CBT_SERVER_URL environment variable:

export CBT_SERVER_URL="http://your-server:12345"

Debug Mode

To enable debug mode with detailed logging, set the CBT_DEBUG environment variable:

export CBT_DEBUG=1
# or
export CBT_DEBUG=true

Troubleshooting

Common Issues

  1. CBT_SERVER_URL not set: Make sure the environment variable is set
  2. Import errors: Verify all dependencies are installed in the active environment
  3. Connection errors: Check that the CBT server is running and accessible

Logging

The server logs to stderr with INFO level by default.

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

cbt_query-0.5.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

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

cbt_query-0.5.0-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file cbt_query-0.5.0.tar.gz.

File metadata

  • Download URL: cbt_query-0.5.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for cbt_query-0.5.0.tar.gz
Algorithm Hash digest
SHA256 c3ad00717f333887cc0bc6213ede179d954ffa4bfd383c28eaf42f1f69f9a5b8
MD5 05a2e613652214f15c7711f09a13f55a
BLAKE2b-256 ec0327d314985bc06b8d7ecde8ea4c4f1e8686edcc19a583b63e93882574c31f

See more details on using hashes here.

File details

Details for the file cbt_query-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: cbt_query-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for cbt_query-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f14e4521fedf64d0d4a4bd8cdad44aa53a672e5640e30179d5d69bb4db43576a
MD5 77929b6d7326b1d07281f54c86d5347a
BLAKE2b-256 1a02d99248217f9fe2a34562a6fba3cca6717adfb2cfd1533f7db6e4336db2e1

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