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

Option 1: Using pipx (Recommended for Claude Desktop)

# Install pipx if you don't have it
brew install pipx
pipx ensurepath

# Install prometheux-mcp
pipx install prometheux-mcp

This installs the package in an isolated environment and makes the prometheux-mcp command available globally.

Option 2: Using pip

pip install prometheux-mcp

Note for macOS users: Claude Desktop may have permission issues accessing pip-installed packages in certain directories. If you encounter "Server disconnected" errors, use pipx instead.

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

    Recommended: Use the full path

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

    Find your path: Run which prometheux-mcp in your terminal and use that exact path. Replace YOUR_USERNAME with your actual macOS username (usually it will be in ~/.local/bin/).

    Why the full path? GUI applications like Claude Desktop don't inherit your terminal's PATH environment on macOS, even after pipx ensurepath. Using the full path ensures it always works.

    Note: The full JarvisPy path (/jarvispy/{organization}/{username}) is automatically constructed from your username and organization. No need to include it in the URL!

  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):

  1. Use the full path in your config: Run which prometheux-mcp and use that exact path
  2. If installed with pip instead of pipx:
    • Uninstall: pip uninstall prometheux-mcp
    • Install with pipx: pipx install prometheux-mcp
  3. Restart Claude Desktop completely (Cmd+Q, then reopen)

Note: On macOS, the short command "prometheux-mcp" usually doesn't work with Claude Desktop because GUI apps don't inherit the terminal's PATH. Always use the full path for reliability.

"Connection refused" error: Check that your Prometheux server URL is correct and accessible. Test with: curl [YOUR_URL]/mcp/info

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

"command not found" error: This means Claude Desktop can't find the prometheux-mcp command. Solution: Use the full path in your config (see Configuration section above). Run which prometheux-mcp to find the exact path.

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.2.tar.gz (19.2 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.2-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: prometheux_mcp-0.1.2.tar.gz
  • Upload date:
  • Size: 19.2 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.2.tar.gz
Algorithm Hash digest
SHA256 5d33c33496895ae583d2dfb985c23bd11ab71de23a349c66530f23f1daf977a5
MD5 4f369f3bc1cc6c0840e4c05b3ec3972d
BLAKE2b-256 432427beafc2ee89212980c342d3acb27c6e775f7bb7b2b35b675f03ef036bdc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: prometheux_mcp-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 15.3 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f38b162027a40e06f3c854c2512e208194bb516336b0d90698381a0c18828e65
MD5 e658d832535bfa0bd6febbd4b578b7d3
BLAKE2b-256 550172c91d458067c23d97581a905907ac8567c97a4cb6d55caca6730e1c51f8

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