MCP Server to take notes
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"notes-taker": {
"env": {
"NOTES_PATH": "/path/to/your/notes"
},
"args": [
"-jar",
"/path/to/notes-taker-app.jar"
],
"command": "java"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
A Model Context Protocol (MCP) Server built with Spring Boot and Spring AI that provides AI assistants with the ability to manage notes through file-based storage.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in productivity
MCP Security Weekly
Get CVE alerts and security updates for Notes Taker Mcp Server App and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A Model Context Protocol (MCP) Server built with Spring Boot and Spring AI that provides AI assistants with the ability to manage notes through file-based storage.
This application implements an MCP server that exposes tools for creating, reading, updating, and deleting notes. It integrates with AI assistants (like Claude, Gemini, etc.) via the Model Context Protocol, enabling them to manage notes on behalf of users.
| Component | Technology |
|---|---|
| Framework | Spring Boot 3.5.7 |
| AI Integration | Spring AI 1.1.0 |
| Protocol | MCP (Model Context Protocol) |
| Java Version | 17 |
| Build Tool | Maven |
The server exposes the following tools for AI assistants:
| Tool Name | Description |
|---|---|
search_notes | Search notes by filename (case-insensitive partial match) |
list_notes | List all available notes in the notes directory |
read_note | Read and return the full content of a note |
create_note | Create a new note file with content |
delete_note | Delete an existing note file |
append_to_note | Append content to an existing note |
notes-taker-mcp-server-app/
├── src/
│ ├── main/
│ │ ├── java/com/mcp_server/notes/
│ │ │ ├── NotesApplication.java # Main application entry point
│ │ │ └── service/
│ │ │ ├── NotesService.java # Service interface
│ │ │ └── impl/
│ │ │ └── NotesServiceImpl.java # MCP tool implementations
│ │ └── resources/
│ │ └── application.properties # Configuration
│ └── test/
│ └── java/com/mcp_server/notes/
│ ├── NotesApplicationTests.java # Context loading test
│ └── service/impl/
│ └── NotesServiceImplTest.java # Unit tests
├── pom.xml
└── README.md
Configure the application in src/main/resources/application.properties:
spring.application.name=notes
spring.main.web-application-type=none
spring.ai.mcp.server.name=notes-taker-app
spring.ai.mcp.server.version=0.0.1
# Notes storage path - defaults to ${user.home}/notes
# Override using: NOTES_PATH environment variable or -Dnotes.path=<path>
notes.path=${NOTES_PATH:${user.home}/notes}
| Property | Default | Description |
|---|---|---|
notes.path | ${user.home}/notes | Directory where notes are stored |
NOTES_PATH (env var) | - | Environment variable to override notes path |
./mvnw clean package
./mvnw test
java -jar target/notes-taker-app.jar
Or with a custom notes path:
NOTES_PATH=/path/to/notes java -jar target/notes-taker-app.jar
The server will start and listen for MCP STDIO communication.
Add to your Claude Desktop config file (claude_desktop_config.json):
{
"mcpServers": {
"notes-taker": {
"command": "java",
"args": ["-jar", "/path/to/notes-taker-app.jar"],
"env": {
"NOTES_PATH": "/path/to/your/notes"
}
}
}
}
For VS Code with Gemini, configure in your MCP settings:
{
"servers": {
"notes-taker": {
"command": "java",
"args": ["-jar", "/path/to/notes-taker-app.jar"],
"env": {
"NOTES_PATH": "/path/to/your/notes"
}
}
}
}