关于 Natural Context Provider
Natural Context Provider(NCP)是 MCP 网关服务,通过按需发现和统一执行接口管理分散的工具、技能与 Photon,面向使用多个 MCP 的 AI 客户端。它还支持 TypeScript 代码执行与任务调度,初始工具列表保持精简。
主要功能
- 01按需搜索工具、技能和 Photon
- 02通过统一接口执行工具
- 03执行 TypeScript 工作流
- 04创建定时任务
- 05支持项目级 MCP 配置
适用场景
- 01从大量 MCP 工具中查找适合当前请求的工具
- 02组合多个工具创建自动化工作流
- 03安排代码任务定时运行
MCP 相关
NCP 向 MCP 客户端提供 `find`、`run`,以及启用时的 `code` 等网关工具,并管理下游 MCP、技能与 Photon。支持 MCP Apps 的客户端还可接收选定的应用回调工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @portel/ncpNCP_DEBUGEnable debug logging for troubleshootingNCP_MODEOperating mode: 'mcp' for AI assistant integration or 'cli' for command-lineNO_COLORDisable colored output in logs and CLI本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
2收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| description | string | 否 | 描述所需功能的搜索查询(例如 "send email"、"read file")。所有工具均需省略此参数(不要传入 "list all" 或空字符串)。多个查询使用竖线分隔("gmail | slack")。 |
| limit | number | 否 | 每页最大结果数(搜索时默认值:5,列表时默认值:20) |
| page | number | 否 | 页码(默认值:1) |
| confidence_threshold | number | 否 | 最低置信度 0.0-1.0(默认值:0.35)。数值越低,结果越多;数值越高,结果越精准。 |
| depth | number | 否 | 详细程度:0=名称,1=+描述,2=+参数(默认值:2) |
详细介绍
NCP - 自然上下文提供程序
一个 MCP 统领一切
让你的 MCP 更强大。通过常见的 MCP 客户端发现工具、使用代码模式执行、按计划运行、查找技能,并加载 Photons。按需发现功能让初始工具范围保持精简。
相关的 Portel 项目:Photon 可将 TypeScript 方法转化为可靠的、面向 Agent 的能力:MCP 工具、嵌入式应用 UI、CLI 命令、Web 路由、计划任务、Webhook、重试和 Beam 接口。NCP 帮助 Agent 发现并使用工具;Photon 帮助开发者构建 Agent 可以信赖的工具和应用。
💍 什么是 NCP?
AI 不必在分散于不同 MCP 中的 50 多个工具之间疲于周旋,NCP 为其提供统一接口,支持代码模式执行、计划任务、技能发现和自定义 Photons。
大多数宿主只会看到 NCP 精简的网关界面(find、run,以及启用时的 code)。支持 MCP Apps 的宿主还可以接收选定的应用回调工具,以确保嵌入式界面正常工作。NCP 会选择性地添加应用工具;如果应用组存在冲突,则会省略这些组,而不是重命名应用可能会按名称调用的回调。
find- 搜索任意工具、技能或 Photon:“我需要读取文件”→ 自动找到合适的工具code- 直接执行 TypeScript:await github.create_issue({...})(默认启用代码模式)run- 单独执行工具(禁用代码模式时)
在幕后,NCP 管理所有 50 多个工具、技能和 Photons:路由请求、发现合适的能力、执行代码、安排任务、管理运行状况,以及缓存响应。
宿主决定可以使用哪些可选功能。NCP 会公布 MCP Apps、Skills 和 Tasks 能力,而不支持扩展的客户端仍可使用核心工具和现有请求流程。

为何重要:
- AI 不再分析“该用哪个工具?”,而是开始真正做事
- 代码模式让 AI 能编写结合工具、技能和计划任务的多步骤 TypeScript 工作流
- 技能提供特定领域的专业知识:画布设计、PDF 处理、文档生成等
- Photons支持创建自定义 TypeScript MCP,无需发布到 npm
- 按需发现让初始工具范围保持精简;实际的上下文使用取决于宿主、启用的 NCP 工具和已连接的服务
- **你的 AI 将变得专注。**不再焦躁不安。
🚀 **新功能:**项目级配置——每个项目都可以自动定义自己的 MCP
**什么是 MCP?**Anthropic 推出的 Model Context Protocol 可让 AI 助手连接外部工具和数据源。可以将 MCP 想象成赋予 AI 超能力的“插件”,例如访问文件、搜索网页、使用数据库等。
📑 快速导航
- 问题所在 - 工具太多为何会让你的 AI 不堪重负
- 解决方案 - NCP 如何改变你的使用体验
- 开始使用 - 安装与快速入门
- 试用体验 - 查看 CLI 的实际效果
- 增强功能 - NCP 如何增强你的 MCP
- 按客户端设置 - Claude Desktop、Cursor、VS Code 等
- 热门 MCP - 添加社区热门工具
- 高级功能 - 项目配置、计划任务、远程 MCP
- 故障排除 - 常见问题与解决方案
- 工作原理 - 技术深入解析
- 参与贡献 - 帮助我们改进 NCP
😤 MCP 悖论:从助手到不堪重负
你给 AI 助手提供了 50 个工具,希望它能力更强。结果,它却不堪重负:
- 选择困难(“我应该用
read_file还是get_file_content?”) - 还没开始就筋疲力尽(“我光是分析该用哪个工具就耗尽了上下文限额”)
- 成本飙升(50 多个工具架构会在任何实际工作开始前消耗大量令牌)
- 询问多于行动(原本果断,如今却不断要求澄清)
🧸 为什么工具太多会让系统不堪重负
可以这样想:
只有一个玩具的孩子 → 珍惜它、熟练掌握它,用它创造无穷无尽的游戏
有 50 个玩具的孩子 → 无法全部拿在手里,不知所措,最后干脆不玩了
你的 AI 就是那个孩子。 MCP 就是玩具。越多不一定越好。
最有创造力的人往往在限制条件下表现出色,而不是面对无限选项时。让诗人“随便写点什么”,他可能会陷入创作瓶颈;让他“写一首关于雨的俳句”,灵感就会立刻涌现。
你的 AI 也一样。 给它一个恰到好处的工具 → 立即行动。给它 50 个工具 → 认知过载。NCP 提供按需工具发现,让你的 AI 在需要时恰好获得所需工具。
📊 使用前后的实际效果
使用 NCP 前:不堪重负的助手 😵💫
当你的 AI 助手直接管理 50 个工具时:
🤖 AI Assistant Context:
├── Filesystem MCP (12 tools)
├── Database MCP (8 tools)
├── Web Search MCP (6 tools)
├── Email MCP (15 tools)
├── Shell MCP (10 tools)
├── GitHub MCP (20 tools)
└── Slack MCP (9 tools)
💀 Total: 80 tool schemas compete for attention before useful work begins
会发生什么:
- AI 会消耗 50% 以上的上下文,只为弄清有哪些工具
- 花 5-8 秒分析该使用哪个工具
- 常因架构混淆而选错工具
- 在对话中途达到上下文限额
使用 NCP 后:执行助理 ✨
由 NCP 担任幕僚长:
🤖 AI Assistant Context:
└── NCP gateway tools → discover and run the tools needed for this request
🎯 Behind the scenes: NCP manages all 80 tools
📈 Tool discovery happens on demand
🎪 AI behavior: Confident, focused, decisive
NCP 减少了预先将所有下游工具架构加载到宿主中的需求。节省的上下文量以及对响应时间的影响,会因宿主、服务目录和已启用功能而异。
📋 前置条件
- Node.js 22+(推荐 Node.js 24;CI 使用 24)(在此下载)
- npm(随 Node.js 一同安装)或用于运行软件包的 npx
- 命令行访问权限(Mac/Linux 上的 Terminal,Windows 上的 Command Prompt/PowerShell)
🚀 安装
选择你的 MCP 客户端,查看设置说明:
| 客户端 | 说明 | 设置指南 |
|---|---|---|
| Claude Desktop | Anthropic 官方桌面应用。最适合 NCP——一键安装 .dxt 并自动同步 | → 完整指南 |
| Claude Code | 以终端为核心的 AI 工作流。开箱即用! | 内置支持 |
| VS Code | 搭配 Agent Mode 的 GitHub Copilot。使用 NCP 进行语义工具发现 | → 设置 |
| Cursor | 以 AI 为核心、搭载 Composer 的代码编辑器。广受欢迎的 VS Code 替代品 | → 设置 |
| Windsurf | Codeium 的 AI 原生 IDE,搭载 Cascade。基于 VS Code 构建 | → 设置 |
| Cline | 支持 MCP 的 VS Code 扩展,可辅助 AI 开发 | → 设置 |
| Continue | 搭载 Agent Mode 并支持本地 LLM 的 VS Code AI 助手 | → 设置 |
| 想了解更多客户端? | 查看完整的 MCP 兼容客户端和工具列表 | 官方 MCP 客户端 • Awesome MCP |
| 其他客户端 | 通过 npm 使用任意 MCP 兼容客户端 | 快速开始 ↓ |
快速开始(npm)
适用于高级用户或上方未列出的 MCP 客户端:
步骤 1:安装 NCP
npm install -g @portel/ncp
步骤 2:导入现有 MCP(可选)
ncp config import # Paste your config JSON when prompted
步骤 3:配置 MCP 客户端
将以下内容添加到客户端的 MCP 配置中:
{
"mcpServers": {
"ncp": {
"command": "ncp"
}
}
}
✅ 完成! 你的 AI 可以通过 NCP 发现并运行工具。支持 MCP Apps 的宿主还可能收到选定的应用回调工具。

🧪 试用:亲自感受差异
想体验 AI 所体验的内容吗?NCP 提供了便于人类使用的 CLI:
🔍 智能发现
# Ask like your AI would ask:
ncp find "I need to read a file"
ncp find "help me send an email"
ncp find "search for something online"

注意: NCP 理解的是意图,而不只是关键词。就像你的 AI 所需要的一样。
📋 生态概览
# See your complete MCP ecosystem:
ncp list --depth 2
# Get help anytime:
ncp --help

⚡ 直接测试
# Test any tool safely:
ncp run filesystem read_file --path "/tmp/test.txt"
这很重要,因为: 你可以直接调试和测试工具,就像 AI 使用它们一样。
✅ 验证一切正常
# 1. Check NCP is installed correctly
ncp --version
# 2. Confirm your MCPs are imported
ncp list
# 3. Test tool discovery
ncp find "file"
# 4. Test a simple tool (if you have filesystem MCP)
ncp run filesystem read_file --path "/tmp/test.txt" --dry-run
✅ 成功标志:
- NCP 显示版本号
ncp list显示你导入的 MCPncp find返回相关工具- 你的 AI 客户端会显示 NCP 的网关工具;支持 Apps 的宿主还可能显示选定的应用回调工具
💪 从工具到自动化:真正的威力
你已经了解了 find(发现工具)和 code(执行 TypeScript)。单独使用时,它们都很有用。结合调度功能后,它们就能成为强大的自动化利器。
一个真实示例:MCP 会议抓取器
为了准备即将发布的版本,我们希望及时掌握与 MCP 相关的会议和研讨会信息。我们没有每天手动查看网站,而是请 Claude:
“设置一个每日抓取器,查找 MCP 会议并将其保存到 CSV 文件中”
Claude 做了什么:
-
使用
code编写自动化程序:// Search the web for MCP conferences const results = await web.search({ query: "Model Context Protocol conference 2025" }); // Read each result and extract details for (const url of results) { const content = await web.read({ url }); // Extract title, deadline, description... // Save to ~/.ncp/mcp-conferences.csv } -
使用
schedule实现自动运行:ncp schedule create code:run "every day at 9am" \ --name "MCP Conference Scraper" \ --catchup-missed
如何自行设置:
首先,安装 web photon(提供搜索和读取功能):
# Install from the official photons repo
ncp photon add https://raw.githubusercontent.com/portel-dev/photons/main/web.photon.ts
然后让 Claude 创建抓取器——它会自动使用 web photon。
现在会发生什么:
- 每天早上 9 点,抓取器都会自动运行
- 搜索新的 MCP 活动,并将其添加到 CSV 文件中
- 如果我们早上 9 点时合上了笔记本电脑,它会在我们打开电脑后补上
- 我们醒来时就能看到最新的会议数据,无需手动操作
关键所在: find 和 code 让 AI 能够编写自动化程序。schedule 让程序持续运行。这就是强大的自动化利器。
💡 NCP 如何改变你的 AI 使用体验
🧠 从绝望到授权
- 绝望的助手:“我看到 50 个工具……该用哪个……让我想想……”
- 高效的助手:“我需要文件访问权限。搞定。”(NCP 负责处理细节)
💰 聚焦的工具发现
- NCP 让宿主按需搜索更大的工具目录
- 对上下文的影响取决于你的宿主和已启用的工具范围
🎯 消除选择困难
- **绝望的助手:**AI 陷入停滞、选错工具,还要请求澄清
- **高效的助手:**NCP 的 Chief of Staff 立即找到正确的工具
🚀 自信行动
- **之前:**延迟 8 秒、犹豫不决,还会问“我该用哪个工具?”
- **之后:**立即决策、马上执行,毫不迟疑
归根结底:你的 AI 将从绝望的助手变成高效的助手。
⚡ 强大功能
下面具体介绍 NCP 如何增强你的 MCP:
| 功能 | 作用 | 重要意义 |
|---|---|---|
| 🔍 工具发现 | 按意图和关键词搜索工具 | 无需一次性暴露所有下游工具架构,即可找到相关工具 |
| 📦 按需加载 | 在需要时发现下游工具 | 让初始工具范围保持聚焦;节省的上下文因配置而异 |
| ⏰ 自动定时 | 按 cron 计划或自然语言时间运行任意工具 | 无需保持 AI 会话开启即可在后台自动运行 |
| 🔌 MCP 客户端支持 | 兼容常见 MCP 客户端,包括 Claude Desktop、Claude Code、Cursor 和 VS Code | 核心网关功能广泛可用;扩展支持取决于宿主 |
| 💾 智能缓存 | 智能缓存工具架构和响应 | 消除重复索引——节能又快速 |
结果:你的 MCP 将从零散的工具变成一个统一的智能系统,让 AI 真正高效地使用它们。
🛠️ 面向高级用户:手动设置
更喜欢从头搭建?手动添加 MCP:
# Add the most popular MCPs:
# AI reasoning and memory
ncp add sequential-thinking npx @modelcontextprotocol/server-sequential-thinking
ncp add memory npx @modelcontextprotocol/server-memory
# File and development tools
ncp add filesystem npx @modelcontextprotocol/server-filesystem ~/Documents # Path: directory to access
ncp add github npx @modelcontextprotocol/server-github # No path needed
# Search and productivity
ncp add brave-search npx @modelcontextprotocol/server-brave-search # No path needed

**💡 专业提示:**浏览 Smithery.ai(2,200 多个 MCP)或 mcp.so,发现满足特定需求的工具。
🎯 与 NCP 搭配效果出色的热门 MCP
🔥 下载量最高
# Community favorites (download counts from Smithery.ai):
ncp add sequential-thinking npx @modelcontextprotocol/server-sequential-thinking # 5,550+ downloads
ncp add memory npx @modelcontextprotocol/server-memory # 4,200+ downloads
ncp add brave-search npx @modelcontextprotocol/server-brave-search # 680+ downloads
🛠️ 开发必备
# Popular dev tools:
ncp add filesystem npx @modelcontextprotocol/server-filesystem ~/code
ncp add github npx @modelcontextprotocol/server-github
ncp add shell npx @modelcontextprotocol/server-shell
🌐 效率与集成
# Enterprise favorites:
ncp add gmail npx @mcptools/gmail-mcp
ncp add slack npx @modelcontextprotocol/server-slack
ncp add google-drive npx @modelcontextprotocol/server-gdrive
ncp add postgres npx @modelcontextprotocol/server-postgres
ncp add puppeteer npx @hisma/server-puppeteer
🤖 内部 MCP
NCP 内置了强大的内部 MCP,可通过外部工具编排扩展功能:
Scheduler MCP - 自动运行任意工具
使用 cron 或自然语言计划,安排任意 MCP 工具自动运行。
# Schedule a daily backup check
ncp run schedule:create --params '{
"name": "Daily Backup",
"schedule": "every day at 2am",
"tool": "filesystem:list_directory",
"parameters": {"path": "/backups"}
}'
功能:
- ✅ 自然语言计划(“每天上午 9 点”、“每周一”)
- ✅ 标准 cron 表达式,支持高级控制
- ✅ 计划安排前自动验证
- ✅ 执行历史记录和监控
- ✅ 即使 NCP 未运行也能工作(集成系统 cron)
MCP Management MCP - 通过 AI 安装 MCP
通过自然语言动态安装和配置 MCP。
# AI can discover and install MCPs for you
ncp find "install mcp"
# Shows: mcp:add, mcp:remove, mcp:list
功能:
- ✅ 从注册表搜索和发现 MCP
- ✅ 无需手动配置即可安装 MCP
- ✅ 以编程方式更新和移除 MCP
- ✅ AI 可自行扩展新能力
Skills Management MCP - 使用插件扩展 Claude
管理 Anthropic Agent Skills——为 Claude 添加专业知识和工具的模块化扩展。
// Discover skills using vector search
const results = await skills.find({ query: "canvas design" });
// Install a skill
await skills.add({ skill_name: "canvas-design" });
// List installed skills
const installed = await skills.list();
// Read skill resources
const template = await skills.read_resource({
skill_name: "canvas-design",
file_path: "resources/templates.md"
});
功能:
- ✅ 基于向量的技能语义搜索
- ✅ 从官方市场一键安装
- ✅ 渐进式披露(元数据 → 完整内容 → 资源)
- ✅ 集成 Anthropic 官方市场
- ✅ 支持自定义市场
- ✅ 自动加载已安装的技能
Analytics MCP - 可视化使用情况与性能
在聊天中直接查看使用统计数据、节省的令牌和性能指标。
# View usage overview with ASCII charts
ncp run analytics:overview --params '{"period": 7}'
功能:
- ✅ 使用趋势和最常用的工具
- ✅ 令牌节省分析(Code-Mode 效率)
- ✅ 性能指标(响应时间、错误率)
- ✅ 便于 AI 使用的 ASCII 格式图表
配置: 内部 MCP 默认处于禁用状态。请在个人资料设置中启用:
{
"settings": {
"enable_schedule_mcp": true,
"enable_mcp_management": true,
"enable_skills": true,
"enable_analytics_mcp": true
}
}
🔧 高级功能
智能健康监控
NCP 会自动检测失效的 MCP,并绕过它们进行路由:
ncp list --depth 1 # See health status
ncp config validate # Check configuration health
🎯 结果: 你的 AI 永远不会因工具失效而卡住。
多配置组织
按项目或环境整理 MCP:
# Development setup
ncp add --profile dev filesystem npx @modelcontextprotocol/server-filesystem ~/dev
# Production setup
ncp add --profile prod database npx production-db-server
# Use specific profile
ncp --profile dev find "file tools"
🚀 项目级配置
新增: 按项目配置 MCP 并自动检测,非常适合团队和云端 IDE:
# In any project directory, create local MCP configuration:
mkdir .ncp
ncp add filesystem npx @modelcontextprotocol/server-filesystem ./
ncp add github npx @modelcontextprotocol/server-github
# NCP automatically detects and uses project-local configuration
ncp find "save file" # Uses only project MCPs
工作原理:
- 📁 存在本地
.ncp目录 → 使用项目配置 - 🏠 不存在本地
.ncp目录 → 回退到全局~/.ncp - 🎯 无需管理配置文件 → 所有内容都写入默认的
all.json
适用于:
- 🤖 Claude Code 项目(项目专属 MCP 工具)
- 👥 团队一致性(将
.ncp文件夹随代码库一同提交) - 🔧 项目专属工具(每个项目自行定义 MCP)
- 📦 环境隔离(避免全局 MCP 冲突)
# Example project structures:
frontend-app/
.ncp/profiles/all.json # → playwright, lighthouse, browser-context
src/
api-backend/
.ncp/profiles/all.json # → postgres, redis, docker, kubernetes
server/
远程 MCP 传输方式与休眠支持
NCP 同时支持 stdio(本地)和 HTTP/SSE(远程)MCP 服务:
Stdio 传输方式(传统):
# Local MCP servers running as processes
ncp add filesystem npx @modelcontextprotocol/server-filesystem ~/Documents
Streamable HTTP(远程):
{
"mcpServers": {
"remote-mcp": {
"url": "https://mcp.example.com/api",
"transport": "streamableHttp",
"auth": {
"type": "bearer",
"token": "your-token-here"
}
}
}
}
对于旧版 HTTP/SSE 端点,请设置 "transport": "sse"。如果旧版配置文件包含 URL 但没有 transport,NCP 会继续使用旧版 SSE 行为。新的注册表导入默认选择 Streamable HTTP。协议版本协商与传输方式选择相互独立,不会自动发现其他端点。
OAuth 2.1 与 PKCE(MCP 2025-03-26 规范):
{
"mcpServers": {
"oauth-mcp": {
"url": "https://mcp.example.com/api",
"auth": {
"type": "oauth",
"oauth21": {
"scopes": ["read", "write"],
"callbackPort": 9876,
"clientId": "optional-pre-registered-client-id",
"clientSecret": "optional-client-secret"
}
}
}
}
}
OAuth 2.1 功能:
- ✅ PKCE(代码交换证明密钥) - OAuth 2.1 的安全要求
- ✅ 动态客户端注册(RFC 7591) - 未提供 clientId 时自动注册
- ✅ 令牌存储与自动刷新 - 令牌保存至
~/.ncp/auth/,并自动刷新 - ✅ 浏览器授权流程 - 打开浏览器以征求用户同意
- ✅ 无头环境回退方案 - 为服务器/CI 环境提供手动输入代码的方式
- ✅ 受保护资源发现(RFC 9728) - 自动发现 OAuth 端点
首次设置流程:
- NCP 在浏览器中打开授权 URL
- 你授予权限
- 浏览器重定向至本地回调地址(
http://localhost:9876) - NCP 通过 PKCE 将代码交换为访问令牌
- 令牌会自动保存,并在后续请求中自动刷新
🔋 支持休眠的服务:
NCP 会自动支持启用休眠功能的 MCP 服务(例如 Cloudflare Durable Objects 或 Metorial):
- 无需任何配置 - 休眠功能可透明运行
- 自动唤醒 - NCP 发出请求时,服务会按需唤醒
- 状态保留 - 服务状态会在休眠周期之间保持
- 节省成本 - 仅在 MCP 正在处理请求时付费
工作原理:
- 服务空闲时进入休眠状态(不消耗资源)
- NCP 发送请求 → 服务立即唤醒
- 服务处理请求并响应
- 空闲超时后,服务重新进入休眠状态
适用于:
- 💰 成本优化 - 仅需为活跃处理时间付费
- 🌐 云托管 MCP - Metorial、Cloudflare Workers、无服务器平台
- ♻️ 资源效率 - 无需承担服务器空闲成本
- 🚀 缩至零 - 无需服务时会自动休眠
注意: 休眠是服务端功能。NCP 的远程 MCP 客户端无需特殊配置,即可与传统服务和支持休眠的服务配合使用。
现代 MCP 扩展和结果处理
NCP 会在发现和 run 过程中保留下游工具描述符和原生 MCP 结果,包括结构化内容、错误状态、元数据,以及文本、图像、音频、资源和资源链接块。如果集成此前解析的是编码了结果块数组的 JSON 文本,请更新它,使其读取原生 MCP 结果字段。
当主机声明支持 MCP Apps 时,NCP 会有选择地公开下游应用启动工具和应用回调,并提供它们的 ui:// 资源。主机控制是否向模型提供仅限应用的回调。工具名称或 UI 资源冲突会导致受影响的应用组被省略;其常规工具仍可通过 find 和 run 使用。
Skills 扩展可按需公开本地和兼容的远程技能清单,包括清单字节的 SHA-256 摘要。Tasks 扩展为兼容的现代主机提供持久句柄,用于 run 和 code,并支持 tasks/get、tasks/update 和 tasks/cancel。重启后,未完成的工作会报告为中断,而不会重新执行;只有在 NCP 能确认工作进程已停止时,才会报告取消。没有 Tasks 支持的主机仍使用现有的同步或多轮请求流程。
响应缓存有容量限制,私有缓存条目按服务配置和凭据身份进行分区。服务端缓存时限和工具列表变更通知会指导刷新。有关传输、SDK、注册表、扩展和兼容性详情,请参阅 MCP 兼容性说明。
Photon Runtime(CLI 与 DXT)
TypeScript Photon Runtime 默认启用,但根据运行 NCP 的方式,开关位置有所不同:
- **CLI / npm 安装:**编辑
~/.ncp/settings.json(或运行ncp config),并将enablePhotonRuntime设为true或false。也可以临时覆盖设置:NCP_ENABLE_PHOTON_RUNTIME=true ncp find "photon"。 - DXT / 客户端包(Claude Desktop、Cursor 等):这些构建版本不会读取
~/.ncp/settings.json。要配置 photons,请在客户端配置中设置环境变量:
{
"mcpServers": {
"ncp": {
"command": "ncp",
"env": {
"NCP_ENABLE_PHOTON_RUNTIME": "true"
}
}
}
}
如果禁用 Photon Runtime,内部 MCP 仍会继续工作,但 .photon.ts 文件会被忽略,直到重新启用该开关。
随处导入
# From clipboard (any JSON config)
ncp config import
# From specific file
ncp config import "~/my-mcp-config.json"
# From Claude Desktop (auto-detected paths)
ncp config import
🛟 故障排除
导入问题
# Check what was imported
ncp list
# Validate health of imported MCPs
ncp config validate
# See detailed import logs
DEBUG=ncp:* ncp config import
AI 未使用工具
- 检查连接:
ncp list(应显示你的 MCP) - 测试发现:
ncp find "your query" - **验证配置:**确保你的 AI 客户端指向
ncp命令
性能问题
# Check MCP health (unhealthy MCPs slow everything down)
ncp list --depth 1
# Clear cache if needed
rm -rf ~/.ncp/cache
# Monitor with debug logs
DEBUG=ncp:* ncp find "test"
🌓 我们为何构建它
就像阴阳一样,一切都依赖于事物之间的平衡。
计算赋予我们精确性和确定性。 AI赋予我们创造力和概率性。
我们相信,将这些力量按恰当比例结合,就能创造出突破性产品。
NCP 如何体现这种平衡:
| NCP 的功能 | AI(创造力) | 计算(精确性) | 平衡之道 |
|---|---|---|---|
| 工具发现 | 在语义上理解“读取文件” | 确定性地路由至确切工具 | 自然请求 → 精确执行 |
| 编排 | 灵活响应你的意图 | 可靠地执行工具 | 自然流程 → 确定结果 |
| 运行状况监控 | 根据模式进行调整 | 监控连接、自动故障转移 | 智能适应 → 稳定运行 |
纯 AI(过于难以预测)和纯计算(过于僵化)都不可取。
你的 AI 保持创造力,精确性则由 NCP 负责。
📚 深入了解:工作原理
可复现的网关基准测试可测量序列化负载大小、本地延迟、工作流完成情况和结果保真度。运行 npm run benchmark:mcp;其基于字节的 Token 估算值会与实际分词器测量结果分开标注。
想了解技术细节?这里有 Token 分析、架构图和性能基准测试:
📖 阅读技术指南 →
了解以下内容:
- 向量相似度搜索算法
- N 对 1 编排架构
- 真实场景下的 Token 使用量对比
- 健康监控和故障转移系统
🤝 参与贡献
帮助 NCP 变得更好:
- 🐛 错误报告:GitHub Issues
- 💡 功能请求:GitHub Discussions
- 🔄 拉取请求:贡献指南
📄 许可证
Elastic License 2.0 - 完整许可证
**简而言之:**免费用于所有用途,包括商业用途。不得作为托管服务提供给第三方。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。