mcp-trmm

mcp-trmm

3.5

The mcp-trmm project is designed to interact with the Tactical Remote Monitoring and Management (RMM) API, create an SQLite3 database from the API schema, and enable Retrieval-Augmented Generation (RAG) to enhance interaction with the API.

The primary goal of the mcp-trmm project is to parse the RMM API schema, store it in an SQLite3 database, and use it to augment queries made to the live RMM API. This is accomplished using several components, which work together to parse the RMM API schema and store it in an SQLite3 database, forward API queries to a live production RMM API server, and provide an LLM-powered CLI interface for querying and retrieving paths from the RMM API. The project includes scripts for converting YAML to JSON, creating a database from the JSON schema, querying the database, and acting as a proxy server to forward requests to the live RMM API. Additionally, it provides a command-line interface for interacting with the RMM API using a Large Language Model (LLM).

Features

  • Schema Parsing: Converts RMM API schema from YAML to JSON and stores it in an SQLite3 database.
  • Database Querying: Allows searching for API endpoints in the SQLite3 database using keywords.
  • MCP Proxy Server: Forwards requests to the live RMM API server using the MCP protocol.
  • Retrieval-Augmented Generation: Enhances API interaction with intelligent querying using LLM.
  • Asynchronous Requests: Utilizes httpx for asynchronous HTTP requests to the production API.

MCP Tools

  • {'03_mcpserver.py': 'Acts as an MCP proxy server, forwarding queries to the live production RMM API server.'}

Usage with Different Platforms

Flask API Server

bash
source venv/bin/activate
python 03_flaskapi.py

LLM CLI Session

bash
source venv/bin/activate
python 03_llm_cli__rag.py

MCP Proxy Server

bash
source venv/bin/activate
uvx mcpo --port 5086 -- uv run 03_mcpserver.py