Skip to main content

Apache AGE MCP Server

Project description

AGE-MCP-Server

License Python

Apache AGE MCP Server

Apache AGE™ is a PostgreSQL Graph database compatible with PostgreSQL's distributed assets and leverages graph data structures to analyze and use relationships and patterns in data.

Azure Database for PostgreSQL is a managed database service that is based on the open-source Postgres database engine.

Introducing support for Graph data in Azure Database for PostgreSQL (Preview).

Table of Contents

Prerequisites

  • Python 3.13 and above
  • This module runs on psycopg
  • Enable the Apache AGE extension in your Azure Database for PostgreSQL instance. Login Azure Portal, go to 'server parameters' blade, and check 'AGE" on within 'azure.extensions' and 'shared_preload_libraries' parameters. See, above blog post for more information.
  • Load the AGE extension in your PostgreSQL database.
CREATE EXTENSION IF NOT EXISTS age CASCADE;
brew install claude
brew intall visual-studio-code

Install

  • with brew
brew tap rioriost/age-mcp-server
brew install age-mcp-server
  • with uv
uv init your_project
cd your_project
uv venv
source .venv/bin/activate
uv add age-mcp-server
  • with python venv on macOS / Linux
mkdir your_project
cd your_project
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install age-mcp-server
  • with python venv on Windows
mkdir your_project
cd your_project
python -m venv venv
.\venv\Scripts\activate
python -m pip install age-mcp-server

Usage with Claude

  • on macOS claude_desktop_config.json is located in ~/Library/Application Support/Claude/.

  • on Windows You need to create a new claude_desktop_config.json under %APPDATA%\Claude.

  • Homebrew on macOS

Homebrew installs age-mcp-server into $PATH.

{
  "mcpServers": {
    "age-manager": {
      "command": "age-mcp-server",
      "args": [
        "--pg-con-str",
        "host=your_server.postgres.database.azure.com port=5432 dbname=postgres user=your_username password=your_password",
      ]
    }
  }
}
  • uv / Pyhon venv

On macOS:

{
  "mcpServers": {
    "age-manager": {
      "command": "/Users/your_username/.local/bin/uv",
      "args": [
        "--directory",
        "/path/to/your_project",
        "run",
        "age-mcp-server",
        "--pg-con-str",
        "host=your_server.postgres.database.azure.com port=5432 dbname=postgres user=your_username password=your_password",
      ]
    }
  }
}

On Windows:

{
  "mcpServers": {
    "age-manager": {
      "command": "C:\\Users\\USER\\.local\\bin\\uv.exe",
      "args": [
        "--directory",
        "C:\\path\\to\\your_project",
        "run",
        "age-mcp-server",
        "--pg-con-str",
        "host=your_server.postgres.database.azure.com port=5432 dbname=postgres user=your_username password=your_password",
      ]
    }
  }
}

If you need to hide the password or to use Entra ID, you can set --pg-con-str as follows.

{
  "mcpServers": {
    "age-manager": {
        ...
        "--pg-con-str",
        "host=your_server.postgres.database.azure.com port=5432 dbname=postgres user=your_username",
        ...
      ]
    }
  }
}

And, you need to set PGPASSWORD env variable, or to install Azure CLI and sign into Azure with your Azure account.

After saving claude_desktop_config.json, start Claude Desktop Client.

Show me graphs on the server Show me a graph schema of FROM_AGEFREIGHTER Pick up a customer and calculate the amount of its purchase. Find another customer buying more than Lisa OK. Please make a new graph named MCP_Test Make a node labeled 'Person' with properties, name=Rio, age=52 Please make an another node labeled 'Company' with properties, name=Microsoft Can you put a relation, "Rio WORK at Microsoft"? Delete the graph, MCP_Test

Claude on Windows

Usage with Visual Studio Code

After installing, [Preferences]->[Settings] and input mcp to [Search settings].

MCP Settings in Preferences

Edit the settings.json as followings:

{
    "mcp": {
        "inputs": [],
        "servers": {
            "age-manager": {
            "command": "/Users/your_user_name/.local/bin/uv",
            "args": [
                "--directory",
                "/path/to/your_project",
                "run",
                "age-mcp-server",
                "--pg-con-str",
                "host=your_server.postgres.database.azure.com port=5432 dbname=postgres user=your_username password=your_password",
                "--debug"
            ]
            }
        }
    }
}

And then, you'll see start to start the AGE MCP Server.

Switch the Chat window to agent mode.

VSCode Agent

Now, you can play with your graph data via Visual Studio Code!

VSCode Agent

Write Operations

AGE-MCP-Server prohibits write operations by default for safety. If you want to enable write operations, you can use the --allow-write flag.

{
  "mcpServers": {
    "age-manager": {
      "command": "age-mcp-server",
      "args": [
        "--pg-con-str",
        "host=your_server.postgres.database.azure.com port=5432 dbname=postgres user=your_username password=your_password",
        "--allow-write"
      ]
    }
  }
}

For More Information

License

MIT License

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

age_mcp_server-0.2.43.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

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

age_mcp_server-0.2.43-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file age_mcp_server-0.2.43.tar.gz.

File metadata

  • Download URL: age_mcp_server-0.2.43.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for age_mcp_server-0.2.43.tar.gz
Algorithm Hash digest
SHA256 ee81b4d2221da5d61f51ec8d65269bb8e98c664f24ce61fd2d8b9e34bd090b3b
MD5 e7b1fa2bc77eed1c529171d9ad72ff18
BLAKE2b-256 c779432972aa872792cc31fc0b85ab7ce7f4dc507ee64bc77bebf8c89e6e72ea

See more details on using hashes here.

File details

Details for the file age_mcp_server-0.2.43-py3-none-any.whl.

File metadata

  • Download URL: age_mcp_server-0.2.43-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for age_mcp_server-0.2.43-py3-none-any.whl
Algorithm Hash digest
SHA256 0750600612fb855f910387ada7171489666ff3f910299db0d5191c11f4cc76a4
MD5 49ca670c5d29cba69c53c1ef1d50e374
BLAKE2b-256 4c4397bd18299e78f4d837328b631c7b55bf6c747be26a20ec08c4ef4f9d0884

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