MCP Notes
📚 MCP 노트
모델 컨텍스트 프로토콜(MCP)을 기반으로 구축된 개인 지식 관리 시스템으로, 일상적인 메모를 체계적으로 정리하고 검색 가능한 지식으로 변환합니다.
🚀 사용법
🛠️ 수동 설정
저장소를 복제합니다
지엑스피1
MCP 설정
🖥️ 클로드 데스크탑
claude-desktop-config.json에 다음을 추가합니다.
"notes": {
"command": "node",
"args": [
"path/to/this/repo/mcp-notes/dist/index.js",
"path/to/your/notes"
],
},Related MCP server: Memory Bank MCP
🌟 프로젝트 비전
MCP Notes는 일상적인 생각, 성과, 통찰력을 다음과 같이 정리할 수 있는 시스템을 구축하여 지식 단편화 문제를 해결하는 것을 목표로 합니다.
📥 최소한의 마찰로 빠르게 캡처
🗂️ 의미 있는 구조로 자동 구성됨
🧠 더 높은 수준의 지식으로 합성됨
🔍 필요할 때 쉽게 검색 가능
목표는 어떤 도구에서든 실시간으로 작업 기억을 꺼내 쓰레기를 분류할 수 있는 외부 고무 오리를 만드는 것입니다.
🧩 핵심 개념
1. 📅 일일 기록
MCP Notes에서 일일 기록은 핵심적인 정보 수집 단위입니다. 각 날짜마다 하루 동안의 관찰 내용을 기록할 수 있는 마크다운 파일이 제공됩니다. 일일 기록은 누적 원장이라고 생각하면 됩니다.
💡 팁: Claude Desktop의 빠른 입력 키보드 단축키를 활용하세요
MCP는 도구에 구애받지 않으므로 대화뿐만 아니라 도구에 대해서도 /log를 사용할 수 있습니다. 버그를 수정한 후 Copilot이나 Cursor에게 얻은 교훈 요약을 기록해 달라고 요청하거나 Claude Desktop에게 오래된 문제에 대한 새로운 접근 방식을 저장하도록 할 수 있습니다.
2. 📊 롤업
롤업은 일일 로그를 더 높은 수준의 통찰력과 패턴으로 압축하여 자동으로 생성되는 요약입니다. 개별적인 정보 조각들을 연결하여 작업과 사고에 대한 일관된 이야기를 만들어내는 데 도움이 됩니다.
3. 📚 지식 카테고리
시스템의 모든 노트는 다음 네 가지 범주 중 하나에 속합니다.
🏆 성취 : 문제 해결, 기능 완성, 버그 수정
💡 통찰력 : 패턴, 아키텍처 결정, 더 나은 작업 방식
📝 TODO : 더 큰 목표와 관련된 작업, 의미 있는 개선 사항
📖 지식 : 기술적 세부 사항, 맥락, 근거, 기술
🎨 디자인 원칙
MCP Notes는 다음과 같은 몇 가지 핵심 설계 원칙을 기반으로 구축되었습니다.
1. 📄 일반 텍스트 먼저
모든 메모는 일반 텍스트 Markdown 파일로 저장되어 다음이 보장됩니다.
독점적인 포맷에 얽매이지 않는 미래 지향적 스토리지
버전 제어 호환성
모든 텍스트 편집기로 쉽게 편집 가능
투명한 데이터 구조
2. ✍️ 낮은 마찰 캡처
기본 인터페이스는 생각을 기록하는 과정에서 발생하는 마찰을 최소화하도록 설계되었습니다.
간단한 텍스트 입력
자동 분류 지원
캡처 시점에 복잡한 구성이 필요하지 않습니다.
3. 🔄 진보적 조직
MCP Notes는 처음부터 엄격한 조직을 요구하는 대신 점진적인 접근 방식을 채택합니다.
생생한 생각과 활동을 포착하세요
콘텐츠를 자동으로 분류합니다
주기적 요약 생성
시간 경과에 따라 관련 항목 연결
4. 🤖 AI 증강
이 시스템은 AI를 활용해 인간의 사고를 대체하는 것이 아니라 향상시킵니다.
정보 분류에 도움
요약 및 연결 생성
표면 관련 과거 노트
시간에 따른 패턴 식별
🧰 사용 가능한 도구
MCP Notes는 Claude Desktop 또는 다른 MCP 호환 클라이언트를 통해 사용할 수 있는 도구 세트를 제공합니다. 이러한 도구를 사용하면 노트를 캡처, 정리 및 검색할 수 있습니다.
📝 코어 노트 도구
/log
귀하의 메모를 바탕으로 오늘의 일일 기록 파일을 만들거나 업데이트합니다.
"내 일일 기록에 이것을 기록하세요: ...", "내 기록에 요약을 추가하세요: ...."로 호출합니다.
/rollup
일일 메모를 범주, 연결, 작업 항목 등을 사용하여 체계적으로 정리된 요약으로 종합합니다.
"오늘의 노트를 롤업"으로 호출합니다.
write_note
새로운 메모를 만들거나 기존 메모에 내용을 덮어씁니다.
sticky
실행 가능성, 지속성, 발견 가능성, 미래 참조 가치를 기준으로 생각의 "점착성"을 평가합니다.
"이 아이디어가 매력적인가요?"라는 질문을 던지세요.
evaluateInsight
통찰력이나 생각의 장기적 가치와 중요성을 평가합니다.
"이 통찰력이 장기적으로 가치가 있나요?"라는 질문을 던지세요.
📂 파일 시스템 도구
search_files
메모 디렉토리에서 패턴과 일치하는 파일과 디렉토리를 재귀적으로 검색합니다.
read_note
메모 디렉토리에서 메모 파일의 전체 내용을 읽습니다.
read_multiple_notes
여러 개의 노트 파일의 내용을 동시에 읽습니다.
list_directory
노트에 있는 디렉토리의 내용을 나열합니다.
create_directory
메모에 새 디렉토리를 만듭니다.
버전 기록과 변경 사항은 CHANGELOG.md 파일을 참조하세요.
💡 사용 가능한 프롬프트
이게 원자적이에요?
아이디어를 가장 단순한 독립된 부분으로 나눕니다. 이 프롬프트를 사용하여 큰 아이디어를 더 작은 개념으로 전환합니다. 작은 메모는 다른 메모와 훨씬 더 쉽게 연결할 수 있습니다.
Available Tools
9 toolscreate_directoryB
Create a new directory in your notes. Can create nested directories in one operation. Path should be relative to your notes directory.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Directory path to create, relative to notes directory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool can create nested directories in one operation, which adds useful behavioral context beyond basic creation. However, it fails to disclose critical traits such as permissions needed, error handling (e.g., if path exists), or mutation effects, leaving significant gaps for a tool that modifies the file system.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with two sentences that are front-loaded and efficient. Each sentence earns its place by stating the core action and providing key operational details (nested creation and path relativity), with zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a mutation operation with no annotations and no output schema), the description is incomplete. It covers the basic action and path handling but lacks details on permissions, error cases, or return values. While concise, it doesn't fully compensate for the missing structured data, making it adequate but with clear gaps for safe agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting the single 'path' parameter. The description adds minimal value by reiterating that the path is relative to the notes directory, which is already in the schema. This meets the baseline of 3, as the schema does the heavy lifting without needing extra semantic details from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Create') and resource ('directory in your notes'), and distinguishes it from sibling tools like 'list_directory' or 'write_note'. However, it doesn't explicitly differentiate from potential similar operations (e.g., 'create' vs. 'write' for files), keeping it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating directories in notes, including nested ones, but provides no explicit guidance on when to use this tool versus alternatives (e.g., 'write_note' for files or 'list_directory' for checking existence). It mentions the path should be relative, which offers some context but lacks exclusions or clear alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluateInsightB
Evaluate the long-term value and significance of an insight or thought based on the following criteria:
1. Actionability (1-10): Can this be applied to future work? Is there any information that can be used to apply this thought to future work in different contexts? Is the problem it solves clear?
2. Longevity (1-10): Will this be relevant months or years from now?
3. Findability (1-10): Would this be hard to rediscover if forgotten?
4. Future Reference Value (1-10): How likely are you to need this again?
Insights to ignore:
1. Trivial syntax details
2. Redundant information
| Name | Required | Description | Default |
|---|---|---|---|
| actionability | Yes | ||
| evaluationStep | Yes | ||
| findability | Yes | ||
| futureReferenceValue | Yes | ||
| longevity | Yes | ||
| nextStepNeeded | Yes | ||
| thought | Yes | ||
| totalSteps | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes the evaluation criteria and what to ignore, but it doesn't disclose key behavioral traits such as how the evaluation is performed (e.g., algorithmic vs. manual), what the output looks like, whether it's a read-only or mutating operation, or any rate limits or permissions required. For a tool with 8 parameters and no annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and well-structured, using bullet points to list criteria and insights to ignore, making it easy to scan. It's front-loaded with the main purpose and avoids unnecessary fluff. However, it could be slightly more concise by integrating the criteria list more tightly, but overall, it's efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of 8 parameters, 0% schema description coverage, no annotations, and no output schema, the description is incomplete. It covers the evaluation criteria and exclusions but fails to explain the full parameter set, behavioral aspects, or expected outputs. For a tool with this level of complexity and no structured support, the description should provide more comprehensive guidance to be effective.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning none of the 8 parameters are documented in the schema. The description only partially compensates by listing the four criteria (actionability, longevity, findability, future reference value), which correspond to 4 of the 8 parameters. However, it doesn't explain the other parameters (e.g., 'thought', 'evaluationStep', 'totalSteps', 'nextStepNeeded'), leaving them undocumented. This incomplete coverage reduces the tool's usability.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to evaluate the long-term value and significance of an insight based on specific criteria (actionability, longevity, findability, future reference value). It specifies the verb 'evaluate' and the resource 'insight or thought', making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'log' or 'rollup', which might also involve processing insights, though the evaluation focus is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: for evaluating insights based on long-term value criteria. It includes explicit guidelines on what types of insights to ignore (trivial syntax details, redundant information), which helps in decision-making. However, it doesn't mention when not to use it or name specific alternatives among sibling tools, such as 'log' for simple recording or 'rollup' for summarization.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_directoryA
List the contents of a directory in your notes. Shows all files and directories with clear labels. Specify path relative to your notes directory (e.g., 'Log' or 'Rollups').
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Directory path relative to notes directory (defaults to root notes directory if not provided) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool 'Shows all files and directories with clear labels,' which adds useful behavioral context about the output format. However, it does not mention potential errors (e.g., if the path doesn't exist), permissions, or pagination, leaving gaps for a mutation-free tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose in the first sentence, followed by additional details in a second sentence. Every sentence earns its place by clarifying scope and usage, with zero wasted words, making it highly efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (single optional parameter, no output schema, no annotations), the description is largely complete. It covers purpose, usage, and parameter context adequately. A 5 would require addressing minor gaps like error handling or output details, but it's sufficient for basic directory listing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the 'path' parameter thoroughly. The description adds marginal value by reinforcing the path specification ('Specify path relative to your notes directory') and providing an example ('e.g., 'Log' or 'Rollups''), but does not add significant meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('List the contents of a directory') and resource ('in your notes'), distinguishing it from siblings like read_note (read file content) or search_files (search across files). It specifies the scope ('Shows all files and directories with clear labels'), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('List the contents of a directory in your notes') and includes a usage example ('Specify path relative to your notes directory'). However, it does not explicitly state when not to use it or name alternatives like search_files for filtered searches, which would have earned a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logC
Create or update today's daily log file. Optionally add notes to the log.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | Yes | ||
| tags | Yes | Tags must follow these rules: - Can contain letters, numbers, underscore (_), hyphen (-), and forward slash (/) - Must contain at least one non-numerical character - Cannot contain spaces (use camelCase, PascalCase, snake_case, or kebab-case) - Are case-insensitive (stored as lowercase) Analyze the note's content and identify key themes, concepts, and categories that connect it to other notes. Consider: - Core topics and themes present in the note - Broader domains or areas of knowledge - Types of information (decisions, ideas, research, etc.) - Projects or contexts that might want to reference this later Do not force tags - only add ones that naturally emerge from the content and would help build meaningful connections between notes. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'create or update' but doesn't clarify what happens if a log already exists, whether updates are destructive or additive, or any permissions, rate limits, or error handling. The description adds minimal context beyond the basic operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the core purpose in the first sentence. The second sentence adds optional functionality without redundancy. Both sentences earn their place by clarifying the tool's scope, though it could be slightly more structured (e.g., by explicitly stating parameters).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 required parameters, no annotations, no output schema, and 50% schema coverage, the description is incomplete. It doesn't explain what the tool returns, how errors are handled, or the full behavioral context for a mutation tool. The description alone is inadequate for safe and effective use by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50%, with the 'tags' parameter well-documented in the schema but 'notes' lacking description. The tool description adds no parameter semantics beyond what's in the schema—it mentions 'optionally add notes' but doesn't explain the 'notes' parameter's purpose or format. The baseline is 3 because the schema covers half the parameters, but the description doesn't compensate for the gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Create or update today's daily log file. Optionally add notes to the log.' This specifies the verb (create/update), resource (today's daily log file), and optional functionality (add notes). It distinguishes from siblings like 'write_note' by focusing on a daily log file rather than general notes, though it doesn't explicitly contrast with all siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose 'log' over 'write_note' or other sibling tools like 'create_directory' or 'search_files', nor does it specify prerequisites or exclusions. Usage is implied only by the tool's name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_multiple_notesA
Read the contents of multiple note files simultaneously. Specify paths relative to your notes directory (e.g., ['Log/2023-01-01.md', 'Rollups/2023-01-01-rollup.md']). Returns each file's content with its path as a reference.
| Name | Required | Description | Default |
|---|---|---|---|
| paths | Yes | Array of paths to note files, relative to your notes directory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the action (reading multiple files) and the return format (content with paths), which is useful. However, it lacks details on error handling (e.g., what happens if a file doesn't exist), performance implications (e.g., rate limits or size constraints), or permissions required, leaving gaps in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose in the first sentence, followed by specific usage details and return information. Every sentence adds essential value without redundancy, making it efficient and well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (reading multiple files) and no output schema, the description adequately covers the basic operation and return format. However, it lacks details on error cases, performance limits, or how it interacts with sibling tools, which could be important for complete contextual understanding in a notes management system.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the schema already documents the single parameter 'paths' thoroughly. The description adds value by providing an example (e.g., ['Log/2023-01-01.md', 'Rollups/2023-01-01-rollup.md']) and clarifying that paths are relative to the notes directory, enhancing understanding beyond the schema's basic definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Read the contents') and resource ('multiple note files simultaneously'), distinguishing it from sibling tools like 'read_note' (singular) and 'search_files' (searching rather than direct reading). It precisely communicates the tool's function without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by specifying that paths are relative to the notes directory and giving examples, which helps users understand when to use this tool. However, it does not explicitly state when to use this versus alternatives like 'read_note' for single files or 'search_files' for finding files, missing explicit guidance on exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_noteA
Read the complete contents of a note file from your notes directory. Specify the path relative to your notes directory (e.g., 'Log/2023-01-01.md'). Returns the full text content of the note file.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | The path to the note file, relative to your notes directory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses the return behavior ('Returns the full text content of the note file') and path specification requirement. However, it doesn't mention error handling (e.g., what happens if file doesn't exist), permissions, or file format constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste. First sentence states purpose and input, second sentence states output. Every element earns its place, and the description is appropriately sized for a simple read operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with 100% schema coverage and no output schema, the description is mostly complete. It covers purpose, input specification with example, and return value. The main gap is lack of error handling information, which would be helpful given no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the single 'path' parameter. The description adds a helpful example ('e.g., 'Log/2023-01-01.md'') but doesn't provide additional semantic meaning beyond what the schema states. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Read the complete contents'), resource ('a note file from your notes directory'), and scope ('complete contents'). It distinguishes from siblings like 'read_multiple_notes' (single vs multiple) and 'write_note' (read vs write).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use this tool ('Read the complete contents of a note file') and implies when not to use it (for multiple notes, use 'read_multiple_notes'; for writing, use 'write_note'). However, it doesn't explicitly name alternatives or provide exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rollupA
Synthesize my daily note to create an organized rollup of the most important notes with clear categories, connections, and action items. Optionally specify a date (YYYY-MM-DD). Only include notes that actually add long-term value. If you are unsure, call the /evaluateInsight tool to evaluate the long-term value of the thought. If you do not have enough information, stop and ask the user for more information. It is better to not log anything than log something that is not useful.
| Name | Required | Description | Default |
|---|---|---|---|
| accomplishments | Yes | A list of accomplishments. Each accomplishment should be a short description of the work done in the day so that it can answer the question 'what did you do all day?' | |
| date | No | ||
| insights | Yes | A list of insights. Each insight should be a long-term storage. Things like new knowledge gained. Do not force insights - only add ones that naturally emerge from the content and would help build meaningful connections between notes. | |
| todos | No | A list of todos. Each todo should be a short description of the task to be done. A todo should be actionable. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses behavioral traits like quality filtering ('only include notes that add long-term value'), optional actions ('call /evaluateInsight'), and error handling ('stop and ask the user'). However, it doesn't cover potential side effects, rate limits, or authentication needs, leaving gaps for a mutation-like tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with four sentences, each adding value: purpose, quality criteria, alternative tool reference, and error handling. It's front-loaded with the core purpose. However, some phrasing could be tighter, such as 'It is better to not log anything than log something that is not useful,' which is slightly redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is moderately complete. It covers purpose, usage guidelines, and some behavioral aspects but lacks details on output format, error responses, or system constraints. For a tool with 4 parameters and mutation-like behavior, more contextual information would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, with clear descriptions for 'accomplishments', 'insights', and 'todos'. The description adds minimal parameter semantics beyond the schema, only mentioning 'Optionally specify a date (YYYY-MM-DD)' for the 'date' parameter. Since schema coverage is high, the baseline is 3, and the description provides slight additional context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Synthesize my daily note to create an organized rollup of the most important notes with clear categories, connections, and action items.' It specifies the verb 'synthesize' and resource 'daily note,' with output details. However, it doesn't explicitly differentiate from siblings like 'log' or 'write_note' beyond mentioning '/evaluateInsight' as an alternative for evaluation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: 'Only include notes that actually add long-term value' and references '/evaluateInsight' for uncertain cases. It also advises to 'stop and ask the user for more information' if needed. However, it lacks explicit when-not-to-use guidance or comparisons to all sibling tools (e.g., vs. 'log' or 'write_note').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_filesA
Recursively search for files and directories matching a pattern in your notes directory. The search is case-insensitive and matches partial names. Returns full paths to all matching items. Great for finding notes when you don't know their exact location.
| Name | Required | Description | Default |
|---|---|---|---|
| excludePatterns | No | Glob patterns to exclude from search results | |
| pattern | Yes | The pattern to search for in file and directory names |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does well by disclosing key behavioral traits: it's a read-only search (implied by 'search'), recursive, case-insensitive, matches partial names, and returns full paths. It doesn't mention rate limits, permissions, or error handling, but covers the core operation adequately for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence covers the core functionality, the second adds behavioral details, and the third provides usage context. Every sentence earns its place with no wasted words, making it efficient and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (search with two parameters), no annotations, and no output schema, the description is fairly complete: it explains what the tool does, how it behaves, and when to use it. It lacks details on output format beyond 'full paths' (e.g., structure or pagination) and doesn't cover edge cases, but it's sufficient for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters (pattern and excludePatterns). The description adds some context by mentioning 'pattern' is matched in names and search is 'case-insensitive' and 'partial', but doesn't provide additional syntax or format details beyond what the schema implies. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('recursively search for files and directories') and resources ('in your notes directory'), distinguishing it from siblings like list_directory (which lists without searching) or read_note (which reads specific files). It explicitly mentions what it returns ('full paths to all matching items').
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('Great for finding notes when you don't know their exact location'), which implicitly differentiates it from tools like read_note (for known files) or list_directory (for browsing). However, it doesn't explicitly state when not to use it or name alternatives like evaluateInsight or rollup, which might serve different search purposes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
write_noteC
Create a new note or overwrite an existing note with content. Path should be relative to your notes directory. Optionally include tags that will be merged with any existing tags in the note.
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content to write to the note | |
| path | Yes | Path where the note should be saved, relative to notes directory | |
| tags | No | Tags must follow these rules: - Can contain letters, numbers, underscore (_), hyphen (-), and forward slash (/) - Must contain at least one non-numerical character - Cannot contain spaces (use camelCase, PascalCase, snake_case, or kebab-case) - Are case-insensitive (stored as lowercase) Tags to add to the note's frontmatter. Will be merged with existing tags if present. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only partially discloses behavior. It states the tool can create or overwrite notes and merge tags, but doesn't cover permissions, error handling, or response format. This is inadequate for a mutation tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and efficiently covers key points in two sentences without redundancy. Every sentence adds necessary information, making it appropriately sized and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on permissions, error cases, response format, and how overwriting interacts with existing data beyond tags, leaving significant gaps for agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents parameters. The description adds minimal value by clarifying tag merging behavior and path relativity, but doesn't provide additional syntax or format details beyond what the schema already specifies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a new note or overwrite an existing note') and resource ('note with content'), distinguishing it from read operations like read_note. However, it doesn't explicitly differentiate from other write-related siblings like create_directory or log, which slightly reduces specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. The description mentions path relativity and tag merging, but lacks context on prerequisites, error conditions, or comparisons to siblings like create_directory or log, leaving usage decisions ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v1.0.0- First observed
create_directory - First observed
evaluateInsight - First observed
list_directory - First observed
log - First observed
read_multiple_notes - First observed
read_note - First observed
rollup - First observed
search_files - First observed
write_note
TDQS
Scored across 9 tools
Most tools have distinct purposes, such as create_directory for directory creation, read_note for reading single files, and rollup for synthesizing daily notes. However, there is some overlap between read_note and read_multiple_notes, as both handle reading files, which could cause minor confusion, but their descriptions clarify the distinction (single vs. multiple files).
The naming conventions are mixed, with most tools using snake_case (e.g., create_directory, list_directory) and one using camelCase (evaluateInsight). This inconsistency reduces predictability, but the names are still readable and generally follow a verb_noun pattern, except for evaluateInsight which deviates in style.
With 9 tools, the count is well-scoped for a notes management server, covering core operations like creating, reading, writing, listing, searching, and synthesizing notes. Each tool serves a clear purpose, and there is no bloat or missing essential functions, making the set appropriately sized for the domain.
The tool set provides comprehensive coverage for notes management, including CRUD-like operations (create, read, write), directory handling, searching, and advanced features like rollup and insight evaluation. A minor gap exists in update operations for notes or directories, as write_note only allows overwriting, but agents can work around this with existing tools.
Maintenance
Related MCP Connectors
Personal context for every AI: search, read, and write back to your private Markdown library.
MCP-native notes and memory for ChatGPT, Claude, and other AI tools.
A self-improving memory layer. Your memory, notes, tasks and goals, remembered everywhere.
AI research library. Save, organise and reuse notes and webpages as clean markdown context.
Related MCP Servers
- AlicenseAqualityDmaintenanceA personal knowledge management system built on the Model Context Protocol that transforms daily notes into organized, searchable knowledge.911 npmMIT
- AlicenseAqualityDmaintenanceA Model Context Protocol plugin that helps AI assistants maintain persistent project context through structured markdown files, providing a systematic approach to tracking project goals, decisions, progress, and patterns.317 npm16MIT
- AlicenseNot gradedqualityDmaintenanceA personal knowledge management MCP server that enables capturing daily notes, meeting summaries, and ideas through Claude, with full-text search, git sync, and git activity tracking across projects.7 npm2MIT
- AlicenseNot gradedqualityCmaintenanceAn AI-optimized knowledge management system that provides semantic search, memory storage, and intelligent deduplication through the Model Context Protocol (MCP).96 npm2MIT