mcpField
L
Log10x MCP

Log10x MCP

本地服务
doc.log10x.com数据与分析12 天前更新

关于 Log10x MCP

Log10x MCP 将 Log10x 平台的日志模式、成本和事件分析工具提供给 Claude 等 MCP 助手,适用于日志成本分析与事件排查。它按重复消息类型汇总日志并提供逐模式指标;无 API 密钥时可只读访问公开演示数据。

主要功能

  1. 01按日志模式统计流量与成本
  2. 02查询服务指标及变化趋势
  3. 03调查事件时间线和关联模式
  4. 04提出日志压缩、降级或卸载建议
  5. 05从本地文件估算节省

适用场景

  1. 01定位日志成本上升的模式
  2. 02调查服务日志量突增
  3. 03决定哪些消息类型应降噪
  4. 04部署前评估日志成本节省

MCP 相关

通过 MCP 工具向兼容客户端暴露 Log10x 的日志分析、成本估算、事件调查及管理能力。无密钥时以公开演示数据只读运行;账户级工具需要 API 密钥。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"log-10x-log10x": {
"command": "npx",
"args": [
"-y",
"log10x-mcp"
],
"env": {
"LOG10X_API_KEY": "<LOG10X_API_KEY>"
}
}
}
}
启动命令npx -y log10x-mcp
需要配置的环境变量
LOG10X_API_KEY密钥Log10x API key. Without it the server boots read-only against the public demo dataset.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmlog10x-mcp1.30.96

工具

55

收录的工具列表 · 更新于 2 天前

参数类型必填说明
patternstring否要查找的模式名称或搜索词(例如,“Payment_Gateway_Timeout”)。改为传入 `pattern_hash` / `tenxHash` 时省略。
servicestring否用于限定查找范围的服务
tenxHashstring否`pattern_hash` 的旧版别名。两者均可接受。传入规范的 `pattern_hash` 格式或此旧版格式均可,两者的处理方式相同。
siemScopestring否通过 tenxHash 反向查找时,实时样本行的 SIEM 范围:CloudWatch 日志组(`/aws/ecs/my-svc`)、ES 索引或 Splunk 索引。省略时,检测到的 SIEM 连接器会使用其自身的默认范围。仅在传入 `tenxHash` 时查询(跨支柱关联场景)。
timeRangeenum否时间范围。用于事件窗口查找的值应小于一天。'24h' 和 '1d' 等效。15m | 1h | 6h | 24h | 1d | 7d | 30d
environmentstring否环境昵称
analyzerCostnumber否SIEM 摄取成本,单位为 $/GB(`effective_ingest_per_gb` 的弃用别名)
pattern_hashstring否SIEM / CloudWatch Logs 事件中出现的规范 11 字符哈希(例如,“03ndjreM-sU”)。`tenxHash` 的别名;两者均可接受。根据 10x 指标解析以恢复模式,然后显示常规成本/服务明细。
effective_ingest_per_gbnumber否客户提供的 SIEM 摄取成本,单位为 $/GB。设置后,金额字段会填充,且 rate_source=customer_supplied;未设置且未检测到默认费率时,金额字段将归为 null,且 rate_source=unset。

详细介绍

Log10x MCP 服务

用简单的英语向 AI 助手询问日志成本、日志模式和事故,获取有逐模式指标支持的结构化答案。“为什么我们本周的日志成本激增了?”“是什么导致了 payments-svc 的日志量?”“提取 acme-corp 从 Jan 15 到 Apr 15 的 payment_retry 事件。”该服务将 10x 平台以一组工具的形式提供给 Claude 和任何兼容 MCP 的助手。

10x 会按消息类型对日志分组。相同的日志行会反复出现,只有时间戳或请求 ID 不同,因此 10x 会将每一大批几乎相同的日志行折叠为一种消息类型,并按日志量和成本排序。名称取自通过代码编译而成的符号,因此在相同引擎、库和配置下,同一日志行在每个节点上的名称都相同。

该服务基于 MIT 协议开源。Log10x 产品许可证(API key)可解锁账号范围的工具;没有许可证时,服务会以只读模式启动,并使用公开的演示数据集,让你立即探索这些工具。

你可以这样提问

你说会发生什么
“我该从哪里开始?帮我降低日志成本。”引导菜单会询问你想做什么(降低成本、调查、安装),并引导你进入相应的下一步,同时展示最新动态和变更内容。log10x_start、log10x_whats_new、log10x_whats_changing
“让我登录。” / “我现在是以谁的身份连接?”通过 GitHub 登录生成并存储 API 密钥,并显示你的账户可以访问的环境。log10x_signin_start、log10x_login_status、log10x_create_env
“告诉我如何在我的技术栈上安装。”提供可直接粘贴的设置步骤,用于配置你自己的流水线和回传线路,并为每项服务推荐操作。策略会以拉取请求的形式提交,供你合并;如果是 ConfigMap,则只有在你进行第二次明确调用后才会写入。log10x_advise_install、log10x_advise_retriever、log10x_configure_engine
“部署前,先估算一下我的数据能节省多少。”无需安装,即可根据本地日志文件或现有日志平台生成节省成本报告。log10x_poc_from_local、log10x_poc_from_siem_submit、log10x_poc_from_siem_status。无密钥启动也会连接到公开演示数据集,并注册这三个工具,因为它们在用户的机器上运行,不会接触演示后端。设置 LOG10X_DEMO_FALLBACK=off 会以 POC 模式启动,届时将移除 log10x_top_patterns、log10x_investigate、log10x_savings 以及所有 Retriever 工具。
“我能降低多少成本?已经降低了多少?”查看预计节省和实际节省,并了解每个数字背后的逐模式计算依据。log10x_estimate_savings、log10x_savings、log10x_commitment_report
“目前是什么在推高我的成本?”查看推动日志量和成本的重复消息类型及服务,以及它们在周与周之间的变化。log10x_top_patterns、log10x_whats_changing、log10x_services
“为什么 payments-svc 的用量突然飙升?”单次调用即可完成调查:查看时间线、相关模式和最有力的时间证据,并显示置信度,避免将任何内容说成已证实的原因。log10x_investigate、log10x_metrics_that_moved、log10x_metric_overlay
“这种消息类型是噪声,删掉它。”对选定的消息类型进行采样、丢弃、压缩、降低层级或卸载,并提供示例和趋势,让操作一目了然。log10x_pattern_mitigate、log10x_pattern_examples、log10x_pattern_trend
“我们的环境全是 Lambda,没有集群。在那里安装。”为无服务器环境生成安装计划:将引擎作为 Lambda 扩展,与函数的 OTel 收集器配合使用,并提供 CDK 构造以及基于 AWS 原生机制、通过 S3 配置平面定期触发的方案。log10x_advise_install、log10x_setup_recurring
“获取我卸载的实际事件。”按需从你自己的 S3 中取回确切事件。log10x_retriever_query、log10x_offload_add、log10x_retriever_register
“识别出更多我的消息类型。”将你自己的源代码、二进制文件和容器映像编译成符号库,让引擎能够识别更多消息类型。log10x_compile、log10x_compile_link、log10x_compile_status

安装

Claude Code

claude mcp add --transport stdio --env LOG10X_API_KEY=your-api-key log10x -- npx -y log10x-mcp

使用 /mcp 验证。省略 --env 标志,即可针对公开演示数据集以只读模式运行。

Claude Desktop

将以下内容添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):

{
  "mcpServers": {
    "log10x": {
      "command": "npx",
      "args": ["-y", "log10x-mcp"],
      "env": {
        "LOG10X_API_KEY": "your-api-key"
      }
    }
  }
}

Cursor、Windsurf 和其他 MCP 客户端

添加一个 mcpServers 条目,形状相同:"command": "npx"、"args": ["-y", "log10x-mcp"],并在 env 中设置 LOG10X_API_KEY。省略密钥即可运行只读演示模式。

完整设置指南:https://doc.log10x.com/apps/mcp/

log10x_top_patterns 和 log10x_pattern_trend 中的图表图片(include_chart)需要 chart.js 和 chartjs-node-canvas。它们是可选的对等依赖项,不会随软件包一起安装;如果缺少这些依赖项,图表将以文本形式呈现。

Elasticsearch、Azure Monitor 和 GCP Cloud Logging 连接器,以及 Azure App Configuration 和 GCP Secret Manager 配置存储,也会使用可选 SDK,以保持默认安装精简。启动服务时添加这些依赖项,例如 npx -y -p log10x-mcp -p @azure/monitor-query -p @azure/identity log10x-mcp;如果缺少所需软件包,连接器会列出它们。

凭据

需要 Log10x API 密钥才能使用账户范围的工具。获取密钥有两种方式:

  • **通过 GitHub 登录:**运行 log10x_signin_start,完成流程后再运行 log10x_signin_complete。密钥会自动保存。log10x_login_status 会显示当前连接的账户。
  • **环境变量:**直接设置 LOG10X_API_KEY。

**没有密钥?**服务会以只读模式启动,连接到公开的 10x 演示数据集(与网站控制台展示的示例数据相同),因此分析、发现和安装建议工具开箱即用。此模式下会禁用修改类工具,以免更改共享演示数据。设置 LOG10X_DEMO_FALLBACK=off,即可启动纯 POC 模式(在你自己的文件上估算节省,无需账户)。模式在启动时确定;重启服务即可重新检测。

环境变量

全部为可选项。通常只需设置 LOG10X_API_KEY(也可以完全不设置密钥)。

变量用途
LOG10X_API_KEYLog10x API 密钥。不设置则以只读模式启动,使用公开演示数据集。
LOG10X_API_BASEAPI 基础 URL 覆盖值(默认值为 https://prometheus.log10x.com)。
LOG10X_ENV_ID固定使用特定环境 ID,而不是从你的账户自动发现。
LOG10X_DEMO_FALLBACK设置为 off,则在未设置密钥时以 POC 模式启动,而不是连接到公开演示数据集。
LOG10X_MCP_READ_ONLY设置为 true 或 1 以强制启用只读模式(所有修改数据的工具都会拒绝操作)。
LOG10X_CUSTOMER_METRICS_URL / _TYPE / _AUTH指向你自己的指标后端(Prometheus、Grafana Cloud、Mimir、Thanos、AMP),用于 BYO-metrics 设置。
DD_API_KEY / DD_APP_KEY / DD_SITEDatadog 凭据,用于将每种模式的指标回填到 Datadog。
PROMETHEUS_REMOTE_WRITE_URL / PROMETHEUS_URLPrometheus 端点,用于回填和读取每种模式的时间序列。
__SAVE_LOG10X_RETRIEVER_URL__ / __SAVE_LOG10X_RETRIEVER_BUCKET__Retriever 查询端点及其索引的存储桶,用于回取。两者均为必需;log10x_retriever_register 会设置同一对值。Lambda 函数 URL 使用你的 AWS 凭据签名。
__SAVE_LOG10X_RETRIEVER_TARGET__回取查询的默认目标应用前缀,例如 app。
LOG10X_RETRIEVER_LOG_GROUPRetriever 写入查询事件的 CloudWatch 日志组,即其 TENX_QUERY_LOG_GROUP 的值。设置后,零结果查询会指出哪个阶段未匹配到任何内容。
LOG10X_RETRIEVER_TIMEOUT_MS / LOG10X_RETRIEVER_POLL_MS回取查询超时时间(默认值为 90000)和轮询间隔(默认值为 1500)。
LOG10X_RETRIEVER_AUTH_HEADER / LOG10X_RETRIEVER_AUTH_VALUE覆盖回取身份验证标头(默认值根据当前环境确定)。
LOG10X_OFFLOAD_BUCKET / LOG10X_STREAMER_BUCKET卸载工具管理的 S3 存储桶名称。
TENX_LICENSE_KEY引擎许可证密钥。在编译路径和本地引擎运行路径(log10x_resolve_batch、log10x_extract_templates)中,都会将其传递给引擎;Docker 模式和本地模式均适用。在 Docker 模式下,如果引擎拒绝该密钥,自动重试时会暂不传递此密钥,使运行改用镜像内置的受限许可证,而不是失败;此降级会记录在服务的 stderr 中。
OTEL_EXPORTER_OTLP_ENDPOINT将服务自身的工具调用跟踪信息发送到 OTLP 端点。OpenTelemetry SDK 是可选的对等依赖,不会随软件包一同安装:请在其旁安装 @opentelemetry/sdk-node、@opentelemetry/exporter-trace-otlp-http 和 @opentelemetry/resources,否则跟踪功能会保持关闭,并由服务在 stderr 中说明。
TENX_LICENSE_FILE引擎许可证文件的路径,是 TENX_LICENSE_KEY 的替代方案。此文件由引擎本身读取,因此必须指定引擎进程可访问的路径(引擎在 Docker 中运行时,需指定容器内的路径)。
LOG10X_TENX_MODE本地引擎和编译工具使用 local 或 docker。未设置时会自动检测:若 PATH 中存在 tenx,则优先使用;否则回退到 Docker。设置为 docker 可改用引擎镜像,而不是本地安装;当本地 tenx 没有许可证时,也可通过此方式绕过。
LOG10X_TENX_PATH本地 tenx 二进制文件的路径(当解析出的模式为 local 时使用)。默认为 PATH 中的 tenx。
LOG10X_RUNTIME_IMAGEDocker 模式下运行路径使用的引擎镜像(默认值为 log10x/pipeline-10x:latest)。接受别名 native,该别名会选择 GraalVM-native log10x/edge-10x。
LOG10X_TENX_IMAGE运行路径共用的引擎镜像;也用作 log10x_compile 的回退镜像。在编译路径中会拒绝运行时版本的镜像。
LOG10X_COMPILER_IMAGElog10x_compile / log10x_compile_link 使用的编译器镜像(默认值为按摘要固定的 log10x/compiler-10x:1.1.136,确保每次运行使用同一编译器;设为 :latest 可跟踪版本发布;未设置时回退到 LOG10X_TENX_IMAGE)。只有编译器版本才能构建符号库。
LOG10X_GH_REPO / LOG10X_GITOPS_REPO_PATHGitOps 感知型配置工具使用的 GitHub 仓库和本地路径。

连接你自己的数据(可选)

10x 让日志始终可查询,而无需付费索引所有内容。Receiver 会将超出预算的噪声发送到你自己的 S3;需要时,Retriever 会按需取回这些确切事件。log10x_offload_add 和 log10x_retriever_register 会接通卸载和取回流程;log10x_backfill_metric 会将每种模式的用量和成本序列推送到你现有的 Datadog 或 Prometheus,让成本视图与其余仪表板一同显示。

安全

服务器作为 AI 客户端的子进程在本地运行。只有预聚合的指标查询(每种模式的用量和成本)会离开设备,原始日志内容绝不会离开。使用 log10x_resolve_batch 进行的本地排查完全在你的设备上通过 stdin 和 stdout 运行。连接到你自己的日志平台时使用只读凭据。设置 LOG10X_MCP_READ_ONLY=true,即可无论处于何种模式都拒绝所有会更改数据的工具。

隔离的 POC:可验证的离线运行

对于必须可验证、而非仅靠承诺的评估:将 MCP 服务和日志引擎放在同一个容器中,以 --network none 启动,并使用你通过自己的凭据导出的日志样本。

docker run -i --rm --pull=never --network none --hostname localhost \
  --cap-drop ALL --security-opt no-new-privileges \
  -v "$PWD/poc/logs:/data:ro" -v "$PWD/poc/out:/out" \
  -e TENX_LICENSE_KEY -e TENX_AIRGAPPED=true log10x/poc:local

此处没有 npx 版本,这不是疏忽。npx 会在运行时解析并执行软件包,而软件包的 postinstall 脚本是不受限制的代码,会使用主机拥有的任何网络权限运行;这正是设置隔离环境要杜绝的情况。镜像中的所有内容都在构建时打包完成;容器启动时不会安装任何内容。

在任何日志数据纳入范围之前,由你通过一条可见的 curl 命令生成许可证:在此配置文件中,服务器绝不会生成许可证;如果缺少许可证,会显示这些说明,而不是进行获取操作。日志样本由你导出:log10x_emit_sample_plan 会为每个 analyzer 生成一个只读 shell 脚本,你可以先阅读一次,然后在容器外运行。

用一条 docker inspect 命令验证,然后关闭 Wi-Fi 并再次运行分析,以最终确认。

完整操作指南(包括导出脚本中需要检查的内容,以及我们不会掩盖的残余风险):docs/fenced-poc.md。

开源和许可证

MIT。已在 npm 上发布为 log10x-mcp(Node 20+)。源代码公开,因此可以直接查看每个工具背后的行为。账户级工具需要 Log10x 产品许可证(API key);公开演示数据集无需许可证。

MCP 客户端会将服务器作为长期运行的子进程启动。升级软件包后,请重启客户端以使新版本生效。

报告运行情况

可选,无需注册。如果你将此工具用于自己的日志,可以提交 issue,说明它读取的平台、运行结果或停止的位置,以及你是否希望收到回复。如果不希望收到回复,请说明,我们就不会回复。

文档

https://doc.log10x.com/apps/mcp/

了解工具为何使用稳定的模式 ID:博客文章。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。