by gigapi
GigAPI integrates with GigAPI Timeseries Lake for time series database management, analytics, and monitoring with powerf
Connects to GigAPI Timeseries Lake to run SQL queries and manage time-series data using InfluxDB Line Protocol. Provides database management capabilities for analytics and IoT monitoring workflows.
GigAPI is a community-built MCP server published by gigapi that provides AI assistants with tools and capabilities via the Model Context Protocol. GigAPI integrates with GigAPI Timeseries Lake for time series database management, analytics, and monitoring with powerf It is categorized under databases, analytics data.
You can install GigAPI in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
GigAPI is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Enable Claude to query your database directly using natural language
Example
Ask 'Show me top 10 customers by revenue this month' and get SQL results instantly
Eliminate manual SQL writing for ad-hoc queries, get insights 10x faster
Generate complex reports and analytics without leaving conversation
Example
Analyze sales trends, cohort retention, user behavior patterns conversationally
Democratize data access—non-technical team members can query databases
Understand database structure, relationships, and data models
Example
'Explain the user_orders table schema and its relationships'
Onboard engineers faster, explore unfamiliar databases efficiently
Share your MCP server with the developer community
We evaluated GigAPI against two servers with overlapping tools; this profile had the clearer scope statement.
Useful MCP listing: GigAPI is the kind of server we cite when onboarding engineers to host + tool permissions.
Strong directory entry: GigAPI surfaces stars and publisher context so we could sanity-check maintenance before adopting.
Useful MCP listing: GigAPI is the kind of server we cite when onboarding engineers to host + tool permissions.
Useful MCP listing: GigAPI is the kind of server we cite when onboarding engineers to host + tool permissions.
We evaluated GigAPI against two servers with overlapping tools; this profile had the clearer scope statement.
I recommend GigAPI for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
We evaluated GigAPI against two servers with overlapping tools; this profile had the clearer scope statement.
I recommend GigAPI for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
We evaluated GigAPI against two servers with overlapping tools; this profile had the clearer scope statement.
showing 1-10 of 45
An MCP server for GigAPI Timeseries Lake that provides seamless integration with Claude Desktop and other MCP-compatible clients.
run_select_query
sql (string): The SQL query to execute, database (string): The database to execute against.list_databases
database (string): The database to use for the SHOW DATABASES query (defaults to "mydb").list_tables
database (string): The name of the database.get_table_schema
database (string): The name of the database, table (string): The name of the table.write_data
database (string): The database to write to, data (string): Data in InfluxDB Line Protocol format.health_check
ping
# The package will be available on PyPI after the first release
# Users can install it directly with uv
uv run --with mcp-gigapi --python 3.11 mcp-gigapi --help
# Clone the repository
git clone https://github.com/gigapi/mcp-gigapi.git
cd mcp-gigapi
# Install dependencies
uv sync
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%/Claude/claude_desktop_config.json{
"mcpServers": {
"mcp-gigapi": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-gigapi",
"--python",
"3.13",
"mcp-gigapi"
],
"env": {
"GIGAPI_HOST": "gigapi.fly.dev",
"GIGAPI_PORT": "443",
"GIGAPI_TIMEOUT": "30",
"GIGAPI_VERIFY_SSL": "true",
"GIGAPI_DEFAULT_DATABASE": "mydb"
}
}
}
}
{
"mcpServers": {
"mcp-gigapi": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-gigapi",
"--python",
"3.13",
"mcp-gigapi"
],
"env": {
"GIGAPI_HOST": "localhost",
"GIGAPI_PORT": "7971",
"GIGAPI_TIMEOUT": "30",
"GIGAPI_VERIFY_SSL": "false",
"GIGAPI_DEFAULT_DATABASE": "mydb"
}
}
}
}
{
"mcpServers": {
"mcp-gigapi": {
"command": "uv",
"args": [
"run",
"--with",
"mcp-gigapi",
"--python",
"3.13",
"mcp-gigapi"
],
"env": {
"GIGAPI_HOST": "your-gigapi-server",
"GIGAPI_PORT": "7971",
"GIGAPI_USERNAME": "your_username",
"GIGAPI_PASSWORD": "your_password",
"GIGAPI_TIMEOUT": "30",
"GIGAPI_VERIFY_SSL": "true",
"GIGAPI_DEFAULT_DATABASE": "your_database"
}
}
}
}
uv command with the absolute path to your uv executable:
which uv # Find the path
This MCP server is designed to work with GigAPI's HTTP API endpoints:
POST /query?db={database}&format=ndjson - Execute SQL queries with NDJSON response formatPOST /write?db={database} - Write data using InfluxDB Line ProtocolGET /health - Health checkGET /ping - Simple pingUse InfluxDB Line Protocol format:
curl -X POST "http://localhost:7971/write?db=mydb" --data-binary @/dev/stdin << EOF
weather,location=us-midwest,season=summer temperature=82
weather,location=us-east,season=summer temperature=80
weather,location=us-west,season=summer temperature=99
EOF
Execute SQL queries via JSON POST with NDJSON format:
curl -X POST "http://localhost:7971/query?db=mydb&format=ndjson" \
-H "Content-Type: application/json" \
-d '{"query": "SELECT time, temperature FROM weather WHERE time >= epoch_ns('\''2025-04-24T00:00:00'\''::TIMESTAMP)"}'
# Show databases
curl -X POST "http://localhost:7971/query?db=mydb&format=ndjson" \
-H "Content-Type: application/json" \
-d '{"query": "SHOW DATABASES"}'
# Show tables
curl -X POST "http://localhost:7971/query?db=mydb&format=ndjson" \
-H "Content-Type: application/json" \
-d '{"query": "SHOW TABLES"}'
# Count records
curl -X POST "http://localhost:7971/query?db=mydb&format=ndjson" \
-H "Content-Type: application/json" \
-d '{"query": "SELECT count(*), avg(temperature) FROM weather"}'
GIGAPI_HOST: The hostname of your GigAPI serverGIGAPI_PORT: The port number of your GigAPI server (default: 7971)GIGAPI_USERNAME or GIGAPI_USER: The username for authentication (if required)GIGAPI_PASSWORD or GIGAPI_PASS: The password for authentication (if required)GIGAPI_TIMEOUT: Request timeout in seconds (default: 30)GIGAPI_VERIFY_SSL: Enable/disable SSL certificate verification (default: true)GIGAPI_DEFAULT_DATABASE: Default database to use for queries (default: mydb)GIGAPI_MCP_SERVER_TRANSPORT: Sets the transport method for the MCP server (default: stdio)GIGAPI_ENABLED: Enable/disable GigAPI functionality (default: true)# Required variables
GIGAPI_HOST=localhost
GIGAPI_PORT=7971
# Optional: Override defaults for local development
GIGAPI_VERIFY_SSL=false
GIGAPI_TIMEOUT=60
GIGAPI_DEFAULT_DATABASE=mydb
# Required variables
GIGAPI_HOST=your-gigapi-server
GIGAPI_PORT=7971
GIGAPI_USERNAME=your_username
GIGAPI_PASSWORD=your_password
# Optional: Production settings
GIGAPI_VERIFY_SSL=true
GIGAPI_TIMEOUT=30
GIGAPI_DEFAULT_DATABASE=your_database
GIGAPI_HOST=gigapi.fly.dev
GIGAPI_PORT=443
GIGAPI_VERIFY_SSL=true
GIGAPI_DEFAULT_DATABASE=mydb
GigAPI uses Hive partitioning with the structure:
/data
/mydb
/weather
/date=2025-04-10
/hour=14
*.parquet
metadata.json
Install dependencies:
uv sync --all-extras --dev
source .venv/bin/activate
Create a .env file in the root of the repository:
GIGAPI_HOST=localhost
GIGAPI_PORT=7971
GIGAPI_USERNAME=your_username
GIGAPI_PASSWORD=your_password
GIGAPI_TIMEOUT=30
GIGAPI_VERIFY_SSL=false
GIGAPI_DEFAULT_DATABASE=mydb
For testing with the MCP Inspector:
fastmcp dev mcp_gigapi/mcp_server.py
# Run all tests
uv run pytest -v
# Run only unit tests
uv run pytest -v -m "not integration"
# Run only integration tests
uv run pytest -v -m "integration"
# Run linting
uv run ruff check .
# Test with public demo
python test_demo.py
The repository includes a test script that validates the MCP server against the public GigAPI demo:
python test_demo.py
This will test:
This package is automatically published to PyPI on each GitHub release. The publishing process is handled by GitHub Actions workflows:
.github/workflows/ci.yml): Runs tests on pull requests and pushes to main.github/workflows/publish.yml): Publishes to PyPI when a release is createdOnce published, users can install the package directly from PyPI:
# Install and run the MCP server
uv run --with mcp-gigapi --python 3.11 mcp-gigapi
To publish a new version:
pyproject.tomlSee RELEASING.md for detailed release instructions.
GIGAPI_VERIFY_SSL=false for self-signed certificatesEnable debug logging by setting the log level:
import logging
logging.basicConfig(level=logging.DEBUG)
Apache-2.0 license
Run data quality queries to catch anomalies and inconsistencies
Example
Find duplicate records, missing values, orphaned foreign keys automatically
Maintain data integrity with less manual SQL work
Prerequisites
Time Estimate
15-30 minutes including configuration and testing
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
MCP server acts as bridge between Claude and database, translating natural language to SQL queries and returning results in structured format.
Protocols
Compatibility
✓ Use when
Use for ad-hoc data queries, exploratory analysis, report generation, schema exploration, and democratizing data access. Best for read-heavy analytics workloads.
✗ Avoid when
Avoid for production write operations, mission-critical transactions, real-time OLTP workloads, or when database contains sensitive PII without proper access controls. Use read replicas, not primary.