Cursor10x MCP
커서10x 메모리 시스템
MCP(Model Context Protocol)를 사용하는 Cursor를 위한 포괄적인 메모리 시스템입니다.
🚀 CURSOR10X 시스템 발표 🚀
AI 기반 자율 시스템으로 개발 프로세스를 혁신하세요
🔥 Cursor10x 메모리 시스템이 이제 완전한 Cursor10x 플랫폼의 일부가 되었습니다! 🔥
GitHub 에서 다음과 같은 완전한 자율 개발 생태계를 확인해 보세요.
📋 작업 관리 시스템 - 단계별 작업으로 안내되는 구현 🔄 자율 메모리 - 전체 프로젝트를 기억하는 컨텍스트 인식 AI 📊 프로젝트 청사진 - 귀하의 사양에 맞게 생성된 완전한 기술 아키텍처 📁 파일/폴더 아키텍처 - 모범 사례를 통해 최적화된 프로젝트 구조 📘 구현 가이드 - 모든 파일 및 구성 요소에 대한 포괄적인 문서 📝 세부 작업 - 프로젝트 시작부터 완료까지 완전한 워크플로 🔍 벡터 기반 검색 - 코드베이스 및 대화에서 의미 검색 🧩 코드 인덱싱 - 코드 구조의 자동 감지 및 인덱싱 🔎 의미 코드 검색 - 정확한 일치가 아닌 의미로 관련 코드 찾기 🤖 자동 코드 분석 - 컨텍스트를 사용하여 함수, 클래스 및 변수 추출
Cursor10x 시스템 전체가 이미 구현되어 있고, 파일 아키텍처, 구현 가이드, 전체 작업 시퀀스가 포함된 완벽한 프로젝트 청사진을 생성하세요!
개요
Cursor10x 메모리 시스템은 AI 보조원(특히 Claude)을 위한 영구 메모리 계층을 생성하여 다음을 보관하고 회상할 수 있도록 합니다.
최근 메시지 및 대화 기록
현재 작업 중인 활성 파일
중요한 프로젝트 이정표 및 결정
기술 요구 사항 및 사양
행동과 사건의 연대순 순서(에피소드)
코드베이스의 코드 조각 및 구조
벡터 임베딩을 기반으로 한 의미적으로 유사한 콘텐츠
의미적 유사성을 통한 관련 코드 조각
함수와 변수 관계가 있는 파일 구조
이 메모리 시스템은 상태 비저장 AI 상호작용과 지속적인 개발 워크플로 간의 격차를 해소하여 보다 생산적이고 상황에 맞는 지원이 가능하도록 합니다.
Related MCP server: Mnemoverse Memory
시스템 아키텍처
메모리 시스템은 4가지 핵심 구성 요소로 구성됩니다.
MCP 서버 : 도구를 등록하고 요청을 처리하기 위해 모델 컨텍스트 프로토콜을 구현합니다.
메모리 데이터베이스 : 세션 전반에 걸쳐 영구 저장을 위해 Turso 데이터베이스를 사용합니다.
메모리 하위 시스템 : 메모리를 고유한 목적을 가진 특수 시스템으로 구성합니다.
벡터 임베딩 : 의미 검색을 위해 텍스트와 코드를 숫자 표현으로 변환합니다.
메모리 유형
시스템은 4가지 보완적 메모리 유형을 구현합니다.
단기 기억(STM)
최근 메시지와 활성 파일을 저장합니다.
현재 상호작용에 대한 즉각적인 맥락을 제공합니다.
최신성과 중요도에 따라 자동으로 우선순위를 지정합니다.
장기 기억(LTM)
이정표 및 결정과 같은 영구적인 프로젝트 정보를 저장합니다.
건축 및 디자인 맥락을 유지합니다.
중요도가 높은 정보를 무기한 보존합니다.
에피소드 기억
사건의 연대순 순서를 기록합니다
동작 간의 인과 관계를 유지합니다.
프로젝트 내역에 대한 시간적 맥락을 제공합니다.
의미 기억
메시지, 파일 및 코드 조각의 벡터 임베딩을 저장합니다.
의미적 유사성을 기반으로 콘텐츠 검색을 활성화합니다.
문맥적 검색을 위해 코드 구조를 자동으로 인덱싱합니다.
코드 구성 요소 간의 관계를 추적합니다.
코드베이스 전반에 걸쳐 유사성 기반 검색을 제공합니다.
특징
지속적인 컨텍스트 : 여러 세션에서 대화 및 프로젝트 컨텍스트를 유지합니다.
중요도 기반 저장소 : 구성 가능한 중요도 수준에 따라 정보의 우선순위를 지정합니다.
다차원 기억 : 단기, 장기, 에피소드 및 의미 기억 시스템을 결합합니다.
종합 검색 : 모든 메모리 하위 시스템의 통합된 컨텍스트를 제공합니다.
상태 모니터링 : 내장된 진단 및 상태 보고 기능 포함
배너 생성 : 대화 시작을 위한 정보성 컨텍스트 배너를 생성합니다.
데이터베이스 지속성 : 자동 스키마 생성을 통해 모든 메모리 데이터를 Turso 데이터베이스에 저장합니다.
벡터 임베딩 : 유사성 검색을 위해 텍스트와 코드의 수치적 표현을 생성합니다.
고급 벡터 스토리지 : 효율적인 임베딩 스토리지를 위해 Turso의 F32_BLOB 및 벡터 함수를 활용합니다.
ANN 검색 : 빠른 유사도 매칭을 위한 근사 최근접 이웃 검색 지원
코드 인덱싱 : 코드 구조(함수, 클래스, 변수)를 자동으로 감지하고 인덱싱합니다.
의미 검색 : 정확한 텍스트 일치보다는 의미에 따라 관련 콘텐츠를 찾습니다.
관련성 점수 : 현재 쿼리와의 관련성에 따라 컨텍스트 항목을 순위 매깁니다.
코드 구조 감지 : 여러 언어에서 코드 구성 요소를 식별하고 추출합니다.
자동 임베딩 생성 : 인덱스된 콘텐츠에 대한 벡터 임베딩을 자동으로 생성합니다.
교차 참조 검색 : 다양한 파일 및 구성 요소에서 관련 코드를 찾습니다.
설치
필수 조건
Node.js 18 이상
npm 또는 yarn 패키지 관리자
Turso 데이터베이스 계정
설정 단계
Turso 데이터베이스 구성:
지엑스피1
또는 Turso 에 방문하여 가입하고 데이터베이스 생성 및 자격 증명을 받을 수 있습니다. 무료 플랜으로도 프로젝트 메모리를 충분히 확보할 수 있습니다.
커서 MCP 구성:
프로젝트 디렉토리의 .cursor/mcp.json 데이터베이스 URL과 turso 인증 토큰으로 업데이트합니다.
{
"mcpServers": {
"cursor10x-mcp": {
"command": "npx",
"args": ["cursor10x-mcp"],
"enabled": true,
"env": {
"TURSO_DATABASE_URL": "your-turso-database-url",
"TURSO_AUTH_TOKEN": "your-turso-auth-token"
}
}
}
}도구 문서
시스템 도구
mcp_cursor10x_initConversation
사용자 메시지 저장, 배너 생성, 컨텍스트 검색을 한 번에 수행하여 대화를 초기화합니다. 이 통합 도구를 사용하면 각 대화 시작 시 별도의 generateBanner, getComprehensiveContext, storeUserMessage 호출이 필요 없습니다.
매개변수:
content(문자열, 필수): 사용자 메시지의 내용importance(문자열, 선택 사항): 중요도 수준("낮음", "보통", "높음", "중요"), 기본값은 "낮음"입니다.metadata(객체, 선택 사항): 메시지에 대한 추가 메타데이터
보고:
두 개의 섹션으로 구성된 객체:
display: 사용자에게 표시될 배너를 포함합니다.internal: 에이전트 사용에 대한 포괄적인 컨텍스트를 포함합니다.
예:
// Initialize a conversation
const result = await mcp_cursor10x_initConversation({
content: "I need to implement a login system for my app",
importance: "medium"
});
// Result: {
// "status": "ok",
// "display": {
// "banner": {
// "status": "ok",
// "memory_system": "active",
// "mode": "turso",
// "message_count": 42,
// "active_files_count": 3,
// "last_accessed": "4/15/2023, 2:30:45 PM"
// }
// },
// "internal": {
// "context": { ... comprehensive context data ... },
// "messageStored": true,
// "timestamp": 1681567845123
// }
// }mcp_cursor10x_endConversation
여러 작업을 하나의 호출로 결합하여 대화를 종료합니다. 즉, 어시스턴트의 최종 메시지를 저장하고, 완료한 내용에 대한 이정표를 기록하고, 에피소드를 에피소드 메모리에 기록합니다. 이 통합 도구는 각 대화 종료 시 storeAssistantMessage, storeMilestone, recordEpisode를 별도로 호출할 필요성을 대체합니다.
매개변수:
content(문자열, 필수): 보조자의 최종 메시지 내용milestone_title(문자열, 필수): 기록할 마일스톤의 제목milestone_description(문자열, 필수): 달성된 내용에 대한 설명importance(문자열, 선택 사항): 중요도 수준("낮음", "보통", "높음", "중요"), 기본값은 "보통"입니다.metadata(객체, 선택 사항): 모든 레코드에 대한 추가 메타데이터
보고:
각 작업의 상태와 결과가 있는 객체
예:
// End a conversation with finalization steps
const result = await mcp_cursor10x_endConversation({
content: "I've implemented the authentication system with JWT tokens as requested",
milestone_title: "Authentication Implementation",
milestone_description: "Implemented secure JWT-based authentication with refresh tokens",
importance: "high"
});
// Result: {
// "status": "ok",
// "results": {
// "assistantMessage": {
// "stored": true,
// "timestamp": 1681568500123
// },
// "milestone": {
// "title": "Authentication Implementation",
// "stored": true,
// "timestamp": 1681568500123
// },
// "episode": {
// "action": "completion",
// "stored": true,
// "timestamp": 1681568500123
// }
// }
// }mcp_cursor10x_checkHealth
메모리 시스템과 데이터베이스 연결 상태를 점검합니다.
매개변수:
필요 없음
보고:
상태 및 진단 정보가 있는 객체
예:
// Check memory system health
const health = await mcp_cursor10x_checkHealth({});
// Result: {
// "status": "ok",
// "mode": "turso",
// "message_count": 42,
// "active_files_count": 3,
// "current_directory": "/users/project",
// "timestamp": "2023-04-15T14:30:45.123Z"
// }mcp_cursor10x_getMemoryStats
메모리 시스템에 대한 자세한 통계를 검색합니다.
매개변수:
필요 없음
보고:
포괄적인 메모리 통계를 포함하는 객체
예:
// Get memory statistics
const stats = await mcp_cursor10x_getMemoryStats({});
// Result: {
// "status": "ok",
// "stats": {
// "message_count": 42,
// "active_file_count": 3,
// "milestone_count": 7,
// "decision_count": 12,
// "requirement_count": 15,
// "episode_count": 87,
// "oldest_memory": "2023-03-10T09:15:30.284Z",
// "newest_memory": "2023-04-15T14:30:45.123Z"
// }
// }mcp_cursor10x_getComprehensiveContext
단기 기억, 장기 기억, 에피소드 기억을 결합하여 모든 기억 하위 시스템에서 통합된 맥락을 검색합니다.
매개변수:
필요 없음
보고:
모든 메모리 시스템의 통합된 컨텍스트를 갖춘 객체
예:
// Get comprehensive context
const context = await mcp_cursor10x_getComprehensiveContext({});
// Result: {
// "status": "ok",
// "context": {
// "shortTerm": {
// "recentMessages": [...],
// "activeFiles": [...]
// },
// "longTerm": {
// "milestones": [...],
// "decisions": [...],
// "requirements": [...]
// },
// "episodic": {
// "recentEpisodes": [...]
// },
// "system": {
// "healthy": true,
// "timestamp": "2023-04-15T14:30:45.123Z"
// }
// }
// }단기 기억 도구
mcp_cursor10x_storeUserMessage
단기 기억 시스템에 사용자 메시지를 저장합니다.
매개변수:
content(문자열, 필수): 메시지 내용importance(문자열, 선택 사항): 중요도 수준("낮음", "보통", "높음", "중요"), 기본값은 "낮음"입니다.metadata(객체, 선택 사항): 메시지에 대한 추가 메타데이터
보고:
상태 및 타임스탬프가 있는 객체
예:
// Store a user message
const result = await mcp_cursor10x_storeUserMessage({
content: "We need to implement authentication for our API",
importance: "high",
metadata: {
topic: "authentication",
priority: 1
}
});
// Result: {
// "status": "ok",
// "timestamp": 1681567845123
// }mcp_cursor10x_storeAssistantMessage
단기 기억 시스템에 보조 메시지를 저장합니다.
매개변수:
content(문자열, 필수): 메시지 내용importance(문자열, 선택 사항): 중요도 수준("낮음", "보통", "높음", "중요"), 기본값은 "낮음"입니다.metadata(객체, 선택 사항): 메시지에 대한 추가 메타데이터
보고:
상태 및 타임스탬프가 있는 객체
예:
// Store an assistant message
const result = await mcp_cursor10x_storeAssistantMessage({
content: "I recommend implementing JWT authentication with refresh tokens",
importance: "medium",
metadata: {
topic: "authentication",
contains_recommendation: true
}
});
// Result: {
// "status": "ok",
// "timestamp": 1681567870456
// }mcp_cursor10x_trackActiveFile
사용자가 액세스하거나 수정하는 활성 파일을 추적합니다.
매개변수:
filename(문자열, 필수): 추적 중인 파일의 경로action(문자열, 필수): 파일에 수행되는 작업(열기, 편집, 닫기 등)metadata(객체, 선택 사항): 추적 이벤트에 대한 추가 메타데이터
보고:
상태, 파일 이름, 작업 및 타임스탬프가 있는 객체
예:
// Track an active file
const result = await mcp_cursor10x_trackActiveFile({
filename: "src/auth/jwt.js",
action: "edit",
metadata: {
changes: "Added refresh token functionality"
}
});
// Result: {
// "status": "ok",
// "filename": "src/auth/jwt.js",
// "action": "edit",
// "timestamp": 1681567900789
// }mcp_cursor10x_getRecentMessages
단기 메모리에서 최근 메시지를 검색합니다.
매개변수:
limit(숫자, 선택 사항): 검색할 최대 메시지 수, 기본값은 10입니다.importance(문자열, 선택 사항): 중요도 수준별 필터링
보고:
상태와 메시지 배열을 포함하는 객체
예:
// Get recent high importance messages
const messages = await mcp_cursor10x_getRecentMessages({
limit: 5,
importance: "high"
});
// Result: {
// "status": "ok",
// "messages": [
// {
// "id": 42,
// "role": "user",
// "content": "We need to implement authentication for our API",
// "created_at": "2023-04-15T14:30:45.123Z",
// "importance": "high",
// "metadata": {"topic": "authentication", "priority": 1}
// },
// ...
// ]
// }mcp_cursor10x_getActiveFiles
단기 메모리에서 활성 파일을 검색합니다.
매개변수:
limit(숫자, 선택 사항): 검색할 최대 파일 수, 기본값은 10입니다.
보고:
상태와 활성 파일의 배열을 포함하는 객체
예:
// Get recent active files
const files = await mcp_cursor10x_getActiveFiles({
limit: 3
});
// Result: {
// "status": "ok",
// "files": [
// {
// "id": 15,
// "filename": "src/auth/jwt.js",
// "last_accessed": "2023-04-15T14:30:45.123Z",
// "metadata": {"changes": "Added refresh token functionality"}
// },
// ...
// ]
// }장기 기억 도구
mcp_cursor10x_storeMilestone
장기 메모리에 프로젝트 이정표를 저장합니다.
매개변수:
title(문자열, 필수): 마일스톤의 제목description(문자열, 필수): 이정표에 대한 설명importance(문자열, 선택 사항): 중요도 수준, 기본값은 "중간"입니다.metadata(객체, 선택 사항): 마일스톤에 대한 추가 메타데이터
보고:
상태, 제목 및 타임스탬프가 있는 객체
예:
// Store a project milestone
const result = await mcp_cursor10x_storeMilestone({
title: "Authentication System Implementation",
description: "Implemented JWT authentication with refresh tokens and proper error handling",
importance: "high",
metadata: {
version: "1.0.0",
files_affected: ["src/auth/jwt.js", "src/middleware/auth.js"]
}
});
// Result: {
// "status": "ok",
// "title": "Authentication System Implementation",
// "timestamp": 1681568000123
// }mcp_cursor10x_storeDecision
장기 메모리에 프로젝트 결정을 저장합니다.
매개변수:
title(문자열, 필수): 결정의 제목content(문자열, 필수): 결정 내용reasoning(문자열, 선택 사항): 결정의 근거importance(문자열, 선택 사항): 중요도 수준, 기본값은 "중간"입니다.metadata(객체, 선택 사항): 결정에 대한 추가 메타데이터
보고:
상태, 제목 및 타임스탬프가 있는 객체
예:
// Store a project decision
const result = await mcp_cursor10x_storeDecision({
title: "JWT for Authentication",
content: "Use JWT tokens for API authentication with refresh token rotation",
reasoning: "JWTs provide stateless authentication with good security and performance characteristics",
importance: "high",
metadata: {
alternatives_considered: ["Session-based auth", "OAuth2"],
decision_date: "2023-04-15"
}
});
// Result: {
// "status": "ok",
// "title": "JWT for Authentication",
// "timestamp": 1681568100456
// }mcp_cursor10x_storeRequirement
장기 메모리에 프로젝트 요구 사항을 저장합니다.
매개변수:
title(문자열, 필수): 요구 사항의 제목content(문자열, 필수): 요구 사항의 내용importance(문자열, 선택 사항): 중요도 수준, 기본값은 "중간"입니다.metadata(객체, 선택 사항): 요구 사항에 대한 추가 메타데이터
보고:
상태, 제목 및 타임스탬프가 있는 객체
예:
// Store a project requirement
const result = await mcp_cursor10x_storeRequirement({
title: "Secure Authentication",
content: "System must implement secure authentication with password hashing, rate limiting, and token rotation",
importance: "critical",
metadata: {
source: "security audit",
compliance: ["OWASP Top 10", "GDPR"]
}
});
// Result: {
// "status": "ok",
// "title": "Secure Authentication",
// "timestamp": 1681568200789
// }에피소드 기억 도구
mcp_cursor10x_recordEpisode
에피소드(행동)를 에피소드 기억에 기록합니다.
매개변수:
actor(문자열, 필수): 작업을 수행하는 액터(사용자, 보조, 시스템)action(문자열, 필수): 수행되는 작업 유형content(문자열, 필수): 작업의 내용 또는 세부 정보importance(문자열, 선택 사항): 중요도 수준, 기본값은 "낮음"입니다.context(문자열, 선택 사항): 에피소드에 대한 컨텍스트
보고:
상태, 행위자, 작업 및 타임스탬프가 있는 객체
예:
// Record an episode
const result = await mcp_cursor10x_recordEpisode({
actor: "assistant",
action: "implementation",
content: "Created JWT authentication middleware with token verification",
importance: "medium",
context: "authentication"
});
// Result: {
// "status": "ok",
// "actor": "assistant",
// "action": "implementation",
// "timestamp": 1681568300123
// }mcp_cursor10x_getRecentEpisodes
에피소드 메모리에서 최근 에피소드를 검색합니다.
매개변수:
limit(숫자, 선택 사항): 검색할 최대 에피소드 수, 기본값은 10입니다.context(문자열, 선택 사항): 컨텍스트로 필터링
보고:
상태와 에피소드 배열이 있는 객체
예:
// Get recent episodes in the authentication context
const episodes = await mcp_cursor10x_getRecentEpisodes({
limit: 5,
context: "authentication"
});
// Result: {
// "status": "ok",
// "episodes": [
// {
// "id": 87,
// "actor": "assistant",
// "action": "implementation",
// "content": "Created JWT authentication middleware with token verification",
// "timestamp": "2023-04-15T14:45:00.123Z",
// "importance": "medium",
// "context": "authentication"
// },
// ...
// ]
// }벡터 기반 메모리 도구
mcp_cursor10x_manageVector
저장, 검색, 업데이트, 삭제 작업을 통해 벡터 임베딩을 관리하기 위한 통합 도구입니다.
매개변수:
operation(문자열, 필수): 수행할 작업("store", "search", "update", "delete")contentId(숫자, 선택 사항): 이 벡터가 나타내는 콘텐츠의 ID(저장, 업데이트, 삭제)contentType(문자열, 선택 사항): 콘텐츠 유형("메시지", "파일", "스니펫" 등)vector(배열, 선택 사항): 숫자 배열(저장, 업데이트용) 또는 쿼리 벡터(검색용) 형태의 벡터 데이터vectorId(숫자, 선택 사항): 업데이트 또는 삭제할 벡터의 IDlimit(숫자, 선택 사항): 검색 작업에 대한 최대 결과 수, 기본값은 10입니다.threshold(숫자, 선택 사항): 검색 작업에 대한 유사도 임계값, 기본값은 0.7입니다.metadata(객체, 선택 사항): 벡터에 대한 추가 정보
보고:
상태 및 작업 결과가 있는 객체
예:
// Store a vector embedding
const result = await mcp_cursor10x_manageVector({
operation: "store",
contentId: 42,
contentType: "message",
vector: [0.1, 0.2, 0.3, ...], // 128-dimensional vector
metadata: {
topic: "authentication",
language: "en"
}
});
// Result: {
// "status": "ok",
// "operation": "store",
// "vectorId": 15,
// "timestamp": 1681570000123
// }
// Search for similar vectors
const searchResult = await mcp_cursor10x_manageVector({
operation: "search",
vector: [0.1, 0.2, 0.3, ...], // query vector
contentType: "snippet", // optional filter
limit: 5,
threshold: 0.8
});
// Result: {
// "status": "ok",
// "operation": "search",
// "results": [
// {
// "vectorId": 10,
// "contentId": 30,
// "contentType": "snippet",
// "similarity": 0.92,
// "metadata": { ... }
// },
// ...
// ]
// }데이터베이스 스키마
메모리 시스템은 다음의 데이터베이스 테이블을 자동으로 생성하고 유지 관리합니다.
messages: 사용자 및 보조자 메시지를 저장합니다.id: 고유 식별자timestamp: 생성 타임스탬프role: 메시지 역할(사용자/보조자)content: 메시지 내용importance: 중요도 수준archived: 메시지가 보관되었는지 여부
active_files: 파일 활동을 추적합니다id: 고유 식별자filename: 파일 경로action: 마지막으로 수행된 작업last_accessed: 마지막 액세스 타임스탬프
milestones: 기록 프로젝트 이정표id: 고유 식별자title: 마일스톤 제목description: 자세한 설명timestamp: 생성 타임스탬프importance: 중요도 수준
decisions: 상점 프로젝트 결정id: 고유 식별자title: 결정 제목content: 결정 내용reasoning: 결정 추론timestamp: 생성 타임스탬프importance: 중요도 수준
requirements: 프로젝트 요구 사항을 유지합니다.id: 고유 식별자title: 요구사항 제목content: 요구 사항 내용timestamp: 생성 타임스탬프importance: 중요도 수준
episodes: 사건과 행동을 기록합니다id: 고유 식별자timestamp: 생성 타임스탬프actor: 동작을 수행하는 배우action: 동작의 종류content: 작업 세부 정보importance: 중요도 수준context: 액션 컨텍스트
vectors: 의미 검색을 위한 벡터 임베딩을 저장합니다.id: 고유 식별자content_id: 참조된 콘텐츠의 IDcontent_type: 콘텐츠 유형(메시지, 파일, 스니펫)vector: 임베딩 벡터의 이진 표현metadata: 벡터에 대한 추가 메타데이터
code_files: 인덱싱된 코드 파일을 추적합니다.id: 고유 식별자file_path: 파일 경로language: 프로그래밍 언어last_indexed: 마지막 인덱싱 타임스탬프metadata: 추가 파일 메타데이터
code_snippets: 추출된 코드 구조를 저장합니다.id: 고유 식별자file_id: 부모 파일에 대한 참조start_line: 시작 줄 번호end_line: 끝 줄 번호symbol_type: 코드 구조의 유형(함수, 클래스, 변수)content: 코드 조각 내용
예제 워크플로
최적화된 대화 시작
// Initialize conversation with a single tool call
// This replaces the need for three separate calls at the start of the conversation
const result = await mcp_cursor10x_initConversation({
content: "I need help implementing authentication in my React app",
importance: "high"
});
// Display the banner to the user
console.log("Memory System Status:", result.display.banner);
// Use the context internally (do not show to user)
const context = result.internal.context;
// Use context for more informed assistance새 세션 시작(대체 방법)
// Generate a memory banner at the start
mcp_cursor10x_generateBanner({})
// Get comprehensive context
mcp_cursor10x_getComprehensiveContext({})
// Store the user message
mcp_cursor10x_storeUserMessage({
content: "I need help with authentication",
importance: "high"
})사용자 활동 추적
// Track an active file
await mcp_cursor10x_trackActiveFile({
filename: "src/auth/jwt.js",
action: "edit"
});문제 해결
일반적인 문제
데이터베이스 연결 문제
Turso 데이터베이스 URL과 인증 토큰이 올바른지 확인하세요.
Turso 서비스에 대한 네트워크 연결을 확인하세요
방화벽 설정이 연결을 허용하는지 확인하세요.
누락된 데이터
데이터가 적절한 중요도 수준으로 저장되었는지 확인하세요.
검색 쿼리 매개변수(제한, 필터)를 확인하세요.
mcp_cursor10x_checkHealth()로 데이터베이스 상태를 확인하세요.
성능 문제
mcp_cursor10x_getMemoryStats()사용하여 메모리 통계를 모니터링합니다.데이터베이스가 너무 커지면 오래된 데이터를 보관하는 것을 고려하세요.
더욱 구체적인 필터를 사용하여 검색을 최적화합니다.
진단 단계
시스템 상태 확인:
const health = await mcp_cursor10x_checkHealth({}); console.log("System Health:", health);메모리 통계 확인:
const stats = await mcp_cursor10x_getMemoryStats({}); console.log("Memory Stats:", stats);상태 배너 생성:
const banner = await mcp_cursor10x_generateBanner({}); console.log("Memory Banner:", banner);
중요도 수준
메모리에 항목을 저장할 때 적절한 중요도 수준을 사용하세요.
낮음 : 일반 정보, 일상 업무, 일상 대화
매체 : 유용한 컨텍스트, 표준 작업 항목, 정기 기능
높음 : 중요한 결정, 주요 기능, 중요한 아키텍처 요소
중요 : 핵심 아키텍처, 보안 문제, 데이터 무결성 문제
특허
MIT
Available Tools
18 toolscheckHealthB
Checks the health of the memory system and its database
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states what the tool does but doesn't describe how it behaves: no information about what 'health' means, what metrics are checked, whether it performs any operations, what the output format might be, or any error conditions. For a diagnostic tool with zero annotation coverage, this is insufficient.
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 a single, efficient sentence that states the core purpose without unnecessary words. It's appropriately sized for a simple diagnostic tool and front-loads the essential information. Every word earns its place.
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 no annotations, no output schema, and the description provides minimal behavioral context, this is incomplete for a diagnostic tool. The agent knows what to call but not what to expect in return or how the tool behaves. For a health check that could return various status indicators, more context about output format or meaning would be helpful.
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 tool has zero parameters, and schema description coverage is 100%. The description doesn't need to explain parameters, and it correctly doesn't mention any. The baseline for zero parameters with full schema coverage is 4, as there's no parameter information to add beyond what's already documented.
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 ('checks') and resource ('health of the memory system and its database'). It distinguishes from most siblings like 'getMemoryStats' or 'diagnoseVectors' by focusing on overall system health rather than specific metrics or diagnostics. However, it doesn't explicitly differentiate from all potential health-related tools.
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 prerequisites, appropriate contexts, or compare it to siblings like 'getMemoryStats' or 'diagnoseVectors' that might provide related information. The agent must infer usage from the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diagnoseVectorsB
Run diagnostics on the vector storage system to identify issues
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'Run diagnostics' implies a read-only analysis operation, it doesn't specify whether this is a lightweight check or intensive scan, what permissions are required, whether it affects system performance, what format the results take, or if it has rate limits. The description is too vague about the actual behavior beyond the basic purpose.
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 a single, efficient sentence that communicates the core purpose without any wasted words. It's front-loaded with the main action and target, making it immediately clear what the tool does. Every element of the sentence contributes meaningfully to understanding the tool's function.
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 diagnostic tool with no annotations and no output schema, the description is insufficient. It doesn't explain what kind of issues are identified, what the diagnostic output looks like, whether it returns structured data or logs, or how results should be interpreted. Given the complexity of vector storage systems and the lack of structured output information, the description leaves too many open questions about what the tool actually produces.
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 tool has 0 parameters with 100% schema description coverage, so the schema already fully documents the parameter situation. The description appropriately doesn't mention parameters since none exist. This meets the baseline expectation for a parameterless tool, though it doesn't add any additional context about why no parameters are needed.
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 ('Run diagnostics') and target ('on the vector storage system'), with the specific goal 'to identify issues'. It distinguishes from generic health checks like 'checkHealth' by focusing specifically on vector storage. However, it doesn't fully differentiate from 'manageVector' which might also involve vector system operations.
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 like 'checkHealth' (general health) or 'manageVector' (vector management). There's no mention of prerequisites, triggers, or scenarios where this diagnostic should be preferred over other tools. The agent must infer usage context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
endConversationA
Ends a conversation by storing the assistant message, recording a milestone, and logging an episode in one operation
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content of the assistant's final message | |
| importance | No | Importance level (low, medium, high) | medium |
| metadata | No | Optional metadata | |
| milestone_description | Yes | Description of what was accomplished | |
| milestone_title | Yes | Title of the milestone to record |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden of behavioral disclosure. While it mentions three operations performed, it doesn't describe what 'logging an episode' entails, whether this operation is reversible, what permissions might be required, or how errors are handled. For a tool that appears to perform multiple write operations, this is insufficient 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 a single, efficient sentence that front-loads the main purpose and then lists the three operations performed. Every word earns its place with no redundancy or unnecessary elaboration.
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 tool with 5 parameters (3 required), no annotations, and no output schema, the description provides adequate purpose clarity but lacks sufficient behavioral context. It doesn't explain what happens after the conversation ends, what 'logging an episode' means, or what the tool returns. The combination of multiple operations without behavioral details creates gaps in 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 already documents all parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. The baseline of 3 is appropriate when the schema does the heavy lifting for parameter documentation.
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 ('Ends a conversation') and lists the three operations performed (storing assistant message, recording milestone, logging episode). It distinguishes this tool from siblings like storeAssistantMessage, storeMilestone, and recordEpisode by combining these functions into one operation.
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 this tool should be used at the conclusion of a conversation to wrap up multiple tasks simultaneously. It doesn't explicitly state when NOT to use it or name specific alternatives, but the context suggests it's for finalizing conversations rather than intermediate steps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generateBannerB
Generates a banner containing memory system statistics and status
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
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 generates a banner but doesn't disclose behavioral traits such as whether it's read-only or mutative, what format the banner is in, if there are rate limits, or any side effects. This leaves significant gaps in understanding how the tool behaves.
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 a single, efficient sentence that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded, making it easy to understand at a glance.
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 lack of annotations and output schema, the description is incomplete. It doesn't explain what the generated banner looks like, its format, or how it differs from raw data provided by sibling tools. For a tool that outputs information, more context on the output is needed.
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 tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description doesn't add parameter information, but that's appropriate here, as there are no parameters to explain.
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 verb 'generates' and the resource 'banner containing memory system statistics and status', making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'getMemoryStats' or 'getComprehensiveContext', which might provide similar information in different formats.
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 this banner generation is appropriate compared to other tools that retrieve memory statistics or context, leaving the agent without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getActiveFilesC
Retrieves active files from the short-term memory
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of files to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'Retrieves' implying a read operation, but doesn't disclose behavioral traits like permissions needed, rate limits, or what 'active files' entails (e.g., format, freshness). This is a significant gap for a tool with no 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 a single, efficient sentence with zero waste. It's appropriately sized and front-loaded, clearly stating the core purpose without unnecessary elaboration.
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 lack of annotations and output schema, the description is incomplete. It doesn't explain what 'active files' are, their format, or return values, leaving gaps in understanding for a tool that retrieves data from memory.
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 schema description coverage is 100%, so the schema already documents the 'limit' parameter fully. The description adds no additional meaning beyond what the schema provides, such as context on how 'active files' are determined or filtered, resulting in the baseline score.
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 verb ('Retrieves') and resource ('active files from the short-term memory'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'trackActiveFile' or 'getRecentEpisodes', which might have overlapping functionality, preventing 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 provides no guidance on when to use this tool versus alternatives. With siblings like 'getComprehensiveContext' and 'getRecentMessages', there's no indication of context, prerequisites, or exclusions, leaving usage ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getComprehensiveContextC
Retrieves comprehensive context from all memory systems
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Optional query for semantic search to find relevant context |
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 states the tool retrieves context but doesn't clarify whether this is a read-only operation, what permissions might be needed, how results are formatted, or any performance implications (e.g., latency, rate limits). This leaves significant gaps for a tool that presumably accesses multiple systems.
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 a single, efficient sentence that directly states the tool's function without unnecessary words. It is front-loaded with the core action, though it could be slightly more specific to improve clarity without sacrificing brevity.
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 lack of annotations and output schema, the description is incomplete for a tool that retrieves 'comprehensive context.' It doesn't explain what 'comprehensive' means, what systems are involved, the format of returned data, or any limitations, making it inadequate for an agent to understand the full scope and behavior.
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 schema description coverage is 100%, with the single parameter 'query' documented as optional and for semantic search. The description adds no additional meaning beyond this, such as examples of queries or how they influence retrieval. With high schema coverage, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
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 states the action ('Retrieves') and target ('comprehensive context from all memory systems'), which is clear but vague. It doesn't specify what 'comprehensive context' entails or how it differs from sibling tools like getRecentEpisodes or getRecentMessages, leaving room for ambiguity about scope and content.
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 guidance is provided on when to use this tool versus alternatives. With siblings like getRecentEpisodes and getRecentMessages that might retrieve specific subsets of context, the description lacks any indication of appropriate use cases, prerequisites, or exclusions, leaving the agent to guess based on the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getMemoryStatsB
Retrieves statistics about the memory system
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
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 states the tool retrieves statistics, implying a read-only operation, but doesn't specify what statistics are included, format, or any constraints like rate limits or permissions needed. This leaves significant gaps in understanding how the tool behaves.
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 a single, clear sentence that directly states the tool's function without any unnecessary words. It's front-loaded and efficient, making it easy to parse quickly, which is ideal for a tool with no 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 no parameters and no output schema, the description is minimally adequate but lacks depth. It doesn't explain what statistics are retrieved or the return format, which could be important for an agent to use the tool effectively. With no annotations and simple schema, more context 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?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate here, but it could have mentioned if any implicit parameters exist (e.g., time range). Since there are no parameters, a baseline of 4 is applied, as the description doesn't need to compensate for missing schema info.
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 ('Retrieves') and resource ('statistics about the memory system'), making it immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'getActiveFiles' or 'getRecentEpisodes', which prevents 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 provides no guidance on when to use this tool versus alternatives. With sibling tools like 'checkHealth' or 'diagnoseVectors' that might relate to system monitoring, there's no indication of when 'getMemoryStats' is the appropriate choice, leaving usage context unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getRecentEpisodesC
Retrieves recent episodes from the episodic memory
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Filter by context | |
| limit | No | Maximum number of episodes to retrieve |
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 states the tool retrieves data but lacks details on permissions, rate limits, error handling, or what 'recent' means (e.g., time-based vs. count-based). This leaves gaps in understanding how the tool behaves in practice.
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 a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and easy to parse, though it could be slightly more informative without sacrificing brevity.
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 minimal but covers the basic purpose. It lacks details on behavioral traits and output format, which are important for a retrieval tool. However, the schema provides good parameter coverage, making it adequate but with clear gaps in 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 100%, with clear parameter documentation in the input schema. The description adds no additional meaning beyond what the schema provides (e.g., it doesn't explain 'context' filtering further or 'recent' criteria). Baseline 3 is appropriate as the schema handles parameter semantics adequately.
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 ('Retrieves') and resource ('recent episodes from the episodic memory'), making the tool's purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'getRecentMessages' or 'getComprehensiveContext', which might also retrieve memory-related data, leaving some ambiguity about when to choose this specific tool.
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. With siblings like 'getRecentMessages' and 'getComprehensiveContext' that likely handle similar memory retrieval, the agent has no explicit direction on selection criteria, such as based on recency, context filtering, or data type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getRecentMessagesB
Retrieves recent messages from the short-term memory
| Name | Required | Description | Default |
|---|---|---|---|
| importance | No | Filter by importance level (low, medium, high) | |
| limit | No | Maximum number of messages to retrieve |
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 mentions retrieving from 'short-term memory', which implies a read-only operation, but doesn't specify permissions, rate limits, or what 'recent' means (e.g., time frame). This leaves gaps in understanding the tool's behavior beyond basic functionality.
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 a single, efficient sentence that directly states the tool's purpose without any unnecessary words. It is appropriately sized and front-loaded, making it easy to understand at a glance.
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 (2 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks details on usage context, behavioral traits, or output format, leaving room for improvement in 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?
The input schema has 100% description coverage, clearly documenting both parameters (importance filter and limit). The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline score of 3 for adequate coverage without extra value.
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 verb ('retrieves') and resource ('recent messages from the short-term memory'), making the purpose understandable. However, it doesn't distinguish this tool from potential sibling tools like 'getRecentEpisodes' or 'getComprehensiveContext', which might also retrieve memory-related data, so it doesn't reach the highest 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 provides no guidance on when to use this tool versus alternatives like 'getRecentEpisodes' or 'getComprehensiveContext', nor does it mention any prerequisites or exclusions. It simply states what the tool does without contextual usage information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
initConversationC
Initializes a conversation by storing the user message, generating a banner, and retrieving context in one operation
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content of the user message | |
| importance | No | Importance level (low, medium, high) | low |
| metadata | No | Optional metadata for the message |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions behavioral outcomes (storing, generating, retrieving) but lacks critical details: whether this is a write operation (implied by 'storing'), permission requirements, rate limits, or what 'retrieving context' entails. The multi-operation nature suggests complexity that isn't fully disclosed.
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?
Single sentence efficiently conveys the core functionality with zero wasted words. It's front-loaded with the main action ('initializes a conversation') followed by key operations.
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 tool with no annotations, no output schema, and performing multiple operations (store, generate, retrieve), the description is insufficient. It doesn't explain the banner format, what context is retrieved, how results are returned, or error handling. The complexity warrants more disclosure.
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 all 3 parameters. The description adds no parameter-specific information beyond implying 'content' is the user message. This meets the baseline for high schema coverage.
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 ('initializes', 'storing', 'generating', 'retrieving') and identifies the resource ('conversation'). It distinguishes from siblings like 'storeUserMessage' or 'generateBanner' by combining multiple operations, but doesn't explicitly contrast them.
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 like 'storeUserMessage' + 'generateBanner' + 'getComprehensiveContext'. The description implies it's for starting conversations, but lacks context on prerequisites, timing, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manageVectorC
Unified tool for managing vector embeddings with operations for store, search, update, and delete
| Name | Required | Description | Default |
|---|---|---|---|
| contentId | No | ID of the content this vector represents (for store, update, delete) | |
| contentType | No | Type of content (message, file, snippet, etc.) | |
| limit | No | Maximum number of results for search operation | |
| metadata | No | Additional info about the vector (optional) | |
| operation | Yes | Operation to perform (store, search, update, delete) | |
| threshold | No | Similarity threshold for search operation | |
| vector | No | Vector data as array of numbers (for store, update) or query vector (for search) | |
| vectorId | No | ID of the vector to update or delete |
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. While it lists operations, it doesn't describe what 'manage' entails - whether operations are atomic, have side effects, require specific permissions, have rate limits, or what happens on failure. For a multi-operation tool with 8 parameters and no annotation coverage, this is a significant gap.
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 a single, efficient sentence that communicates the core purpose. It's appropriately sized for a multi-operation tool, though it could be slightly more structured by separating operation types or adding brief context.
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 complex tool with 8 parameters, multiple operations, no annotations, and no output schema, the description is inadequate. It doesn't explain return values, error conditions, operation interdependencies, or how this fits within the broader vector management system alongside tools like 'diagnoseVectors'.
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 all parameters thoroughly. The description doesn't add any meaningful parameter semantics beyond what's in the schema - it mentions operations but doesn't clarify parameter dependencies or operation-specific requirements. Baseline 3 is appropriate when 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 this is a 'unified tool for managing vector embeddings' with specific operations listed (store, search, update, delete), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'diagnoseVectors' or explain how this differs from other vector-related operations that might exist in the context.
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 mentions the four operations but provides no guidance on when to use this tool versus alternatives like 'diagnoseVectors' or other sibling tools. There's no indication of prerequisites, constraints, or typical use cases for each operation type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recordEpisodeC
Records an episode (action) in the episodic memory
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Type of action performed | |
| actor | Yes | Actor performing the action (user, assistant, system) | |
| content | Yes | Content or details of the action | |
| context | No | Context for the episode | |
| importance | No | Importance level (low, medium, high) | low |
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 states the tool 'Records an episode', implying a write operation, but doesn't cover critical aspects like permissions needed, whether it's idempotent, error handling, or what happens upon success (e.g., confirmation). This leaves significant gaps for a mutation 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 a single, efficient sentence: 'Records an episode (action) in the episodic memory'. It's front-loaded with the core action and resource, with no wasted words, though it could be slightly more specific to enhance clarity without losing conciseness.
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 as a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what 'episodic memory' entails, how episodes are used, or what the tool returns, leaving the agent with insufficient context for reliable invocation.
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 all 5 parameters (action, actor, content, context, importance) with their types and purposes. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline of 3 for high schema coverage without extra value.
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 states the tool 'Records an episode (action) in the episodic memory', which provides a clear verb ('Records') and resource ('episode in episodic memory'). However, it doesn't distinguish this tool from its siblings like 'storeUserMessage' or 'storeAssistantMessage', which might also record memory-related actions, making the purpose somewhat vague in context.
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 offers no guidance on when to use this tool versus alternatives. With siblings like 'storeUserMessage', 'storeAssistantMessage', and 'storeDecision' that might handle similar memory storage, there's no indication of specific use cases, prerequisites, or exclusions for 'recordEpisode'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
storeAssistantMessageB
Stores an assistant message in the short-term memory
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content of the message | |
| importance | No | Importance level (low, medium, high) | low |
| metadata | No | Optional metadata for the message |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool 'Stores' data, implying a write operation, but doesn't clarify persistence characteristics (e.g., how long messages are retained, storage limits), whether this requires specific permissions, or what happens on success/failure. For a write operation with zero annotation coverage, this leaves significant behavioral gaps.
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 a single, efficient sentence that gets straight to the point with zero wasted words. It's appropriately sized for a simple storage operation and front-loads the essential information without unnecessary elaboration.
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 (write operation with 3 parameters including nested objects) and no annotations or output schema, the description is minimally adequate but incomplete. It identifies what the tool does but lacks crucial context about behavioral traits, usage scenarios, and return values. The 100% schema coverage helps, but for a write operation with no output schema, more behavioral context would be beneficial.
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 all three parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description, which applies here.
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 ('Stores') and the resource ('an assistant message in the short-term memory'), making the purpose immediately understandable. It distinguishes from siblings like 'storeUserMessage' by specifying 'assistant' message type. However, it doesn't fully differentiate from other storage tools like 'storeDecision' or 'storeMilestone' in terms of what kind of content is appropriate for each.
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 like 'storeUserMessage', 'storeDecision', or 'storeMilestone'. There's no mention of prerequisites, appropriate contexts, or exclusions. The agent must infer usage from the tool name alone, which is insufficient for optimal selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
storeDecisionC
Stores a project decision in the long-term memory
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content of the decision | |
| importance | No | Importance level (low, medium, high) | medium |
| metadata | No | Optional metadata for the decision | |
| reasoning | No | Reasoning behind the decision | |
| title | Yes | Title of the decision |
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 states the tool stores data in 'long-term memory', implying persistence, but lacks details on permissions, idempotency, error handling, or what constitutes a 'project decision'. This leaves significant gaps for a mutation 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 a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, making it easy for an agent to parse quickly.
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 doesn't explain what 'long-term memory' entails, how decisions are retrieved or updated, or the implications of storage. Given the complexity and lack of structured data, more context is needed.
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 all 5 parameters. The description adds no additional meaning beyond implying storage of 'project decision' data, which aligns with parameters like 'title' and 'content'. This meets the baseline for high schema coverage.
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 ('Stores') and the resource ('a project decision in the long-term memory'), making the purpose evident. However, it doesn't explicitly differentiate from sibling tools like 'storeMilestone' or 'storeRequirement', which appear to be similar storage operations, preventing 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 provides no guidance on when to use this tool versus alternatives. With sibling tools like 'storeMilestone' and 'storeRequirement' that might serve similar purposes, there's no indication of context, prerequisites, or exclusions to help an agent choose appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
storeMilestoneC
Stores a project milestone in the long-term memory
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes | Description of the milestone | |
| importance | No | Importance level (low, medium, high) | medium |
| metadata | No | Optional metadata for the milestone | |
| title | Yes | Title of the milestone |
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 states the tool stores data in 'long-term memory', implying persistence, but doesn't clarify what 'long-term' entails (e.g., durability, retrieval mechanisms), whether it's a write operation with potential side effects, or any error conditions. For a storage tool with zero 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 a single, efficient sentence that directly states the tool's purpose without any unnecessary words. It's front-loaded with the core action and resource, making it easy to parse quickly. Every part of the sentence earns its place by conveying essential information.
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 a storage operation with no annotations and no output schema, the description is incomplete. It doesn't explain what happens after storage (e.g., success/failure indicators, return values, or how to retrieve the milestone later). For a tool that modifies state, more behavioral context is needed to guide the agent effectively.
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, with clear documentation for all 4 parameters (title, description, importance, metadata). The description adds no additional meaning beyond what the schema provides, such as explaining how parameters interact or their impact on storage. With high schema coverage, the baseline score of 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 action ('Stores') and resource ('a project milestone in the long-term memory'), which is specific and unambiguous. However, it doesn't differentiate from sibling tools like 'storeAssistantMessage', 'storeDecision', or 'storeRequirement', which also store different types of data in memory, so it doesn't fully distinguish its purpose from alternatives.
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 'storeMilestone' over other storage tools like 'storeDecision' or 'storeRequirement', nor does it specify any prerequisites or exclusions for usage. This leaves the agent without context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
storeRequirementC
Stores a project requirement in the long-term memory
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content of the requirement | |
| importance | No | Importance level (low, medium, high) | medium |
| metadata | No | Optional metadata for the requirement | |
| title | Yes | Title of the requirement |
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 states the tool stores data in 'long-term memory', implying persistence, but doesn't cover critical aspects like whether this requires specific permissions, how data is retrieved or updated, potential rate limits, or error handling. For a storage tool with zero annotation coverage, this is a significant gap.
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 a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and appropriately sized for its function, with no wasted content.
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 (storage operation with 4 parameters, no output schema, and no annotations), the description is incomplete. It doesn't explain what 'long-term memory' entails, how to retrieve stored requirements, or potential side effects, making it inadequate for an agent to use effectively without additional context.
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 all parameters (title, content, importance, metadata). The description adds no additional meaning beyond what the schema provides, such as examples or context for parameter use. Baseline 3 is appropriate when 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 action ('Stores') and the resource ('a project requirement in the long-term memory'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'storeAssistantMessage', 'storeUserMessage', 'storeDecision', or 'storeMilestone', which all store different types of data in memory, so it lacks sibling distinction.
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 prerequisites, context for storing requirements, or how it differs from other storage tools like 'storeDecision' or 'storeMilestone', leaving usage ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
storeUserMessageC
Stores a user message in the short-term memory
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Content of the message | |
| importance | No | Importance level (low, medium, high) | low |
| metadata | No | Optional metadata for the message |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'Stores' implies a write operation, it doesn't specify whether this is persistent, reversible, or has side effects. It mentions 'short-term memory' but doesn't explain retention policies, capacity limits, or how this interacts with other memory tools like 'getRecentMessages'.
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 a single, efficient sentence that communicates the core purpose without unnecessary words. It's appropriately sized for a straightforward storage tool and front-loads the essential information.
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 write operation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what happens after storage (e.g., confirmation, error handling), how to retrieve stored messages, or integration with related tools. The mention of 'short-term memory' is vague without operational details.
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 all three parameters thoroughly. The description adds no additional parameter information beyond what's in the schema, maintaining the baseline score for high schema coverage.
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 ('Stores') and resource ('a user message in the short-term memory'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'storeAssistantMessage' or 'storeDecision', but the specificity of 'user message' provides some implicit distinction.
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 like 'storeAssistantMessage' or 'storeDecision', nor does it mention prerequisites or context for usage. It simply states what the tool does without indicating appropriate scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trackActiveFileC
Tracks an active file being accessed by the user
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Action performed on the file (open, edit, close, etc.) | |
| filename | Yes | Path to the file being tracked | |
| metadata | No | Optional metadata for the file |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but is minimal. It implies a logging/monitoring function ('tracks') but doesn't disclose behavioral traits such as whether this is a read-only operation, if it stores data persistently, requires specific permissions, or has side effects like updating a database. The description lacks details on what 'tracks' entails beyond the basic action.
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 a single, straightforward sentence that efficiently states the tool's purpose without unnecessary words. It's front-loaded with the core function, though it could be slightly more informative without losing conciseness.
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 (3 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what the tool returns, how tracking is implemented, or interactions with sibling tools (e.g., 'getActiveFiles' for retrieval). For a tool that likely involves state changes or logging, more context is needed to guide effective 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 all parameters (action, filename, metadata) with clear descriptions. The description adds no additional meaning beyond what the schema provides, such as explaining the relationship between parameters or typical use cases, meeting the baseline for high coverage.
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 states the tool 'tracks an active file being accessed by the user', which provides a basic purpose (verb+resource). However, it's vague about what 'tracks' means operationally and doesn't differentiate from sibling tools like 'getActiveFiles' or 'recordEpisode', which may have overlapping functionality with file tracking or logging.
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 offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context (e.g., real-time monitoring vs. logging), or exclusions, leaving the agent to infer usage from the name and parameters alone.
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. Dates show when Glama detected each change.
18 tool updates
v1.0.0- First observed
checkHealth - First observed
diagnoseVectors - First observed
endConversation - First observed
generateBanner - First observed
getActiveFiles - First observed
getComprehensiveContext - First observed
getMemoryStats - First observed
getRecentEpisodes - First observed
getRecentMessages - First observed
initConversation - First observed
manageVector - First observed
recordEpisode - First observed
storeAssistantMessage - First observed
storeDecision - First observed
storeMilestone - First observed
storeRequirement - First observed
storeUserMessage - First observed
trackActiveFile
TDQS
Most tools have distinct purposes, but there is some overlap between 'storeAssistantMessage'/'storeUserMessage' and 'endConversation'/'initConversation', which bundle similar operations. The 'manageVector' tool is broad but clearly defined, while others like 'getRecentEpisodes' and 'getRecentMessages' target different memory types, reducing confusion.
Naming is mixed with camelCase (e.g., 'checkHealth') and snake_case (e.g., 'store_assistant_message'), though most tools use a verb_noun pattern. Inconsistencies like 'diagnoseVectors' vs. 'manageVector' and variations in verb usage (e.g., 'get', 'store', 'record') detract from a uniform convention.
With 18 tools, the count is slightly high but reasonable for a memory system server covering health, diagnostics, conversation management, and multiple memory types (short-term, episodic, long-term). It avoids being overwhelming by grouping related operations, though some tools could be consolidated.
The tool set comprehensively covers the memory system domain, including initialization, conversation handling, message storage, episode recording, milestone/requirement/decision tracking, vector management, health checks, diagnostics, and context retrieval. There are no obvious gaps, supporting full lifecycle operations for memory management.
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
Persistent memory for Claude Code and Cursor. Stop re-explaining your project every session.
AI memory layer — one shared, persistent memory across every AI tool you connect.
Persistent, outcome-grounded episodic memory for Claude. 14ms CPU retrieval, no GPU, no vector DB.
Hosted memory for AI agents that learns from outcomes — one key across Claude, Cursor & ChatGPT.
Related MCP Servers
- AlicenseAqualityDmaintenanceA personal memory system that provides AI assistants with long-term memory capabilities through semantic search and vector storage. It enables Claude Code to store, retrieve, and manage personal context and project preferences using flexible LLM backends.8MIT
- AlicenseAqualityAmaintenancePersistent long-term memory for AI agents — semantic recall across Claude, Cursor, ChatGPT & MCP.1051921MIT
- AlicenseAqualityDmaintenancePersistent memory management for AI assistants like Claude, enabling creation, search, and retrieval of memories with tagging and triggers.10MIT
- AlicenseNot gradedqualityBmaintenanceSelf-learning memory for AI tools. Remembers user preferences and context across Claude, Cursor, and Codex with multi-parameter forgetting and cross-tool identity.14MIT
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/aiurda/cursor10x-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server