Notes & FAQ Search MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Notes & FAQ Search MCP Serversearch my notes for project design"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
NextFlows
Hi, this is my Academy MCP project.
Notes & FAQ Search MCP Server
What It Does
Notes & FAQ Search is an offline TypeScript MCP server for searching, retrieving, listing, adding, updating, and deleting locally stored notes and FAQs.
The server works fully offline at runtime and uses local JSON fixture data instead of a cloud database or external API.
It exposes seven MCP tools:
Search notes.
Search FAQs.
Retrieve a complete note by ID.
List notes with optional tag filtering.
Add a new note safely to local storage.
Update an existing note safely.
Delete an existing note safely.
The server also exposes two read-only MCP resources:
notes://indexfaq://index
Related MCP server: recall-mcp
Requirements
Before installing the project, make sure you have:
Git
Node.js 20 or later
npm
Check Node.js and npm with:
node --version
npm --versionInstall
Clone the repository:
git clone https://github.com/SajaAsfour/mcp-Notes-FAQ-Search-MCP-server.gitEnter the project directory:
cd mcp-Notes-FAQ-Search-MCP-serverInstall the dependencies:
npm installRun
Start the MCP server in development mode:
npm run devThe server runs over stdio and waits for an MCP client connection.
To stop it, press:
Ctrl+CNote: If you are using MCP Inspector for testing, you do not need to run
npm run devseparately. The MCP Inspector command below starts the server for the Inspector connection.
Optional smoke tests can be run with:
npm testSchema checks can be run with:
npm run check:schemasTypeScript type checking can be run with:
npm run typecheckMCP Inspector
From the project root, launch MCP Inspector with:
npx -y @modelcontextprotocol/inspector npx tsx src/index.tsImportant: Use either
npm run devwith another MCP client, or the MCP Inspector command for Inspector-based testing. You do not need to run both at the same time.
When the Inspector opens, connect to the server and open the Tools section.
You should see all seven tools listed below.
First Successful Tool Call
To verify that the server is working, you can make your first tool call using get_note:
Open the Tools section in MCP Inspector.
Select
get_note.Enter the following input:
{
"note_id": "note-001"
}Run the tool.
A successful call should return the requested note data in the Inspector response.
Tools
Tool | Purpose | Main Input |
| Search locally stored notes using keywords |
|
| Search locally stored FAQ questions and answers |
|
| Retrieve one complete note by its ID |
|
| List stored notes, optionally filtered by tag | optional |
| Validate and add a new note to |
|
| Update the title, content, or tags of an existing note |
|
| Delete an existing locally stored note |
|
limit must be a positive integer no greater than 20.
For update_note, at least one of title, content, or tags must be provided together with a valid note_id.
Example Prompts
Search notes
Ask the server to:
Find notes about MCP tools and resources.
Use search_notes with:
{
"query": "MCP tools and resources",
"limit": 5
}Search FAQs
Ask the server to:
Find the FAQ that explains what an MCP tool is.
Use search_faqs with:
{
"query": "What is an MCP tool?",
"limit": 5
}Get a note
Ask the server to:
Get the full note with ID note-001.
Use get_note with:
{
"note_id": "note-001"
}List notes
Ask the server to:
List up to five notes.
Use list_notes with:
{
"limit": 5
}Add a note
Ask the server to:
Add a note about testing the MCP server.
Use add_note with:
{
"title": "MCP Testing",
"content": "Use MCP Inspector to test the server tools.",
"tags": ["mcp", "testing"]
}add_note writes the validated note to data/notes.json. This changes only the local copy of the project's fixture data on your machine; it does not modify any shared database or GitHub data.
Update a note
Ask the server to:
Update note-001 with a new title.
Use update_note with:
{
"note_id": "note-001",
"title": "Updated MCP Testing Note"
}You can also update more than one field in the same request:
{
"note_id": "note-001",
"title": "Updated MCP Testing Note",
"content": "This note was updated through the MCP server.",
"tags": ["mcp", "testing", "updated"]
}update_note modifies only the fields provided in the request. Fields that are not included remain unchanged. The note keeps the same ID after the update.
Delete a note
Ask the server to:
Delete the note with ID note-006.
Use delete_note with:
{
"note_id": "note-006"
}
## Example Conversations
See `examples/conversations.md` for model interaction examples covering the server's search, retrieval, listing, and mutation workflows.
## Local Data
The project stores its local fixture data in:
```text
data/notes.json
data/faqs.jsonThe server remains offline at runtime.
Read operations use the local JSON data, while add_note and update_note can modify the local data/notes.json file.
Because these mutations are local, changes made during testing affect only the local project copy unless those data changes are intentionally committed to Git.
Troubleshooting
1. npm or Node.js is not available
If commands such as npm install or npm run dev are not recognized, confirm that Node.js 20 or later and npm are installed:
node --version
npm --versionInstall or update Node.js if the commands are missing or the Node.js version is older than 20.
2. The server or MCP Inspector does not start
Make sure you are running commands from the repository root and that dependencies were installed first:
npm installThen launch Inspector with the exact command:
npx -y @modelcontextprotocol/inspector npx tsx src/index.tsIf you are using MCP Inspector, do not start npm run dev at the same time.
The project uses stdio for MCP communication, so avoid adding normal output to stdout while the MCP server is running.
3. A tool returns an input validation error
Check that the input matches the expected schema.
For search tools:
querymust not be empty.limit, when provided, must be a positive integer from1to20.
For get_note and update_note, use an ID in this format:
note-001For example:
{
"note_id": "note-001"
}Do not use file paths or values such as ../etc/passwd as note IDs.
For update_note, provide at least one field to change:
{
"note_id": "note-001",
"title": "Updated Title"
}An update containing only note_id should be rejected because no change was requested.
4. update_note cannot find the note
Use list_notes first to confirm the ID of the note you want to update.
Then call update_note using the exact note ID returned by the server.
5. Claude or another MCP host does not show update_note
Confirm that your local project is on the branch or commit containing the new tool and that registerUpdateNoteTool(server) is registered in src/index.ts.
Then fully restart the MCP host so it performs tool discovery again.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search your Glasp web and Kindle highlights, notes, and AI memories from any MCP client. Read-only.
Personal knowledge base MCP server with semantic search, auto-categorization, metadata extraction
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
MCP-native notes and memory for ChatGPT, Claude, and other AI tools.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables semantic search and retrieval from your local markdown brain (Remember.md) via MCP tools, running entirely offline with local embeddings.231MIT
- AlicenseAqualityDmaintenanceTurns a local folder of notes and documents into a searchable knowledge base for AI assistants via MCP, enabling semantic search, reading, and adding notes entirely on-device.49MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to search and read offline documentation from synced libraries via MCP tools, providing hybrid keyword and semantic search without network calls.111MIT
- FlicenseNot gradedqualityAmaintenanceEnables semantic search over personal markdown notes by indexing them into a vector database and exposing search, reindex, and status tools via MCP.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/SajaAsfour/mcp-Notes-FAQ-Search-MCP-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server