mcp-server-sample
mcp-server-sample — 메모를 저장·검색하는 최소의 MCP 서버
메모를 저장하고 검색하는 것만 가능한 최소의 MCP 서버입니다. 외부 시스템에는 전혀 연결하지 않습니다. 저장 위치는 같은 폴더의 notes.json 하나의 파일뿐입니다.
MCP의 3가지 프리미티브를 각각 하나씩 갖추고 있습니다.
프리미티브 | 누가 결정하는가 | 이 서버에서의 내용 |
Tools | 모델이 판단한다 |
|
Resources | AI 앱이 획득하여 전달한다 |
|
Prompts | 사욕자가 명시적으로 선택한다 |
|
필요 사항
Node.js 24 이상 (LTS.
node --version으로 확인)git
설정
git clone https://github.com/utakatano/mcp-server-sample.git
cd mcp-server-sample
npm installnpm install이 통과되면 준비 완료입니다. 이 시점에서는 시작하지 않습니다. MCP 서버는 AI 앱이 시작하기 때문에, 직접 터미널에서 실행할 필요가 없습니다.
AI 앱에 연결
Claude Code
claude mcp add notes -- node /絶対パス/mcp-server-sample/index.jsclaude mcp list에서 ✔ Connected가 나타나면 연결된 것입니다.
Claude Desktop
설정 → Developer → 「Edit Config」에서 claude_desktop_config.json을 열고 다음을 추가합니다.
{
"mcpServers": {
"notes": {
"command": "node",
"args": ["/絶対パス/mcp-server-sample/index.js"]
}
}
}저장한 후 Claude Desktop을 완전히 종료하고 다시 시작합니다 (창을 닫는 것만으로는 반영되지 않습니다).
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
작동 확인
「来週までにネットワーク構成を確認する」とメモして「ネットワーク」を含むメモを探してnotes.json이 만들어지고, 내용이 느어나는 것을 확인할 수 있습니다.
저장 위취 변경
환경 변수 NOTES_FILE에 절대 경로를 전달하면 저장 위취를 변경할 수 있습니다.
{
"mcpServers": {
"notes": {
"command": "node",
"args": ["/絶対パス/mcp-server-sample/index.js"],
"env": { "NOTES_FILE": "/絶対パス/my-notes.json" }
}
}
}연결되지 않을 때
먼저 로그를 봅니다. 원인은 대개 여기에 나타납니다.
tail -20 ~/Library/Logs/Claude/mcp-server-notes.log # macOS
# Windows: %APPDATA%\Claude\logs\mcp-server-notes.logServer started and connected successfully 이후에 오류가 이어지지 않는지 확인하세요.
로그에 나타난 것 | 원인 | 대처 |
|
| 리포지토리 직하에서 |
| AI 앱에서 |
|
| 의존성이 설치되지 않음 | 리포지토리 직하에서 |
로그가 비었거나 갱신되지 않음 | 설저이 로드되지 않음 | JSON 구문(표, 괄호)을 확인하고, Claude Desktop을 완전히 종료(macOS는 ⌘Q)한 후 다시 시작 |
서버 측인지 AI 앱 측인지의 구분은 로컬에서 직접 실행해보는 것이 밉릅니다.
printf '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28"}}}\n' \
| node /絶対パス/mcp-server-sample/index.jsadd_note와 search_notes를 포함한 JSON이 반환되면 서버는 정상입니다. 그 경우 AI 앱 측의 설정(경로·JSON 작선법·재시작)을 의심하세요.
공급망 보안
npm 패키지 탈취를 가정한 설정을 .npmrc에 넣어 두었습니다. npm install / npm ci 할 때마다 적용됩니다.
설정 | 하는 일 |
| 설취 시 의존 패키지의 라이프사이클 스크립트( |
|
|
| 공개로부터 7일이 지난 버전만 설취. npm은 이곳을 |
의존성은 package.json에서 완전 고정 (@modelcontextprotocol/server는 2.0.0, zod는 4.4.3), package-lock.json에 integrity 해시와 함께 기록되어 있습니다. lock대로 설치하려면 npm install이 아닌 npm ci를 사용하세요.
의존성을 갱신할 때는 의도적으로 하나씩 올립니다.
npm outdated
npm install @modelcontextprotocol/server@2.1.0 # save-exact により完全固定で書かれる
npm ls --all # 増えた依存を目で確認する라이선스
MIT
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, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Cross-session, cross-device memory for your agent: remember and recall notes. No key to start.
Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.
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/utakatano/mcp-server-sample'
If you have feedback or need assistance with the MCP directory API, please join our Discord server