内容
# 关于本项目
本项目是一个MCP协议适配器,用于为代理提供CAP服务。更多信息,请参阅官方 [文档](https://cap.cloud.sap/docs/guides/protocols/mcp)。
## 要求和设置
我们使用 `@capire/bookshop` 作为运行示例。克隆它并在 VSCode 中打开,如下所示:
```bash
git clone https://github.com/capire/bookshop
code bookshop
```
## 功能标志
所有配置都位于 `package.json` 的 `cds.mcp` 下:
```json
{
"cds": {
"mcp": {
"per_action_tool": false,
"toon_format": true
}
}
}
```
| 标志 | 默认值 | 描述 |
| ----------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `per_action_tool` | `false` | 将每个操作/函数暴露为其专用的工具,而不是通用的 `call_action` 工具。 |
| `toon_format` | `true` | 以 [TOON](https://www.npmjs.com/package/@toon-format/toon) 格式返回查询结果。设为 `false` 以使用 JSON 代替。 |
| `prefix` | `false` | 在工具名称前加上服务名称的 slug,以避免MCP客户端连接到多个MCP服务器时的冲突(例如 `catalog_query`、`admin_describe`)。 |
有关其他配置选项,请参阅官方 [文档](https://cap.cloud.sap/docs/guides/protocols/mcp)。
## 自定义服务器指令
您可以使用 `@mcp.instructions` 注解来自定义在初始化期间发送给代理的MCP服务器指令:
```cds
annotate MyService with @mcp.instructions: '使用 describe 探索产品目录。 使用 query 按名称或类别搜索产品。';
```
如果未设置,则使用默认指令。该注解也支持 i18n 引用(`{i18n>key}`)。
## 支持、反馈、贡献
本项目通过 [GitHub 问题](https://github.com/cap-js/mcp/issues) 开放功能请求/建议、错误报告等。鼓励并欢迎贡献和反馈。有关如何贡献、项目结构以及其他贡献信息,请参阅我们的 [贡献指南](CONTRIBUTING.md)。
## 安全/披露
如果您发现可能存在安全问题的错误,请按照我们的安全策略中的说明报告。 请勿为与安全相关的疑虑或问题创建 GitHub 问题。
## 行为准则
作为成员、贡献者和领导者,我们承诺使我们的社区对每个人都是一个没有骚扰的体验。 通过参与本项目,您同意始终遵守其 [行为准则](https://github.com/cap-js/.github/blob/main/CODE_OF_CONDUCT.md)。
## 许可
版权 2026 SAP SE 或 SAP 附属公司 和 cap-js/mcp 贡献者。 请查看我们的 [LICENSE](./LICENSES/Apache-2.0.txt) 以获取版权和许可信息。 包括第三方组件及其许可/版权信息在内的详细信息可通过 [REUSE 工具](https://api.reuse.software/info/github.com/cap-js/mcp) 获取。