Skip to content
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,9 +282,11 @@ Hitting **Connect** will open a browser window for LFID login.

### LFX Lens

| Tool | Description |
|------------------|-------------------------------------------------------------------------------------------------------|
| `query_lfx_lens` | Ask natural-language questions about a project's data (events, contributors, health, value, and more) |
| Tool | Description |
|------------------------------|-------------------------------------------------------------------------------------------------------|
| `query_lfx_lens` | Ask natural-language questions about a project's data (events, contributors, health, value, and more) |
| `explore_lfx_semantic_layer` | Discover Insights metrics and the dimensions available to them |
| `query_lfx_semantic_layer` | Run a metric query against the Insights Semantic Layer (filter, group, rank, trend) |

### B2B Organizations

Expand Down
9 changes: 8 additions & 1 deletion cmd/lfx-mcp-server/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,7 @@ var defaultTools = []string{
"list_email_templates",
"send_email",
"query_lfx_lens",
"explore_lfx_semantic_layer",
"query_lfx_semantic_layer",
"search_b2b_orgs",
}
Expand Down Expand Up @@ -797,8 +798,14 @@ func newServer(cfg Config, serviceName string, callerToken *auth.TokenInfo) *mcp
if enabledTools["query_lfx_lens"] && canRead && isStaff {
tools.RegisterQueryLFXLens(server)
}
// Each semantic layer tool honours its own name in LFXMCP_TOOLS. They are
// intended to be enabled together — each description points at the other —
// but gating both on one name made the other name select nothing.
if enabledTools["explore_lfx_semantic_layer"] && canRead && isStaff {
tools.RegisterExploreSemanticLayer(server)
}
if enabledTools["query_lfx_semantic_layer"] && canRead && isStaff {
tools.RegisterSemanticLayer(server)
tools.RegisterQuerySemanticLayer(server)
}

return server
Expand Down
Loading
Loading