Skip to main content

Model Context Protocol (MCP) server for Prometheux - enabling AI agents to interact with knowledge graphs and reasoning

Project description

Prometheux MCP Server

PyPI version Python 3.10+ License: BSD-3-Clause

A Model Context Protocol (MCP) client that enables AI agents like Claude to interact with Prometheux knowledge graphs and reasoning capabilities.


For Users

What This Does

This package lets you use Claude Desktop to interact with your Prometheux projects:

  • List concepts in your projects
  • Run concepts to derive new knowledge
  • All through natural conversation with Claude

Prerequisites

  • Prometheux account with access to a deployed instance
  • Claude Desktop installed on your machine
  • Your credentials (token, username, organization) from your Prometheux admin

Installation

pip install prometheux-mcp

macOS users: If you encounter permission issues with Claude Desktop, use pipx instead:

brew install pipx
pipx ensurepath
pipx install prometheux-mcp

Configuration

  1. Get your credentials from your Prometheux admin or account settings:

    • Server URL (e.g., https://api.prometheux.ai)
    • Authentication token
    • Username
    • Organization
  2. Configure Claude Desktop by editing the config file:

    macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    Windows: %APPDATA%\Claude\claude_desktop_config.json

    {
      "mcpServers": {
        "prometheux": {
          "command": "prometheux-mcp",
          "args": ["--url", "https://api.prometheux.ai"],
          "env": {
            "PROMETHEUX_TOKEN": "your_token",
            "PROMETHEUX_USERNAME": "your_username",
            "PROMETHEUX_ORGANIZATION": "your_organization"
          }
        }
      }
    }
    

    macOS with pipx: Use the full path ~/.local/bin/prometheux-mcp for the command.

  3. Restart Claude Desktop (quit completely with Cmd+Q, then reopen)

Usage

Once configured, just chat with Claude:

"What concepts are available in project customer-analytics?"

"Run the churn_prediction concept in project customer-analytics"

"Show me the high_value_customers from project sales-data with min_value of 1000"

Available Tools

Tool Description
list_concepts Lists all concepts in a project
run_concept Executes a concept to derive new knowledge

Troubleshooting

"Server disconnected" error (macOS): Install with pipx and use the full path ~/.local/bin/prometheux-mcp in your config.

"Connection refused" error: Check that your Prometheux server URL is correct and accessible.

"Authentication failed" error: Verify your token, username, and organization are correct.

Check logs: ~/Library/Logs/Claude/mcp-server-prometheux.log


For Developers

This section is for developers who want to:

  • Contribute to this package
  • Test locally with a development JarvisPy instance
  • Understand the architecture

Architecture

┌─────────────────────────────────────────────────────────────────────────┐
│                           YOUR MACHINE                                   │
│  ┌─────────────────┐         ┌─────────────────┐                        │
│  │  Claude Desktop │         │ prometheux-mcp  │                        │
│  │                 │──stdio──│  (this package) │                        │
│  │   (AI Agent)    │         │                 │                        │
│  └─────────────────┘         └────────┬────────┘                        │
└───────────────────────────────────────┼─────────────────────────────────┘
                                        │ HTTP
                                        ▼
                          ┌─────────────────────────┐
                          │     Prometheux Server   │
                          │       (JarvisPy)        │
                          │                         │
                          │   Cloud or On-Premise   │
                          └─────────────────────────┘

Key points:

  • This is NOT a service you run — Claude Desktop starts it automatically
  • Communication with Claude Desktop is via stdio (stdin/stdout)
  • Communication with Prometheux is via HTTP
  • Stateless — each Claude session starts a fresh instance

Local Development Setup

# Clone the repository
git clone https://github.com/prometheuxresearch/px-mcp-server.git
cd px-mcp-server

# Create virtual environment
python -m venv venv
source venv/bin/activate

# Install in development mode
pip install -e ".[dev]"

Testing with Local JarvisPy

  1. Start JarvisPy in development mode:

    cd /path/to/jarvispy
    source venv/bin/activate
    RUN_MODE=development python run.py
    
  2. Install your local package with pipx (required for Claude Desktop on macOS):

    pipx install /path/to/px-mcp-server --force
    
  3. Configure Claude Desktop to use localhost:

    {
      "mcpServers": {
        "prometheux": {
          "command": "/Users/YOUR_USERNAME/.local/bin/prometheux-mcp",
          "args": ["--url", "http://localhost:8000", "--debug"]
        }
      }
    }
    
  4. Restart Claude Desktop and test

Why pipx for macOS?

Claude Desktop on macOS cannot access virtual environments in protected folders (like ~/Documents) due to security restrictions. pipx installs to ~/.local/ which is accessible.

Running Tests

pytest

Code Quality

ruff check src/    # Linting
mypy src/          # Type checking

Project Structure

src/prometheux_mcp/
├── __init__.py      # Package exports
├── __main__.py      # CLI entry point (Click-based)
├── config.py        # Configuration management
├── client.py        # HTTP client for Prometheux API
├── server.py        # MCP server and tool definitions
└── tools/           # Reserved for future tool modules

Building for PyPI

python -m build
twine upload dist/*

Tool Reference

list_concepts

Lists all concepts available in a project.

Parameters:

Parameter Type Required Default Description
project_id string Yes Project identifier
scope string No "user" "user" or "organization"

Example response:

{
  "concepts": [
    {
      "predicate_name": "customer",
      "fields": {"id": "string", "name": "string"},
      "column_count": 2,
      "is_input": true,
      "row_count": 1000,
      "type": "postgresql",
      "description": "Customer records"
    }
  ],
  "count": 1
}

run_concept

Executes a concept to derive new knowledge through Vadalog reasoning.

Parameters:

Parameter Type Required Default Description
project_id string Yes Project identifier
concept_name string Yes Concept to execute
params object No {} Parameters for reasoning
scope string No "user" "user" or "organization"
force_rerun boolean No true Re-execute even if cached
persist_outputs boolean No false Save results to database

Example response:

{
  "concept_name": "high_value_customers",
  "message": "Concept executed successfully",
  "evaluation_results": {
    "resultSet": {
      "high_value_customers": [["Alice", 5000], ["Bob", 3000]]
    },
    "columnNames": {
      "high_value_customers": ["name", "total_value"]
    }
  },
  "predicates_populated": ["high_value_customers"],
  "total_records": 2
}

Access to Prometheux Backend

The Prometheux backend is required to use this MCP client. To request access:

License

BSD 3-Clause License — see LICENSE file for details.

About Prometheux

Prometheux is an ontology native data engine that processes data anywhere it lives. Define ontologies once and unlock knowledge that spans databases, warehouses, and platforms—built on the Vadalog reasoning engine.

Key capabilities:

  • Connect: Query across Snowflake, Databricks, Neo4j, SQL, CSV, and more without ETL or vendor lock-in
  • Think: Replace 100+ lines of PySpark/SQL with simple declarative logic. Power graph analytics without GraphDBs
  • Explain: Full lineage & traceability with deterministic, repeatable results. Ground AI in structured, explainable context

Exponentially faster and simpler than traditional approaches. Learn more at prometheux.ai.

Support

For issues, questions, or access requests:

Related Projects

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

prometheux_mcp-0.1.0.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

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

prometheux_mcp-0.1.0-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for prometheux_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f61677d210f88bb18429287583a95478151aa9fd2a15c1bd67be8e171a5a63e4
MD5 582b9122fe8b4e9bec8d2b1d204fa795
BLAKE2b-256 8327164c2e0d39096447bc45ae71d846e96297002ada95a2254dee41dc8476eb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: prometheux_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for prometheux_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5da2a01b7b0b3b5065c3ece66e79c1e055120a62560cb93a032b2a9aa25115d1
MD5 e257ccc39569b34fd9dd2c7b6a081fa4
BLAKE2b-256 3e5065a076673539eb6ab11a7ba6a706c451507bc6c30d077172d0adb8321ed6

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