Skip to content

Repository files navigation

PostGIS MCP Server

English | Türkçe

PostGIS MCP Server

This project is a server application that provides PostGIS database connection using Model Context Protocol (MCP).

🚀 Features

  • Developed with TypeScript
  • Model Context Protocol (MCP) integration
  • PostGIS database support
  • Configuration for development and production environments
  • Hot-reload support

📋 Requirements

  • Node.js (v14 or higher)
  • PostgreSQL (with PostGIS extension)
  • npm or yarn

🛠️ Installation

  1. Clone the project:
git clone https://github.com/receptopalak/postgis-mcp.git
cd postgis-mcp
  1. Install dependencies:
npm install
  1. Create .env file:
NODE_ENV=development
DB_URL_1=postgres://user:password@host:5432/database_one
DB_URL_2=postgres://user:password@host:5432/database_two
DB_URL_3=postgres://user:password@host:5432/database_three

Legacy single-database DB_HOST / DB_NAME / DB_USER / DB_PASSWORD variables are still supported as a fallback.

  1. Optional: customize table/domain aliases in domain-aliases.json to improve natural-language table selection.

🚀 Usage

Development Mode

npm run dev

Production Mode

npm run build
npm start

🔧 MCP Configuration

You can use the following example configuration for MCP server:

{
  "mcpServers": {
    "postgis": {
      "command": "npx",
      "args": ["tsx", "server.ts"],
      "env": {
        "NODE_ENV": "development",
        "DB_URL_1": "postgres://user:pass@host:5432/db_one",
        "DB_URL_2": "postgres://user:pass@host:5432/db_two"
      }
    }
  }
}

📦 Dependencies

  • @modelcontextprotocol/sdk: ^1.12.1
  • dotenv: ^16.5.0
  • pg: ^8.16.0
  • zod: ^3.25.64

🤝 Contributing

  1. Fork this repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

This project is licensed under the ISC License. See the LICENSE file for more information.

📧 Contact

Project Owner - @receptopalak

Project Link: https://github.com/receptopalak/postgis-mcp


PostGIS MCP Server

Bu proje, Model Context Protocol (MCP) kullanarak PostGIS veritabanı bağlantısını sağlayan bir sunucu uygulamasıdır.

🚀 Özellikler

  • TypeScript ile geliştirilmiş
  • Model Context Protocol (MCP) entegrasyonu
  • PostGIS veritabanı desteği
  • Geliştirme ve üretim ortamları için yapılandırma
  • Hot-reload desteği

📋 Gereksinimler

  • Node.js (v14 veya üzeri)
  • PostgreSQL (PostGIS eklentisi ile)
  • npm veya yarn

🛠️ Kurulum

  1. Projeyi klonlayın:
git clone https://github.com/receptopalak/postgis-mcp.git
cd postgis-mcp
  1. Bağımlılıkları yükleyin:
npm install
  1. .env dosyası oluşturun:
NODE_ENV=development
DB_URL_1=postgres://user:password@host:5432/database_one
DB_URL_2=postgres://user:password@host:5432/database_two
DB_URL_3=postgres://user:password@host:5432/database_three

Eski tek veritabanlı DB_HOST / DB_NAME / DB_USER / DB_PASSWORD değişkenleri de fallback olarak desteklenir.

  1. Opsiyonel: doğal dilde tablo seçimini iyileştirmek için domain-aliases.json dosyasını özelleştirin.

🚀 Kullanım

Geliştirme Modu

npm run dev

Üretim Modu

npm run build
npm start

🔧 MCP Yapılandırması

MCP sunucu yapılandırması için aşağıdaki örnek yapılandırmayı kullanabilirsiniz:

{
  "mcpServers": {
    "postgis": {
      "command": "npx",
      "args": ["tsx", "server.ts"],
      "env": {
        "NODE_ENV": "development",
        "DB_URL_1": "postgres://user:pass@host:5432/db_one",
        "DB_URL_2": "postgres://user:pass@host:5432/db_two"
      }
    }
  }
}

📦 Bağımlılıklar

  • @modelcontextprotocol/sdk: ^1.12.1
  • dotenv: ^16.5.0
  • pg: ^8.16.0
  • zod: ^3.25.64

🤝 Katkıda Bulunma

  1. Bu depoyu fork edin
  2. Yeni bir özellik dalı oluşturun (git checkout -b feature/amazing-feature)
  3. Değişikliklerinizi commit edin (git commit -m 'feat: Add some amazing feature')
  4. Dalınıza push edin (git push origin feature/amazing-feature)
  5. Bir Pull Request oluşturun

📝 Lisans

Bu proje ISC lisansı altında lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına bakın.

📧 İletişim

Proje Sahibi - @receptopalak

Proje Linki: https://github.com/receptopalak/postgis-mcp

About

Postgis MCP Server

Resources

Stars

17 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages