mcpField
C
coral

coral

github.com/withcoral生产力134 次安装
代码仓库

关于 coral

Coral 是一项通过 Coral MCP 工具和资源查询外部上下文的 AI Agent 技能。它规定从发现数据源到执行 SQL 的流程,并要求先检查来源和元数据,再作出判断或指导代码修改。

主要功能

  1. 01发现表和表函数
  2. 02检查架构、列及来源输入
  3. 03使用 SQL 查询数据
  4. 04应用必需筛选条件并限制结果范围
  5. 05总结证据、缺口和后续步骤

适用场景

  1. 01回答前核实实时外部状态
  2. 02查找来源数据并按请求查询
  3. 03依据查询结果指导代码修改

MCP 相关

使用 Coral MCP 工具和资源进行数据发现与查询是规定的入口。若 Coral MCP 不可用,该技能要求停止并说明阻碍。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/withcoral/skills --skill coral

安装后在 Claude Code 中输入/coral确认已加载。

附带文件agents/openai.yaml

详细介绍

Coral

概述

将此作为外部上下文的 Coral 入口。当实时外部状态会影响答案或代码更改时,请先查询 Coral,不要凭假设作答。

  • 使用 Coral MCP 工具/资源进行发现和查询。
  • 除非明确要求,否则不要使用 coral CLI、编译 Coral、复制二进制文件或引导启动服务。
  • 除非用户要求在不使用 Coral 的情况下继续,或 Coral 不涵盖该数据源,否则不要改用供应商工具执行相同的读取操作。

支持检查

  • 在对外部系统作出判断之前,确认 Coral MCP 工具/资源可用。
  • 如果 Coral MCP 不可用,请说明阻碍并停止;不要尝试本地恢复。
  • 区分缺少数据源配置、缺少凭据、查询错误和空结果。
  • 如果缺少范围,请先检查指导信息,再询问最少的缺失标识符。

工作流

  1. 根据用户请求确定所需的数据源、实体和范围。
  2. 使用 search 发现相关表、表函数、列和筛选条件;需要按目录、架构或类型缩小范围查看分页目录时,使用 list_catalog。
  3. 需要精确元数据时,使用 describe 并提供 schema 和不带限定的 surface 名称;对于三段式表名,再添加 catalog。Coral 会判断该对象是表还是表函数。保留请求目标或先前的发现结果,因为精确响应会返回元数据,但不会重复目标。读取 kind、guide、required_filters、函数参数和结果列;查询模式请参阅 coral://guide,表摘要请参阅 coral://tables。
  4. 检查 coral.columns,了解表列、必需筛选条件、虚拟列和说明。
  5. 检查 coral.table_functions,了解数据源范围内的函数指南、参数和结果列。
  6. 如果数据源配置会影响答案,请检查 coral.inputs。
  7. 使用 sql 查询:选择有用的列,包含必需筛选条件或函数参数,并添加 LIMIT,除非请求完整输出。
  8. 总结证据、缺口和后续操作。如果要编辑代码,请根据 Coral 的结果指导更改。

查询规则

  • 在可用时使用各表的 sql_reference。catalog_name 为空时使用 schema_name.table_name;否则使用 catalog_name.schema_name.table_name。分别引用各标识符,切勿将整个限定引用放在引号中。
  • 使用各表函数的 sql_call_example,补全必需参数后再查询。
  • 将元数据发现范围控制在适当大小:对目录发现结果分页;尽可能针对单个表查询 coral.columns,或针对单个数据源查询 coral.table_functions;直接读取大量元数据时添加 LIMIT。
  • 虚拟列仅用于筛选,返回 NULL;请检查 is_virtual。
  • 必需筛选条件必须出现在 WHERE 中;请检查 required_filters 和 is_required_filter。
  • 秘密输入始终返回 value = NULL;请使用 is_set。
  • 支持跨数据源联接,并会在数据源扫描完成后于本地执行。
  • 保持答案简洁:指出数据源、表、必需筛选条件和查询结构。除非用户要求,否则避免详尽列出所有列。
  • 先给出答案或阻碍。仅在有助于用户信任或复用结果时提供 SQL。

边界

  • 仅在用户要求时回退到清单;只检查最相关的部分,并总结表/筛选条件结构。
  • 不要粘贴大段清单内容,不要在未覆盖相关查询的情况下给出整个数据源范围的结论,也不要将查询失败视为空结果。

反馈

如果 MCP feedback 工具可用,请在 Coral 阻碍进度、引导出低效做法,或同一读取操作使用供应商工具更方便时提交反馈。

填写 trying_to_do、tried 和 stuck,并附上表名/数据源名、查询片段和错误文本。对于普通空结果或缺少凭据,不要提交反馈,除非 Coral 未能清楚说明问题。

评论

支持 Markdown