N.I.L.O. Docs

Core API

本文档面向开发者,记录 src/nilo/core/ 当前已经实现的 Core 能力。Core 是唯一业务逻辑层,CLI 和 MCP Tool 都应调用 Core,而不是直接调用 Notion SDK。

配置

模块:src/nilo/core/config.py

全局配置默认是 ~/.notion_mcp/config.json,也可以由 NOTION_MCP_CONFIG 指向其他文件。项目配置是有效查找边界以下最近的 .notion_mcp/config.json,也可以位于 home 树外的 workspace。项目设置优先于全局设置,但凭据只能保存在全局配置中。初始化项目时,如果项目根 .gitignore 不存在会创建该文件,并在保留原内容的前提下增量加入精确条目 .notion_mcp/

错误模型

模块:src/nilo/core/errors.py

CLI JSON 输出和 MCP tool 响应应复用这些错误结构。

Notion SDK Client

模块:src/nilo/core/client.py

认证

模块:src/nilo/core/auth.py

审计

模块:src/nilo/core/audit.py

Notion 对象域服务

目录:src/nilo/core/services/

当前已按对象域建立服务模块:

这些服务只依赖 Core 和 Notion SDK-compatible client,不导入 CLI 或 MCP 层。

模块 src/nilo/core/services/provider.py 是 client 与对象域 service 的通用组合入口。CLI、MCP 和兼容适配层都导入这些 Core provider,不各自维护重复 factory。

通用 Runtime API

目录:src/nilo/runtime/

Runtime 保存适配层共用的非业务执行能力:

Runtime 可以依赖 Core 契约。Core/Runtime 不导入 CLI 或 MCP 适配层,CLI 也不导入 MCP。

Raw API

模块:src/nilo/core/services/raw_api.py