You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The server searches for configuration files in this order:
Path specified via -c/--config CLI option
./tfo-mcp.yaml (current directory)
./configs/tfo-mcp.yaml
~/.config/tfo-mcp/config.yaml
/etc/tfo-mcp/config.yaml
Configuration Structure
classDiagram
class Config {
+ServerConfig server
+ClaudeConfig claude
+MCPConfig mcp
+LoggingConfig logging
+CacheConfig cache
+QueueConfig queue
+DatabaseConfig database
+AnalyticsConfig analytics
+TelemetryMCPConfig telemetry_mcp
+TelemetryConfig telemetry
}
class ServerConfig {
+str name
+str version
+str host
+int port
+str transport
+bool debug
+float read_timeout
+float write_timeout
}
class ClaudeConfig {
+str api_key
+str default_model
+int max_tokens
+float temperature
+float timeout
+int max_retries
+str base_url
}
class MCPConfig {
+str protocol_version
+bool enable_tools
+bool enable_resources
+bool enable_prompts
+bool enable_logging
+bool enable_sampling
+float tool_timeout
+int max_message_size
}
class LoggingConfig {
+str level
+str format
+str output
}
class CacheConfig {
+str redis_url
+bool cache_enabled
+int cache_ttl
}
class QueueConfig {
+bool queue_enabled
+int queue_concurrency
+str nats_url
}
class DatabaseConfig {
+str postgres_url
+int postgres_max_conns
+int postgres_min_conns
}
class AnalyticsConfig {
+str clickhouse_url
}
class TelemetryMCPConfig {
+bool enabled
+str backend
+str otlp_endpoint
+str service_name
}
class TelemetryConfig {
+bool enabled
+str api_key
+str api_key_id
+str api_key_secret
+str service_name
+str endpoint
+str protocol
}
Config --> ServerConfig
Config --> ClaudeConfig
Config --> MCPConfig
Config --> LoggingConfig
Config --> CacheConfig
Config --> QueueConfig
Config --> DatabaseConfig
Config --> AnalyticsConfig
Config --> TelemetryMCPConfig
Config --> TelemetryConfig
Loading
Environment Variables Summary
Quick Reference
Variable
Description
Default
ANTHROPIC_API_KEY
Claude API key (required)
-
TELEMETRYFLOW_MCP_SERVER_TRANSPORT
Transport type
stdio
TELEMETRYFLOW_MCP_SERVER_PORT
Server port (SSE/WS)
8080
TELEMETRYFLOW_MCP_LOG_LEVEL
Log level
info
TELEMETRYFLOW_MCP_LOG_FORMAT
Log format
json
TELEMETRYFLOW_MCP_DEBUG
Debug mode
false
TELEMETRYFLOW_MCP_CLAUDE_DEFAULT_MODEL
Default Claude model
claude-sonnet-4-20250514
TELEMETRYFLOW_MCP_OTLP_ENDPOINT
OTEL collector endpoint
localhost:4317
TELEMETRYFLOW_API_KEY
TelemetryFlow API key
-
TELEMETRYFLOW_ENDPOINT
TelemetryFlow endpoint
api.telemetryflow.id:4317
Server Configuration
server:
name: "TelemetryFlow-MCP"# Server nameversion: "1.2.0"# Server versionhost: "localhost"# Host (for future HTTP transports)port: 8080# Port (for future HTTP transports)transport: "stdio"# Transport type: stdio, sse, websocketdebug: false # Debug moderead_timeout: 300.0# Read timeout in secondswrite_timeout: 60.0# Write timeout in seconds
Option
Environment Variable
Default
Description
name
TELEMETRYFLOW_MCP_SERVER_NAME
TelemetryFlow-MCP
Server name
version
TELEMETRYFLOW_MCP_SERVER_VERSION
1.2.0
Server version
host
TELEMETRYFLOW_MCP_SERVER_HOST
localhost
Server host
port
TELEMETRYFLOW_MCP_SERVER_PORT
8080
Server port
transport
TELEMETRYFLOW_MCP_SERVER_TRANSPORT
stdio
Transport type
debug
TELEMETRYFLOW_MCP_SERVER_DEBUG
false
Debug mode
read_timeout
TELEMETRYFLOW_MCP_SERVER_READ_TIMEOUT
300.0
Read timeout (s)
write_timeout
TELEMETRYFLOW_MCP_SERVER_WRITE_TIMEOUT
60.0
Write timeout (s)
Claude Configuration
claude:
api_key: ""# Anthropic API keydefault_model: "claude-sonnet-4-20250514"# Default modelmax_tokens: 4096# Max tokens per requesttemperature: 1.0# Temperature (0.0-2.0)timeout: 120.0# Request timeout in secondsmax_retries: 3# Max retry attemptsbase_url: null # Custom base URL (optional)
Option
Environment Variable
Default
Description
api_key
ANTHROPIC_API_KEY
-
Anthropic API key (required)
api_key
TELEMETRYFLOW_MCP_CLAUDE_API_KEY
-
Alternative API key env var
default_model
TELEMETRYFLOW_MCP_CLAUDE_DEFAULT_MODEL
claude-sonnet-4-20250514
Default Claude model
max_tokens
TELEMETRYFLOW_MCP_CLAUDE_MAX_TOKENS
4096
Maximum tokens
temperature
TELEMETRYFLOW_MCP_CLAUDE_TEMPERATURE
1.0
Temperature
timeout
TELEMETRYFLOW_MCP_CLAUDE_TIMEOUT
120.0
Timeout (seconds)
max_retries
TELEMETRYFLOW_MCP_CLAUDE_MAX_RETRIES
3
Max retries
base_url
TELEMETRYFLOW_MCP_CLAUDE_BASE_URL
null
Custom base URL
Available Models
The server supports 12 LLM providers with 111 models total.
graph TB
subgraph Providers["12 LLM Providers"]
subgraph Anthropic["Anthropic"]
Opus["claude-opus-4-20250514"]
Sonnet4["claude-sonnet-4-20250514<br/>(default)"]
end
subgraph Google["Google"]
GeminiPro["gemini-2.5-pro"]
GeminiFlash["gemini-2.5-flash"]
end
subgraph OpenAI["OpenAI"]
GPT4o["gpt-4o"]
o3["o3"]
o4mini["o4-mini"]
end
subgraph Others["Other Providers"]
DeepSeek["DeepSeek-V3, R1"]
Qwen["Qwen3-235B, 32B"]
Ollama["llama3, mistral (local)"]
Mistral["Mistral Large, Codestral"]
Grok["grok-3, grok-3-mini"]
Kimi["moonshot-v1-128k"]
Zhipu["GLM-4, GLM-4-Plus"]
MiMo["MiMo-7B"]
Custom["Any OpenAI-compatible"]
end
end
style Sonnet4 fill:#E1BEE7,stroke:#7B1FA2,stroke-width:2px
style Anthropic fill:#FFCDD2,stroke:#C62828
style Google fill:#BBDEFB,stroke:#1976D2
style OpenAI fill:#C8E6C9,stroke:#388E3C
style Others fill:#FFE0B2,stroke:#F57C00
The ContextCollector service connects to the same PostgreSQL and ClickHouse instances configured in the database sections above. No additional configuration is needed beyond:
TELEMETRYFLOW_MCP_POSTGRES_URL — PostgreSQL connection for non-timescale contexts
TELEMETRYFLOW_MCP_CLICKHOUSE_URL — ClickHouse connection for timescale contexts
The service uses lazy imports for asyncpg and clickhouse_connect to avoid hard dependencies.
PromptBuilder Configuration
The PromptBuilder service requires no external configuration. It uses the built-in SYSTEM_PROMPTS dictionary with 60+ specialized analyst personas. Available via the tfo_collect_context MCP tool.
MCP Telemetry Configuration
This section controls MCP-level telemetry settings.
telemetry_mcp:
enabled: true # Enable telemetrybackend: "telemetryflow"# Backend: telemetryflow, otelotlp_endpoint: "localhost:4317"# OTLP endpointservice_name: "telemetryflow-python-mcp"# Service name
Option
Environment Variable
Default
Description
enabled
TELEMETRYFLOW_MCP_TELEMETRY_ENABLED
true
Enable telemetry
backend
TELEMETRYFLOW_MCP_TELEMETRY_BACKEND
telemetryflow
Telemetry backend
otlp_endpoint
TELEMETRYFLOW_MCP_OTLP_ENDPOINT
localhost:4317
OTLP endpoint
service_name
TELEMETRYFLOW_MCP_SERVICE_NAME
telemetryflow-python-mcp
Service name
TelemetryFlow SDK Configuration
This section configures the TelemetryFlow Python SDK (telemetryflow-sdk>=1.2.0) for observability.
telemetry:
enabled: false # Enable TelemetryFlow SDKservice_name: "telemetryflow-python-mcp"# Service nameservice_version: "1.2.0"# Service versionservice_namespace: "telemetryflow"# Service namespaceenvironment: "development"# Environment# API credentials - supports both formatsapi_key: ""# Single key (Go SDK compatibility)api_key_id: ""# Key ID (tfk_*)api_key_secret: ""# Key secret (tfs_*)# Connection settingsendpoint: "api.telemetryflow.id:4317"# TelemetryFlow endpointprotocol: "grpc"# Protocol: grpc, httpinsecure: false # Use insecure connectiontimeout: 30.0# Timeout (seconds)compression: true # Enable compression# Signal configurationenable_traces: true # Enable tracesenable_metrics: true # Enable metricsenable_logs: true # Enable logsenable_exemplars: true # Enable exemplars# Batch settingsbatch_timeout_ms: 5000# Batch timeout (ms)batch_max_size: 512# Max batch size# Retry settingsretry_enabled: true # Enable retrymax_retries: 3# Max retriesretry_backoff_ms: 500# Retry backoff (ms)# Rate limitingrate_limit: 1000# Rate limit (req/min)
Core Settings
Option
Environment Variable
Default
Description
enabled
TELEMETRYFLOW_ENABLED
false
Enable SDK
service_name
TELEMETRYFLOW_SERVICE_NAME
telemetryflow-python-mcp
Service name
service_version
TELEMETRYFLOW_SERVICE_VERSION
1.2.0
Service version
service_namespace
TELEMETRYFLOW_SERVICE_NAMESPACE
telemetryflow
Service namespace
environment
TELEMETRYFLOW_ENVIRONMENT
production
Environment
API Credentials
Option
Environment Variable
Default
Description
api_key
TELEMETRYFLOW_API_KEY
-
Single API key (Go compat)
api_key_id
TELEMETRYFLOW_API_KEY_ID
-
API key ID (tfk_*)
api_key_secret
TELEMETRYFLOW_API_KEY_SECRET
-
API key secret (tfs_*)
Connection Settings
Option
Environment Variable
Default
Description
endpoint
TELEMETRYFLOW_ENDPOINT
api.telemetryflow.id:4317
Endpoint
protocol
TELEMETRYFLOW_PROTOCOL
grpc
Protocol
insecure
TELEMETRYFLOW_INSECURE
false
Insecure mode
timeout
TELEMETRYFLOW_TIMEOUT
30.0
Timeout (s)
compression
TELEMETRYFLOW_COMPRESSION
true
Compression
Signal Configuration
Option
Environment Variable
Default
Description
enable_traces
TELEMETRYFLOW_ENABLE_TRACES
true
Enable traces
enable_metrics
TELEMETRYFLOW_ENABLE_METRICS
true
Enable metrics
enable_logs
TELEMETRYFLOW_ENABLE_LOGS
true
Enable logs
enable_exemplars
TELEMETRYFLOW_ENABLE_EXEMPLARS
true
Enable exemplars
Batch & Retry Settings
Option
Environment Variable
Default
Description
batch_timeout_ms
TELEMETRYFLOW_BATCH_TIMEOUT_MS
5000
Batch timeout (ms)
batch_max_size
TELEMETRYFLOW_BATCH_MAX_SIZE
512
Max batch size
retry_enabled
TELEMETRYFLOW_RETRY_ENABLED
true
Enable retry
max_retries
TELEMETRYFLOW_MAX_RETRIES
3
Max retries
retry_backoff_ms
TELEMETRYFLOW_RETRY_BACKOFF_MS
500
Retry backoff (ms)
rate_limit
TELEMETRYFLOW_RATE_LIMIT
1000
Rate limit
Docker Compose Profiles
The docker-compose.yaml supports 5 profiles for different deployment scenarios. All services communicate over the telemetryflow_python_mcp_net network.