Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .env.sample
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Sample environment file for integration tests
# Copy this to .env and fill in your actual values

# TigerData API credentials for integration testing
# Tiger Cloud API credentials for integration testing
TIGER_PUBLIC_KEY_INTEGRATION=your-public-key-here
TIGER_SECRET_KEY_INTEGRATION=your-secret-key-here
TIGER_PROJECT_ID_INTEGRATION=your-project-id-here
Expand Down
12 changes: 6 additions & 6 deletions .goreleaser.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,12 @@ archives:
nfpms:
- id: packages
package_name: tiger-cli
vendor: Timescale, Inc., d/b/a TigerData
vendor: Timescale, Inc., d/b/a Tiger Data
homepage: https://github.com/timescale/tiger-cli
maintainer: TigerData <support@tigerdata.com>
maintainer: Tiger Data <support@tigerdata.com>
description: |-
Tiger CLI - TigerData Cloud Platform CLI
Command-line interface for managing TigerData Cloud Platform resources
Tiger CLI - Tiger Cloud Platform CLI
Command-line interface for managing Tiger Cloud platform resources
license: Apache-2.0
formats:
- deb
Expand Down Expand Up @@ -109,8 +109,8 @@ homebrew_casks:
token: "{{ .Env.TAP_GITHUB_TOKEN }}"
homepage: https://github.com/timescale/tiger-cli
description: |-
Tiger CLI - TigerData Cloud Platform CLI
Command-line interface for managing TigerData Cloud Platform resources
Tiger CLI - Tiger Cloud Platform CLI
Command-line interface for managing Tiger Cloud platform resources
binary: tiger
license: Apache-2.0
skip_upload: auto # Skips prerelease builds
Expand Down
28 changes: 27 additions & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,32 @@

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Naming Guidelines

When writing or updating documentation, code comments, CLI output, error messages, or any other user-facing text, use these official naming conventions:

### Official Names

- **Company Name**: "Tiger Data" (two words, with space)
- **Cloud Platform**: "Tiger Cloud" (NOT "TigerData Cloud" or "TigerData Cloud Platform")
- **CLI Tool**: "Tiger CLI"
- **MCP Server**: "Tiger MCP"
- **API References**: "Tiger Cloud API" (NOT "TigerData API")

### Examples

✅ **Correct Usage:**
- "Tiger CLI is a command-line interface for managing Tiger Cloud platform resources."
- "Authenticate with Tiger Cloud API"
- "List all database services in your Tiger Cloud project."
- "The Tiger MCP server provides programmatic access to Tiger Cloud."

❌ **Incorrect Usage:**
- ~~"TigerData Cloud Platform"~~ → Use "Tiger Cloud platform"
- ~~"TigerData API"~~ → Use "Tiger Cloud API"
- ~~"TigerData project"~~ → Use "Tiger Cloud project"
- ~~"TigerData MCP"~~ → Use "Tiger MCP"

## Development Commands

### Building
Expand Down Expand Up @@ -435,7 +461,7 @@ func buildRootCmd() *cobra.Command {

cmd := &cobra.Command{
Use: "tiger",
Short: "Tiger CLI - TigerData Cloud Platform command-line interface",
Short: "Tiger CLI - Tiger Cloud Platform command-line interface",
Long: `Complete CLI description...`,
PersistentPreRunE: func(cmd *cobra.Command, args []string) error {
// Use local flag variables in scope
Expand Down
4 changes: 2 additions & 2 deletions docs/mcp_feedback.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# TigerData MCP Feedback
# Tiger MCP Feedback

## Overall Assessment
The TigerData MCP tools provide useful database management functionality but have several areas for improvement in naming consistency, parameter documentation, and descriptions.
The Tiger MCP tools provide useful database management functionality but have several areas for improvement in naming consistency, parameter documentation, and descriptions.

## Tool Names

Expand Down
6 changes: 3 additions & 3 deletions internal/tiger/cmd/auth.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ func buildLoginCmd() *cobra.Command {

cmd := &cobra.Command{
Use: "login",
Short: "Authenticate with TigerData API",
Long: `Authenticate with TigerData API using predefined keys or an interactive OAuth flow
Short: "Authenticate with Tiger Cloud API",
Long: `Authenticate with Tiger Cloud API using predefined keys or an interactive OAuth flow

By default, the command will launch an interactive OAuth flow in your browser to create new API keys.
The OAuth flow will:
Expand Down Expand Up @@ -191,7 +191,7 @@ func buildAuthCmd() *cobra.Command {
cmd := &cobra.Command{
Use: "auth",
Short: "Manage authentication and credentials",
Long: `Manage authentication and credentials for TigerData Cloud Platform.`,
Long: `Manage authentication and credentials for Tiger Cloud platform.`,
}

cmd.AddCommand(buildLoginCmd())
Expand Down
4 changes: 2 additions & 2 deletions internal/tiger/cmd/mcp.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ func buildMCPCmd() *cobra.Command {
Short: "Tiger Model Context Protocol (MCP) server",
Long: `Tiger Model Context Protocol (MCP) server for AI assistant integration.

The MCP server provides programmatic access to TigerData Cloud Platform resources
The MCP server provides programmatic access to Tiger Cloud platform resources
through Claude and other AI assistants. It exposes Tiger CLI functionality as MCP
tools that can be called by AI agents.

Expand Down Expand Up @@ -120,7 +120,7 @@ func buildMCPStartCmd() *cobra.Command {
Short: "Start the Tiger MCP server",
Long: `Start the Tiger Model Context Protocol (MCP) server for AI assistant integration.

The MCP server provides programmatic access to TigerData Cloud Platform resources
The MCP server provides programmatic access to Tiger Cloud platform resources
through Claude and other AI assistants. By default, it uses stdio transport.

Examples:
Expand Down
12 changes: 6 additions & 6 deletions internal/tiger/cmd/mcp_install.go
Original file line number Diff line number Diff line change
Expand Up @@ -209,16 +209,16 @@ func installMCPForClient(clientName string, createBackup bool, customConfigPath

fmt.Printf("\n💡 Next steps:\n")
fmt.Printf(" 1. Restart %s to load the new configuration\n", clientName)
fmt.Printf(" 2. The TigerData MCP server will be available as '%s'\n", mcp.ServerName)
fmt.Printf(" 2. The Tiger MCP server will be available as '%s'\n", mcp.ServerName)
fmt.Printf("\n🤖 Try asking your AI assistant:\n")
fmt.Printf("\n 📊 List and manage your TigerData services:\n")
fmt.Printf(" • \"List my TigerData services\"\n")
fmt.Printf("\n 📊 List and manage your Tiger Cloud services:\n")
fmt.Printf(" • \"List my Tiger Cloud services\"\n")
fmt.Printf(" • \"Show me details for service xyz-123\"\n")
fmt.Printf(" • \"Create a new database service called my-app-db\"\n")
fmt.Printf(" • \"Update the password for my database service\"\n")
fmt.Printf(" • \"What TigerData services do I have access to?\"\n")
fmt.Printf("\n 📚 Ask questions from the PostgreSQL and TigerData documentation:\n")
fmt.Printf(" • \"Show me TigerData documentation about hypertables?\"\n")
fmt.Printf(" • \"What Tiger Cloud services do I have access to?\"\n")
fmt.Printf("\n 📚 Ask questions from the PostgreSQL and Tiger Cloud documentation:\n")
fmt.Printf(" • \"Show me Tiger Cloud documentation about hypertables?\"\n")
fmt.Printf(" • \"What are the best practices for PostgreSQL indexing?\"\n")
fmt.Printf(" • \"What is the command for renaming a table?\"\n")
fmt.Printf(" • \"Help me optimize my PostgreSQL queries\"\n")
Expand Down
4 changes: 2 additions & 2 deletions internal/tiger/cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ func buildRootCmd(ctx context.Context) (*cobra.Command, error) {

cmd := &cobra.Command{
Use: "tiger",
Short: "Tiger CLI - TigerData Cloud Platform command-line interface",
Long: `Tiger CLI is a command-line interface for managing TigerData Cloud Platform resources.
Short: "Tiger CLI - Tiger Cloud Platform command-line interface",
Long: `Tiger CLI is a command-line interface for managing Tiger Cloud platform resources.
Built as a single Go binary, it provides comprehensive tools for managing database services,
VPCs, replicas, and related infrastructure components.

Expand Down
2 changes: 1 addition & 1 deletion internal/tiger/cmd/service.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ func buildServiceCmd() *cobra.Command {
Use: "service",
Aliases: []string{"services", "svc"},
Short: "Manage database services",
Long: `Manage database services within TigerData Cloud Platform.`,
Long: `Manage database services within Tiger Cloud platform.`,
}

// Add all subcommands
Expand Down
2 changes: 1 addition & 1 deletion internal/tiger/mcp/db_tools.go
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ func (s *Server) registerDatabaseTools() {
Title: "Execute SQL Query",
Description: `Execute a single SQL query against a service database.

This tool connects to a PostgreSQL database service in TigerData Cloud and executes the provided SQL query, returning the results with column names, row data, and execution metadata. Multi-statement queries are not supported.
This tool connects to a PostgreSQL database service in Tiger Cloud and executes the provided SQL query, returning the results with column names, row data, and execution metadata. Multi-statement queries are not supported.

WARNING: Use with caution - this tool can execute any SQL statement including INSERT, UPDATE, DELETE, and DDL commands. Always review queries before execution.`,
InputSchema: DBExecuteQueryInput{}.Schema(),
Expand Down
4 changes: 2 additions & 2 deletions internal/tiger/mcp/service_tools.go
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ func (s *Server) registerServiceTools() {
mcp.AddTool(s.mcpServer, &mcp.Tool{
Name: "service_list",
Title: "List Database Services",
Description: "List all database services in current TigerData project. " +
Description: "List all database services in your Tiger Cloud project. " +
"Returns services with status, type, region, and resource allocation.",
InputSchema: ServiceListInput{}.Schema(),
OutputSchema: ServiceListOutput{}.Schema(),
Expand Down Expand Up @@ -258,7 +258,7 @@ func (s *Server) registerServiceTools() {
mcp.AddTool(s.mcpServer, &mcp.Tool{
Name: "service_create",
Title: "Create Database Service",
Description: `Create a new database service in TigerData Cloud with specified type, compute resources, region, and HA options.
Description: `Create a new database service in Tiger Cloud with specified type, compute resources, region, and HA options.

The default type of service created depends on the user's plan:
- Free plan: Creates a service with shared CPU/memory and the 'time-series' and 'ai' add-ons
Expand Down
8 changes: 4 additions & 4 deletions openapi.yaml
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
openapi: 3.0.3
info:
title: TigerData Cloud API
title: Tiger Cloud API
description: |
A RESTful API for TigerData Cloud Platform.
A RESTful API for Tiger Cloud platform.
version: 1.0.0
license:
name: Proprietary
url: https://www.tigerdata.com/legal/terms
contact:
name: TigerData Support
name: Tiger Data Support
url: https://www.tigerdata.com/contact
servers:
- url: http://localhost:8080
description: Local development server
- url: https://api.tigerdata.com/public/v1
description: API server for TigerData Cloud
description: API server for Tiger Cloud

tags:
- name: VPCs
Expand Down
2 changes: 1 addition & 1 deletion specs/oauth.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
## Overview

This document outlines the OAuth 2.0 integration for Tiger CLI, providing secure
authentication with the TigerData Cloud Platform API. The implementation
authentication with the Tiger Cloud platform API. The implementation
supports both interactive user authentication and programmatic authentication
for CI/CD environments.

Expand Down
4 changes: 2 additions & 2 deletions specs/spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Overview

The `tiger` CLI is a command-line interface for managing TigerData Cloud Platform resources. Built as a single Go binary, it provides comprehensive tools for managing database services, VPCs, replicas, and related infrastructure components.
The `tiger` CLI is a command-line interface for managing Tiger Cloud platform resources. Built as a single Go binary, it provides comprehensive tools for managing database services, VPCs, replicas, and related infrastructure components.

## Installation

Expand All @@ -23,7 +23,7 @@ mv tiger /usr/local/bin/

### Environment Variables

- `TIGER_API_URL`: Base URL for TigerData API (default: https://api.tigerdata.com/public/v1)
- `TIGER_API_URL`: Base URL for Tiger Cloud API (default: https://api.tigerdata.com/public/v1)
- `TIGER_SERVICE_ID`: Default service ID to use
- `TIGER_CONFIG_DIR`: Configuration directory (default: ~/.config/tiger)
- `TIGER_OUTPUT`: Default output format (json, yaml, table)
Expand Down
4 changes: 2 additions & 2 deletions specs/spec_after_oauth.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
Manage authentication and credentials with OAuth support.

**Subcommands:**
- `login`: Authenticate with TigerData Cloud (OAuth flow)
- `login`: Authenticate with Tiger Cloud (OAuth flow)
- `logout`: Remove stored credentials
- `status`: Show current user information
- `token`: Manage API tokens
Expand All @@ -29,7 +29,7 @@ tiger auth logout
```

**OAuth Flow:**
1. `tiger auth login` opens browser to TigerData OAuth page
1. `tiger auth login` opens browser to Tiger Cloud OAuth page
2. User authenticates and grants permissions
3. CLI receives JWT token and stores it securely
4. Subsequent commands use the stored JWT token for authentication
Expand Down
6 changes: 3 additions & 3 deletions specs/spec_future.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ This document contains specifications for features that should be considered for
**Note: Current API keys are scoped to a single project. Multi-project support will be added once API keys support multiple projects.**

#### `tiger projects`
Manage TigerData projects.
Manage Tiger Cloud projects.

**Subcommands:**
- `list`: List all projects
Expand All @@ -34,7 +34,7 @@ tiger projects set-default proj-12345
### Project Creation and Deletion

#### `tiger projects create`
Create a new TigerData project.
Create a new Tiger Cloud project.

**Arguments:**
- `--name`: Project name (required)
Expand All @@ -52,7 +52,7 @@ tiger projects create --name "My Project" --description "Production database"
---

#### `tiger projects delete`
Delete a TigerData project.
Delete a Tiger Cloud project.

**Arguments:**
- `project-id`: Project ID to delete (required)
Expand Down
4 changes: 2 additions & 2 deletions specs/spec_mcp.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Overview

The Tiger MCP (Model Context Protocol) Server provides programmatic access to TigerData Cloud Platform resources through Claude and other AI assistants. It mirrors the functionality of the Tiger CLI and is integrated directly into the CLI binary for seamless operation.
The Tiger MCP (Model Context Protocol) Server provides programmatic access to Tiger Cloud platform resources through Claude and other AI assistants. It mirrors the functionality of the Tiger CLI and is integrated directly into the CLI binary for seamless operation.

The MCP server is written in Go and launched via the Tiger CLI, sharing the same authentication, configuration, and API client.

Expand Down Expand Up @@ -563,7 +563,7 @@ Common error codes:
- `RESOURCE_CONFLICT`: Resource is in a state that prevents the operation
- `VALIDATION_ERROR`: Invalid parameters provided
- `TIMEOUT_ERROR`: Operation timed out
- `SERVICE_UNAVAILABLE`: TigerData API is temporarily unavailable
- `SERVICE_UNAVAILABLE`: Tiger Cloud API is temporarily unavailable

## Implementation Notes

Expand Down