笔记管理服务

MCP Notes Server是一个基于MCP协议的笔记管理应用,支持AI驱动的笔记记录和管理,适用于个人思考和任务记录。

  • by 9Ninety
  • TypeScript
  • 本地部署
  • 37 星标
  • 更新于
在 GitHub 查看 9Ninety/MCPNotes

使用说明

📝 MCP注释

✨ 概述

MCP Notes服务器 是一个基于MCP协议构建的简单笔记应用程序。其目的是使用户能够在使用人工智能模型的同时记录和查看复杂的笔记和任务,例如记录个人想法、笔记、灵感和见解。它不依赖于创建项目文件,允许用户记录任何内容,而无需在项目中公开。

该项目包括两个服务器:一个使用模型上下文协议(MCP)进行AI驱动笔记管理的Node.js服务器,以及一个提供用户友好界面的web服务器,用于手动与笔记交互。

注: 此项目需要DynamoDB来存储笔记。您需要一个AWS帐户才能使用它。AWS为DynamoDB提供了一个慷慨的免费层,使其适合频繁的个人免费使用。


🎯 核心功能

  • 🖥️ 双服务器架构: MCP服务器用于人工智能驱动的笔记管理,Web服务器用于用户界面
  • 🤖 人工智能笔记: 通过人工智能交互记录想法、见解和任务
  • 🗂️ 综合票据管理: 通过AI或web界面创建、列出、检索、更新和删除笔记
  • 📋 可靠的存储: 使用AWS DynamoDB安全高效地存储笔记
  • 🔐 灵活的身份验证: 通过连接字符串或环境变量支持AWS凭据
  • 📝 独立项目: 在不影响项目文件或结构的情况下存储个人笔记

🤖 模型支撑

只要您的客户端支持MCP,您就可以使用任何支持函数调用的模型。以下型号已经过测试并确认有效:

  • 克劳德3.5系列
  • Gemini 1.5和2.0系列
  • GPT-4系列
  • 西北风大
  • Grok-2
  • DeepSeek聊天

🛠️ 安装

推荐

直接与 npx 或 bunx,请参阅下面的示例。

替代

  1. 确保 Node.js 已安装在您的系统上。
  2. 克隆此存储库并安装依赖项: npm install
  3. 配置Claude Desktop或任何其他工具,如下所示

⚙️ 凭证配置

连接字符串

dynamodb://<access_key>:<secret_key>@<region>/<table>

例子: dynamodb://AKIAXXXXXXXX:SKXXXXXXXX@us-east-1/mcp-notes

环境变量

  1. 出口 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY.
  2. 提供URI中没有凭据的连接信息: dynamodb://us-east-1/mcp-notes

🤖 与工具集成

克劳德桌面

将此代码段添加到 claude_desktop_config.json:

{
  "mcpServers": {
    "mcp-notes": {
      "command": "npx",
      "args": [
        "-y",
        "-p",
        "mcp-notes",
        "mcp-notes-server",
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ]
    }
  }
}

或本地磁盘上的文件:

{
  "mcpServers": {
    "mcp-notes": {
      "command": "node",
      "args": [
        "file://path/to/notes-mcp-server.js",
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ]
    }
  }
}

科迪

注: 目前,Cody对MCP服务器的支持有限。
它只允许一个服务器连接,不能进行工具调用。您需要使用web界面创建和管理笔记,然后在AI聊天对话中引用它们。

将此代码段添加到您的VS代码设置中:

{
  "openctx.providers": {
    "https://openctx.org/npm/@openctx/provider-modelcontextprotocol": {
      "nodeCommand": "node",
      "mcp.provider.uri": "file://path/to/notes-mcp-server.js",
      "mcp.provider.args": [
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ]
    }
  }
}

或者,与 npx (不保证工作):

{
  "openctx.providers": {
    "https://openctx.org/npm/@openctx/provider-modelcontextprotocol": {
      "nodeCommand": "node",
      "mcp.provider.uri": "file:///usr/local/bin/npx",
      "mcp.provider.args": [
        "-y",
        "-p",
        "mcp-notes",
        "mcp-notes-server",
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ]
    }
  }
}

克莱恩

将此代码段添加到 cline_mcp_settings.json:

您将在“新建任务”按钮旁边找到一个“MCP服务器”图标,然后有一个“编辑MCP设置”按钮打开此文件。

{
  "mcpServers": {
    "mcp-notes": {
      "command": "npx",
      "args": [
        "-y",
        "-p",
        "mcp-notes",
        "mcp-notes-server",
        "--dynamodb",
        "dynamodb://access_key:secret_key@region/table"
      ]
    }
  }
}

🚀 正在运行Web服务器

web服务器提供了一个用户友好的界面来管理您的笔记。您可以启动web界面来管理您的笔记,为AI添加新笔记,或修改AI生成的笔记的一部分。

npx -p mcp-notes mcp-notes-web-server --dynamodb "dynamodb://access_key:secret_key@region/table"
bun src/notes-web-server.ts --dynamodb "dynamodb://access_key:secret_key@region/table"

或者,使用编译 npm run build 然后跑 node dist/notes-mcp-server.js 或 node dist/notes-web-server.js

然后导航到 http://localhost:3100 在浏览器中查看笔记。


🔧 可用的MCP工具

list备注

  • 输入: { tags?: string[] }
  • 输出: 所有笔记的数组,可选择按标签过滤。

getNote

  • 输入: { id: string }
  • 输出: 与给定ID匹配的单个注释对象,或者如果不存在匹配项,则显示“未找到”消息。

writeNote

  • 输入: { id: string, title: string, summary: string, tags: string[], content: string }
  • 输出: 成功确认消息。

删除注释

  • 输入: { id: string }
  • 输出: 删除确认消息🚮.

📝 数据结构

注释使用以下结构存储:

  • id:钞票的唯一标识符。它应该是描述性的,带有随机数字后缀,如“meeting-notes-1362”。
  • title:说明的标题。
  • summary:该说明内容的简短摘要。
  • tags:与注释关联的标签数组(例如,[“meeting”,“project-x”])。
  • content:说明的主要内容。

📸 截图

克劳德桌面

✅ 全部功能

科迪

✅ 通过资源提及笔记

❎ 不支持工具调用

克莱恩

✅ 工具调用的完整功能

❓ 资源似乎不起作用;需要帮助。