Documentation
¶
Index ¶
Constants ¶
const DefaultEndpoint = "https://mcp.datadoghq.com/api/unstable/mcp-server/mcp"
DefaultEndpoint is the Datadog MCP server endpoint used when a config or an org does not override it. See https://docs.datadoghq.com/bits_ai/mcp_server/setup/
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
// Endpoint is the default Datadog MCP endpoint for every org.
Endpoint string `yaml:"endpoint,omitempty"`
Orgs []*OrgConfig `yaml:"orgs"`
}
Config is the ddmcproxy configuration file.
func LoadConfig ¶
LoadConfig reads and validates the config file at path.
The file content is passed through os.ExpandEnv so that secrets can be referenced as ${DD_API_KEY} instead of being written in plain text.
type Options ¶
type Options struct {
Config string `short:"c" required:"" env:"DDMCPROXY_CONFIG" help:"Config file path."`
}
type OrgConfig ¶
type OrgConfig struct {
Name string `yaml:"name"`
Token string `yaml:"token,omitempty"`
APIKey string `yaml:"api_key,omitempty"`
AppKey string `yaml:"app_key,omitempty"`
Endpoint string `yaml:"endpoint,omitempty"`
}
OrgConfig holds the credentials for a single Datadog organization.
Authentication is either a token -- a Personal (ddpat_) or Service (ddsat_) Access Token, passed as a bearer token -- or the legacy API key + Application key pair. Exactly one of the two must be configured.
type Proxy ¶
type Proxy struct {
// contains filtered or unexported fields
}
Proxy is a multi-org MCP proxy in front of the Datadog MCP server.
It exposes the upstream Datadog tools over stdio, injecting a required "org" argument into each tool. On a tool call the org is used to pick the matching API/APP keys, and the call is forwarded to the Datadog MCP server.