MCP Notes

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • The README shows a command for running the web server using Bun as an alternative runtime: 'bun src/notes-web-server.ts --dynamodb ...'

  • The README mentions Node.js multiple times as the primary runtime for the MCP server, with instructions for configuration in various clients.

  • The README shows integration with npm through the use of npx commands to run the MCP Notes server and web server.

Notas del MCP

✨ Descripción general

MCP Notes Server es una sencilla aplicación para tomar notas basada en el protocolo MCP. Su propósito es permitir a los usuarios grabar y visualizar notas y tareas complejas utilizando modelos de IA, como el registro de pensamientos, notas, inspiraciones y reflexiones personales. No requiere la creación de archivos de proyecto, lo que permite a los usuarios grabar cualquier contenido sin hacerlo público dentro del proyecto.

Este proyecto incluye dos servidores: un servidor Node.js que utiliza el Protocolo de contexto de modelo (MCP) para la gestión de notas impulsada por IA y un servidor web que proporciona una interfaz fácil de usar para la interacción manual con sus notas.

Nota: Este proyecto requiere DynamoDB para el almacenamiento de notas. Necesitará una cuenta de AWS para usarlo. AWS ofrece un generoso plan gratuito para DynamoDB, ideal para uso personal frecuente sin costo.


🎯 Características principales

  • 🖥️ Arquitectura de servidor dual: servidor MCP para la gestión de notas impulsada por IA y servidor web para la interfaz de usuario
  • 🤖 Toma de notas con tecnología de IA: registre pensamientos, ideas y tareas mediante interacciones de IA
  • 🗂️ Gestión integral de notas: crea, enumera, recupera, actualiza y elimina notas mediante IA o interfaz web
  • 📋 Almacenamiento confiable: almacenamiento de notas seguro y eficiente con AWS DynamoDB
  • 🔐 Autenticación flexible: Compatibilidad con credenciales de AWS a través de cadenas de conexión o variables de entorno
  • Independiente del proyecto: almacene notas personales sin afectar los archivos ni la estructura del proyecto

🤖 Soporte de modelos

Puede usar cualquier modelo que admita llamadas a funciones, siempre que su cliente sea compatible con MCP. Los siguientes modelos han sido probados y su funcionamiento está confirmado:

  • Serie Claude 3.5
  • Serie Géminis 1.5 y 2.0
  • Serie GPT-4
  • Mistral grande
  • Grok-2
  • Chat de DeepSeek

🛠️ Instalación

Recomendado

Ejecútelo directamente con npx o bunx , vea los ejemplos a continuación.

Alternativa

  1. Asegúrese de que Node.js esté instalado en su sistema.
  2. Clone este repositorio e instale las dependencias con: npm install
  3. Configure Claude Desktop o cualquier otra herramienta como se muestra a continuación

⚙️ Configuración de credenciales

Cadena de conexión

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

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

Variables de entorno

  1. Exportar AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY .
  2. Proporcione información de conexión sin credenciales en la URI: dynamodb://us-east-1/mcp-notes

🤖 Integración con herramientas

Escritorio de Claude

Agregue este fragmento a 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" ] } } }

o archivo en discos locales:

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

Cody

Nota: Actualmente, Cody tiene soporte limitado para servidores MCP.
Solo permite una conexión al servidor y no puede realizar llamadas a herramientas. Deberá usar la interfaz web para crear y administrar notas y luego consultarlas en las conversaciones de chat de IA.

Añade este fragmento a tu configuración de VS Code:

{ "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" ] } } }

Alternativamente, úselo con npx (no se garantiza que funcione):

{ "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

Agregue este fragmento a cline_mcp_settings.json :

Encontrará un ícono de "Servidor MCP" junto al botón "Nueva tarea", y luego hay un botón "Editar configuración de MCP" para abrir este archivo.

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

🚀 Servidores web en ejecución

El servidor web ofrece una interfaz intuitiva para gestionar tus notas. Puedes iniciar interfaces web para gestionar tus notas, añadir nuevas notas para IA o modificar partes de las notas generadas por IA.

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"

Alternativamente, compile con npm run build y ejecute node dist/notes-mcp-server.js o node dist/notes-web-server.js

Luego navegue a http://localhost:3100 en su navegador para ver las notas.


🔧 Herramientas MCP disponibles

lista de notas

  • Entrada: { tags?: string[] }
  • Salida: Matriz de todas las notas, opcionalmente filtradas por etiquetas.

obtenerNota

  • Entrada: { id: string }
  • Salida: Un único objeto de nota que coincide con el ID dado, o un mensaje "no encontrado" si no existe ninguna coincidencia.

escribir nota

  • Entrada: { id: string, title: string, summary: string, tags: string[], content: string }
  • Salida: Un mensaje de confirmación de éxito.

eliminar nota

  • Entrada: { id: string }
  • Salida: Mensaje de confirmación de eliminación 🚮.

📝 Estructura de datos

Las notas se almacenan utilizando la siguiente estructura:

  • id : Un identificador único para la nota. Debe ser descriptivo, con un sufijo numérico aleatorio, como "notas-de-reunión-1362".
  • title : El título de la nota.
  • summary : Un breve resumen del contenido de la nota.
  • tags : una matriz de etiquetas asociadas con la nota (por ejemplo, ["reunión", "proyecto-x"]).
  • content : El contenido principal de la nota.

📸 Capturas de pantalla

Escritorio de Claude

✅ Funcionalidad completa

Cody

✅ Mencione notas a través del recurso

❎ No se admiten llamadas a herramientas

Cline

✅ Funcionalidad completa con llamadas a herramientas

❓ Los recursos no parecen funcionar; se necesita ayuda.

ID: 4c63qdbh55