Conversation memory and workspace management MCP server for Amazon Q CLI with ChromaDB real-time sync
Project description
AWS Q Memory MCP Server (q_mem_mcp_server)
A Model Context Protocol (MCP) server that provides conversation memory and workspace management for Amazon Q CLI.
๐ฏ Key Features
- Automatic Conversation Saving: Real-time sync of Q CLI conversations to ChromaDB
- Workspace Management: Organize conversations by topics/workspaces with natural language support
- Workspace Restoration: Resume previous conversations with full workspace memory
- Semantic Search: Search through conversation history using natural language
๐ Quick Start
1. MCP Configuration
Add to ~/.aws/amazonq/mcp.json:
For macOS:
{
"mcpServers": {
"q-mem": {
"command": "uvx",
"args": ["q_mem_mcp_server@latest"],
"env": {
"Q_CLI_DB_PATH": "~/Library/Application Support/amazon-q/data.sqlite3",
"Q_MEM_VERBOSE": "true"
},
"disabled": false
}
}
}
For Windows: First, find your Q CLI database path:
where /r %USERPROFILE% data.sqlite3
Then use the found path in your configuration:
{
"mcpServers": {
"q-mem": {
"command": "uvx",
"args": ["q_mem_mcp_server@latest"],
"env": {
"Q_CLI_DB_PATH": "C:\\Users\\YourUsername\\AppData\\Local\\amazon-q\\data.sqlite3",
"Q_MEM_VERBOSE": "true"
},
"disabled": false
}
}
}
Note: Replace the path with your actual Q CLI database location found by the command above.
2. Usage Examples
# Start Q CLI
q chat
# Start a new workspace
start_workspace(description="backendDev")
# OR natural language: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์์ํด์ค"
# Chat normally (automatically saved)
# ... have conversations ...
# List workspaces
list_workspaces()
# OR natural language: "์ํฌ์คํ์ด์ค ๋ชฉ๋ก ๋ณด์ฌ์ค"
# Resume workspace (loads full workspace)
resume_workspace(workspace_id="backendDev")
# OR natural language: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์ฌ๊ฐํด์ค"
๐ ๏ธ Available Commands
| Command | Description |
|---|---|
start_workspace(description) |
Start a new workspace |
list_workspaces() |
List all workspaces |
resume_workspace(workspace_id) |
Resume workspace with full workspace |
search_memory_by_workspace(workspace_id, query) |
Search previous conversations |
delete_workspace(workspace_id, confirm=true) |
Delete a workspace |
get_storage_stats() |
Check storage status |
Natural Language Support: You can also use natural language like "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์์ํด์ค" or "resume backend development workspace"
๐ง Technology Stack
- ChromaDB: Vector database for conversation storage and search
- SQLite WAL: Real-time sync with Q CLI database
- Sentence Transformers: Semantic search embeddings
- MCP Protocol: Communication with Amazon Q
๐ Data Storage
- ChromaDB:
~/.Q_mem/chroma_db/ - Sync State:
~/.Q_mem/sync_state.json - Logs:
~/.Q_mem/q_mem.log
๐ Auto-Sync Features
Q CLI conversations are automatically saved to ChromaDB in real-time:
- Real-time Detection: Checks for new conversations every 2 seconds
- Partial Failure Handling: Saves successful conversations even if some fail
- Auto Recovery: Automatically recovers from consecutive failures
- State Restoration: Restores sync state after restart
๐ Multi-Persona Workflow Example
Experience the power of seamless workspace switching between different expert personas:
# === Backend Development Workspace ===
q chat
> start_workspace(description="backendDev")
# OR natural language: "Start backend development workspace"
โ
Workspace 'backendDev' started
> "You are now a backend developer persona. Help me design a microservices architecture"
๐ฏ Backend Developer: I'll help you design a robust microservices architecture...
> "Store my PyPI API key: pypi-AgEI..."
โ
PyPI API key stored for future deployments
> "Design a user authentication service with JWT"
๐ฏ Backend Developer: Here's a comprehensive JWT authentication service design...
# ... detailed backend discussion continues ...
# === Database Design Workspace ===
q chat
> start_workspace(description="dba")
# OR natural language: "Start database administrator workspace"
โ
Workspace 'dba' started
> "You are now a database administrator persona. Help me optimize the user service database"
๐ฏ Database Administrator: I'll help you optimize your database design...
> "What's the best indexing strategy for user lookups?"
๐ฏ Database Administrator: For optimal user lookup performance, consider these indexing strategies...
# ... detailed database discussion continues ...
# === Seamless Workspace Switching ===
q chat
> list_workspaces()
# OR natural language: "Show me all workspaces"
๐ Your workspaces:
1. backendDev (15 conversations) - Backend development and API design
2. dba (8 conversations) - Database optimization and indexing
> resume_workspace(workspace_id="backendDev")
# OR natural language: "Resume backend development workspace"
๐ Workspace 'backendDev' resumed with full workspace
๐ฏ Backend Developer: Welcome back! We were discussing JWT authentication service...
> "Remember my PyPI key? I need to deploy the auth service we designed"
๐ฏ Backend Developer: Yes! Using your stored PyPI key: pypi-AgEI...
โ
Deploying q_auth_service v1.0.0 to PyPI...
> "Now switch to DBA workspace to check if our database design supports this deployment"
> resume_workspace(workspace_id="dba")
# OR natural language: "Switch to database administrator workspace"
๐ Workspace 'dba' resumed with full workspace
๐ฏ Database Administrator: Checking the indexing strategy we discussed for the auth service...
> "The backend team deployed the JWT service. Does our index design handle the expected load?"
๐ฏ Database Administrator: Based on our previous optimization discussion, the composite index on (user_id, created_at) will handle the JWT validation queries efficiently...
# === Cross-Workspace Knowledge Integration ===
> search_memory_by_workspace(workspace_id="backendDev", query="JWT token expiration")
# OR natural language: "Search for JWT token expiration in backend workspace"
๐ Found in backendDev workspace:
- "JWT tokens should expire in 15 minutes for security"
- "Refresh tokens valid for 7 days"
- "Store refresh tokens in Redis for fast lookup"
> resume_workspace(workspace_id="dba")
# OR natural language: "Switch back to database workspace"
๐ฏ Database Administrator: I remember we need to optimize for JWT refresh token storage...
> "Based on the backend workspace, we need Redis optimization for 7-day refresh tokens"
๐ฏ Database Administrator: Perfect! Let me design a Redis clustering strategy for high-availability refresh token storage...
๐ Key Benefits
- Persistent Expertise: Each workspace maintains specialized knowledge and workspace
- Seamless Switching: Jump between expert personas without losing conversation flow
- Cross-Workspace Intelligence: Search and reference knowledge across different expert workspaces
- Secure Credential Storage: API keys and sensitive data persist across workspaces
- Natural Workflow: Mirrors real-world collaboration between different specialists
๐ฏ Real-World Applications
- DevOps Teams: Switch between developer, DBA, and infrastructure personas
- Full-Stack Projects: Frontend, backend, and database expert workspaces
- Learning Paths: Separate workspaces for different technologies or concepts
- Client Projects: Dedicated workspaces per client with persistent workspace
- Code Reviews: Different perspectives from various expert personas
๐ก Usage Tips
- Workspace Organization: Separate conversations by topics, roles, or projects
- Semantic Search: Use natural language rather than exact keywords
- Workspace Utilization: Use
resume_workspacefor complete conversation restoration - Regular Cleanup: Delete unnecessary workspaces to maintain performance
- Cross-Workspace References: Use
search_memory_by_workspaceto find relevant information across personas - Natural Language: Use natural language commands like "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์์ํด์ค"
Memory Management
# Clean up old workspaces
cleanup_old_workspaces(days=30, confirm=true)
# or natural language: "remove old workspaces"
# Delete specific workspace
delete_workspace(workspace_id="workspace_name", confirm=true)
# or natural language: "delete workspace workspace_name"
๐ License
MIT License
๐ Links
- PyPI: https://pypi.org/project/q_mem_mcp_server/
- GitHub: https://github.com/jikang-jeong/aws-q-mem-mcp-server
- Issues: https://github.com/jikang-jeong/aws-q-mem-mcp-server/issues
AWS Q Memory MCP Server (q_mem_mcp_server) - KOR
Amazon Q CLI๋ฅผ ์ํ ๋ํ ๋ฉ๋ชจ๋ฆฌ ๋ฐ ์ํฌ์คํ์ด์ค ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ Model Context Protocol (MCP) ์๋ฒ์ ๋๋ค.
๐ฏ ์ฃผ์ ๊ธฐ๋ฅ
- ์๋ ๋ํ ์ ์ฅ: Q CLI ๋ํ๋ฅผ ChromaDB์ ์ค์๊ฐ ๋๊ธฐํ
- ์ํฌ์คํ์ด์ค ๊ด๋ฆฌ: ์ฃผ์ /์ํฌ์คํ์ด์ค๋ณ๋ก ๋ํ ์ ๋ฆฌ
- ์ํฌ์คํ์ด์ค ๋ณต์: ์ด์ ๋ํ์ ์ ์ฒด ์ํฌ์คํ์ด์ค์ ํจ๊ป ์ฌ๊ฐ
- ์๋ฏธ ๊ฒ์: ์์ฐ์ด๋ฅผ ์ฌ์ฉํ ๋ํ ๊ธฐ๋ก ๊ฒ์
๐ ๋น ๋ฅธ ์์
1. MCP ์ค์
~/.aws/amazonq/mcp.json์ ์ถ๊ฐ:
macOS์ ๊ฒฝ์ฐ:
{
"mcpServers": {
"q-mem": {
"command": "uvx",
"args": ["q_mem_mcp_server@latest"],
"env": {
"Q_CLI_DB_PATH": "~/Library/Application Support/amazon-q/data.sqlite3",
"Q_MEM_VERBOSE": "true"
},
"disabled": false,
"autoApprove": [
"start_workspace",
"resume_workspace",
"search_memory_by_workspace",
"get_storage_stats",
"list_workspaces"
]
}
}
}
Windows์ ๊ฒฝ์ฐ: ๋จผ์ Q CLI ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฒฝ๋ก๋ฅผ ์ฐพ์ผ์ธ์:
where /r %USERPROFILE% data.sqlite3
์ฐพ์ ๊ฒฝ๋ก๋ฅผ ์ค์ ์ ์ฌ์ฉํ์ธ์:
{
"mcpServers": {
"q-mem": {
"command": "uvx",
"args": ["q_mem_mcp_server@latest"],
"env": {
"Q_CLI_DB_PATH": "C:\\Users\\์ฌ์ฉ์๋ช
\\AppData\\Local\\amazon-q\\data.sqlite3",
"Q_MEM_VERBOSE": "true"
},
"disabled": false,
"autoApprove": [
"start_workspace",
"resume_workspace",
"search_memory_by_workspace",
"get_storage_stats",
"list_workspaces"
]
}
}
}
์ฐธ๊ณ : ์ ๋ช ๋ น์ด๋ก ์ฐพ์ ์ค์ Q CLI ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์น๋ก ๊ฒฝ๋ก๋ฅผ ๋ฐ๊ฟ์ฃผ์ธ์.
2. ์ฌ์ฉ ์์
# Q CLI ์์
q chat
# ์ ์ํฌ์คํ์ด์ค ์์
start_workspace(description="๋ฐฑ์๋๊ฐ๋ฐ")
# ๋๋ ์์ฐ์ด: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค ์์ํด์ค"
# ์ผ๋ฐ์ ์ผ๋ก ๋ํ (์๋ ์ ์ฅ๋จ)
# ... ๋ํ ์งํ ...
# ์ํฌ์คํ์ด์ค ๋ชฉ๋ก ๋ณด๊ธฐ
list_workspaces()
# ๋๋ ์์ฐ์ด: "์ํฌ์คํ์ด์ค ๋ชฉ๋ก ๋ณด์ฌ์ค"
# ์ํฌ์คํ์ด์ค ์ฌ๊ฐ (์ ์ฒด ์ํฌ์คํ์ด์ค ๋ก๋)
resume_workspace(workspace_id="๋ฐฑ์๋๊ฐ๋ฐ")
# ๋๋ ์์ฐ์ด: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์ฌ๊ฐํด์ค"
๐ ๏ธ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ช ๋ น์ด
| ๋ช ๋ น์ด | ์ค๋ช |
|---|---|
start_workspace(description) |
์ ์ํฌ์คํ์ด์ค ์์ |
list_workspaces() |
๋ชจ๋ ์ํฌ์คํ์ด์ค ๋ชฉ๋ก ๋ณด๊ธฐ |
resume_workspace(workspace_id) |
์ ์ฒด ์ํฌ์คํ์ด์ค์ ํจ๊ป ์ํฌ์คํ์ด์ค ์ฌ๊ฐ |
search_memory_by_workspace(workspace_id, query) |
์ด์ ๋ํ ๊ฒ์ |
delete_workspace(workspace_id, confirm=true) |
์ํฌ์คํ์ด์ค ์ญ์ |
get_storage_stats() |
์ ์ฅ์ ์ํ ํ์ธ |
๐ง ๊ธฐ์ ์คํ
- ChromaDB: ๋ํ ์ ์ฅ ๋ฐ ๊ฒ์์ ์ํ ๋ฒกํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค
- SQLite WAL: Q CLI ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ค์๊ฐ ๋๊ธฐํ
- Sentence Transformers: ์๋ฏธ ๊ฒ์ ์๋ฒ ๋ฉ
- MCP Protocol: Amazon Q์์ ํต์
๐ ๋ฐ์ดํฐ ์ ์ฅ
- ChromaDB:
~/.Q_mem/chroma_db/ - ๋๊ธฐํ ์ํ:
~/.Q_mem/sync_state.json - ๋ก๊ทธ:
~/.Q_mem/q_mem.log
๐ ์๋ ๋๊ธฐํ ๊ธฐ๋ฅ
Q CLI ๋ํ๊ฐ ChromaDB์ ์ค์๊ฐ์ผ๋ก ์๋ ์ ์ฅ๋ฉ๋๋ค:
- ์ค์๊ฐ ๊ฐ์ง: 2์ด๋ง๋ค ์๋ก์ด ๋ํ ํ์ธ
- ๋ถ๋ถ ์คํจ ์ฒ๋ฆฌ: ์ผ๋ถ ์คํจํด๋ ์ฑ๊ณตํ ๋ํ๋ ์ ์ฅ
- ์๋ ๋ณต๊ตฌ: ์ฐ์ ์คํจ ์ ์๋ ๋ณต๊ตฌ
- ์ํ ๋ณต์: ์ฌ์์ ํ ๋๊ธฐํ ์ํ ๋ณต์
๐ ๋ฉํฐ ํ๋ฅด์๋ ์ํฌํ๋ก์ฐ ์์
์๋ก ๋ค๋ฅธ ์ ๋ฌธ๊ฐ ํ๋ฅด์๋ ๊ฐ์ ๋งค๋๋ฌ์ด ์ปจํ ์คํธ ์ ํ์ ํ์ ๊ฒฝํํด๋ณด์ธ์:
# === ๋ฐฑ์๋ ๊ฐ๋ฐ ์ํฌ์คํ์ด์ค ===
q chat
> start_workspace(description="๋ฐฑ์๋๊ฐ๋ฐ")
# ๋๋ ์์ฐ์ด: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์์ํด์ค"
โ
'๋ฐฑ์๋๊ฐ๋ฐ' ์ํฌ์คํ์ด์ค๊ฐ ์์๋์์ต๋๋ค
> "๋๋ ์ด์ ๋ถํฐ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ํ๋ฅด์๋์ผ. ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ
์ฒ ์ค๊ณ๋ฅผ ๋์์ค"
๐ฏ ๋ฐฑ์๋ ๊ฐ๋ฐ์: ๊ฒฌ๊ณ ํ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ
์ฒ ์ค๊ณ๋ฅผ ๋์๋๋ฆฌ๊ฒ ์ต๋๋ค...
> "PyPI API ํค ์ ์ฅํด์ค: pypi-AgEI..."
โ
ํฅํ ๋ฐฐํฌ๋ฅผ ์ํด PyPI API ํค๊ฐ ์ ์ฅ๋์์ต๋๋ค
> "JWT๋ฅผ ์ฌ์ฉํ ์ฌ์ฉ์ ์ธ์ฆ ์๋น์ค ์ค๊ณํด์ค"
๐ฏ ๋ฐฑ์๋ ๊ฐ๋ฐ์: ํฌ๊ด์ ์ธ JWT ์ธ์ฆ ์๋น์ค ์ค๊ณ๋ฅผ ์ ์ํ๊ฒ ์ต๋๋ค...
# ... ์์ธํ ๋ฐฑ์๋ ๋
ผ์ ๊ณ์ ...
# === ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ ์ํฌ์คํ์ด์ค ===
q chat
> start_workspace(description="DBA")
# ๋๋ ์์ฐ์ด: "๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์ ์ํฌ์คํ์ด์ค๋ก ์์ํด์ค"
โ
'DBA' ์ํฌ์คํ์ด์ค๊ฐ ์์๋์์ต๋๋ค
> "๋๋ ์ด์ ๋ถํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์ ํ๋ฅด์๋์ผ. ์ฌ์ฉ์ ์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ต์ ํ๋ฅผ ๋์์ค"
๐ฏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์: ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ ์ต์ ํ๋ฅผ ๋์๋๋ฆฌ๊ฒ ์ต๋๋ค...
> "์ฌ์ฉ์ ์กฐํ๋ฅผ ์ํ ์ต์ ์ ์ธ๋ฑ์ฑ ์ ๋ต์ ๋ญ์ผ?"
๐ฏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์: ์ต์ ์ ์ฌ์ฉ์ ์กฐํ ์ฑ๋ฅ์ ์ํด ๋ค์ ์ธ๋ฑ์ฑ ์ ๋ต์ ๊ณ ๋ คํ์ธ์...
# ... ์์ธํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋
ผ์ ๊ณ์ ...
# === ๋งค๋๋ฌ์ด ์ํฌ์คํ์ด์ค ์ ํ ===
q chat
> list_workspaces()
# ๋๋ ์์ฐ์ด: "๋ชจ๋ ์ํฌ์คํ์ด์ค ๋ณด์ฌ์ค"
๐ ์ํฌ์คํ์ด์ค ๋ชฉ๋ก:
1. ๋ฐฑ์๋๊ฐ๋ฐ (15๊ฐ ๋ํ) - ๋ฐฑ์๋ ๊ฐ๋ฐ ๋ฐ API ์ค๊ณ
2. DBA (8๊ฐ ๋ํ) - ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ต์ ํ ๋ฐ ์ธ๋ฑ์ฑ
> resume_workspace(workspace_id="๋ฐฑ์๋๊ฐ๋ฐ")
# ๋๋ ์์ฐ์ด: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์ฌ๊ฐํด์ค"
๐ '๋ฐฑ์๋๊ฐ๋ฐ' ์ํฌ์คํ์ด์ค๊ฐ ์ ์ฒด ์ํฌ์คํ์ด์ค์ ํจ๊ป ์ฌ๊ฐ๋์์ต๋๋ค
๐ฏ ๋ฐฑ์๋ ๊ฐ๋ฐ์: ๋ค์ ์ค์
จ๊ตฐ์! JWT ์ธ์ฆ ์๋น์ค์ ๋ํด ๋
ผ์ํ๊ณ ์์์ฃ ...
> "๋ด PyPI ํค ๊ธฐ์ตํ์ง? ์ฐ๋ฆฌ๊ฐ ์ค๊ณํ ์ธ์ฆ ์๋น์ค๋ฅผ ๋ฐฐํฌํด์ผ ํด"
๐ฏ ๋ฐฑ์๋ ๊ฐ๋ฐ์: ๋ค! ์ ์ฅ๋ PyPI ํค๋ฅผ ์ฌ์ฉํฉ๋๋ค: pypi-AgEI...
โ
q_auth_service v1.0.0์ PyPI์ ๋ฐฐํฌ ์ค...
> "์ด์ DBA ์ํฌ์คํ์ด์ค๋ก ์ ํํด์ ์ฐ๋ฆฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ๊ฐ ์ด ๋ฐฐํฌ๋ฅผ ์ง์ํ๋์ง ํ์ธํด์ค"
> resume_workspace(workspace_id="DBA")
# ๋๋ ์์ฐ์ด: "๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์ ์ํฌ์คํ์ด์ค๋ก ์ ํํด์ค"
๐ 'DBA' ์ํฌ์คํ์ด์ค๊ฐ ์ ์ฒด ์ํฌ์คํ์ด์ค์ ํจ๊ป ์ฌ๊ฐ๋์์ต๋๋ค
๐ฏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์: ์ธ์ฆ ์๋น์ค๋ฅผ ์ํด ๋
ผ์ํ๋ ์ธ๋ฑ์ฑ ์ ๋ต์ ํ์ธํ๊ฒ ์ต๋๋ค...
> "๋ฐฑ์๋ ํ์ด JWT ์๋น์ค๋ฅผ ๋ฐฐํฌํ์ด. ์ฐ๋ฆฌ ์ธ๋ฑ์ค ์ค๊ณ๊ฐ ์์ ๋ถํ๋ฅผ ์ฒ๋ฆฌํ ์ ์์๊น?"
๐ฏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์: ์ด์ ์ต์ ํ ๋
ผ์๋ฅผ ๋ฐํ์ผ๋ก, (user_id, created_at) ๋ณตํฉ ์ธ๋ฑ์ค๊ฐ JWT ๊ฒ์ฆ ์ฟผ๋ฆฌ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ ๊ฒ์
๋๋ค...
# === ์ํฌ์คํ์ด์ค ๊ฐ ์ง์ ํตํฉ ===
> search_memory_by_workspace(workspace_id="๋ฐฑ์๋๊ฐ๋ฐ", query="JWT ํ ํฐ ๋ง๋ฃ")
# ๋๋ ์์ฐ์ด: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค์์ JWT ํ ํฐ ๋ง๋ฃ ๊ฒ์ํด์ค"
๐ '๋ฐฑ์๋๊ฐ๋ฐ' ์ํฌ์คํ์ด์ค์์ ๋ฐ๊ฒฌ:
- "๋ณด์์ ์ํด JWT ํ ํฐ์ 15๋ถ ํ ๋ง๋ฃ๋์ด์ผ ํจ"
- "๋ฆฌํ๋ ์ ํ ํฐ์ 7์ผ๊ฐ ์ ํจ"
- "๋น ๋ฅธ ์กฐํ๋ฅผ ์ํด ๋ฆฌํ๋ ์ ํ ํฐ์ Redis์ ์ ์ฅ"
> resume_workspace(workspace_id="DBA")
# ๋๋ ์์ฐ์ด: "๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํฌ์คํ์ด์ค๋ก ๋ค์ ์ ํํด์ค"
๐ฏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์: JWT ๋ฆฌํ๋ ์ ํ ํฐ ์ ์ฅ์ ์ํ ์ต์ ํ๊ฐ ํ์ํ๋ค๊ณ ๊ธฐ์ตํฉ๋๋ค...
> "๋ฐฑ์๋ ์ํฌ์คํ์ด์ค ๊ธฐ๋ฐ์ผ๋ก, 7์ผ๊ฐ ์ ํจํ ๋ฆฌํ๋ ์ ํ ํฐ์ ์ํ Redis ์ต์ ํ๊ฐ ํ์ํด"
๐ฏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์: ์๋ฒฝํฉ๋๋ค! ๊ณ ๊ฐ์ฉ์ฑ ๋ฆฌํ๋ ์ ํ ํฐ ์ ์ฅ์ ์ํ Redis ํด๋ฌ์คํฐ๋ง ์ ๋ต์ ์ค๊ณํ๊ฒ ์ต๋๋ค...
๐ ์ฃผ์ ์ฅ์
- ์ง์์ ์ธ ์ ๋ฌธ์ฑ: ๊ฐ ์ํฌ์คํ์ด์ค๊ฐ ์ ๋ฌธ ์ง์๊ณผ ์ํฌ์คํ์ด์ค๋ฅผ ์ ์ง
- ๋งค๋๋ฌ์ด ์ ํ: ๋ํ ํ๋ฆ์ ์์ง ์๊ณ ์ ๋ฌธ๊ฐ ํ๋ฅด์๋ ๊ฐ ์ด๋
- ์ํฌ์คํ์ด์ค ๊ฐ ์ง๋ฅ: ์๋ก ๋ค๋ฅธ ์ ๋ฌธ๊ฐ ์ํฌ์คํ์ด์ค ๊ฐ ์ง์ ๊ฒ์ ๋ฐ ์ฐธ์กฐ
- ๋ณด์ ์๊ฒฉ์ฆ๋ช ์ ์ฅ: API ํค์ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ๊ฐ ์ํฌ์คํ์ด์ค ๊ฐ ์ง์
- ์์ฐ์ค๋ฌ์ด ์ํฌํ๋ก์ฐ: ์ค์ ๋ค์ํ ์ ๋ฌธ๊ฐ ๊ฐ ํ์ ์ ๋ฐ์
๐ฏ ์ค์ ํ์ฉ ์ฌ๋ก
- DevOps ํ: ๊ฐ๋ฐ์, DBA, ์ธํ๋ผ ํ๋ฅด์๋ ๊ฐ ์ ํ
- ํ์คํ ํ๋ก์ ํธ: ํ๋ก ํธ์๋, ๋ฐฑ์๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๋ฌธ๊ฐ ์ํฌ์คํ์ด์ค
- ํ์ต ๊ฒฝ๋ก: ๋ค์ํ ๊ธฐ์ ์ด๋ ๊ฐ๋ ๋ณ ๋ณ๋ ์ํฌ์คํ์ด์ค
- ํด๋ผ์ด์ธํธ ํ๋ก์ ํธ: ํด๋ผ์ด์ธํธ๋ณ ์ ์ฉ ์ํฌ์คํ์ด์ค์ ์ง์์ ์ธ ์ํฌ์คํ์ด์ค
- ์ฝ๋ ๋ฆฌ๋ทฐ: ๋ค์ํ ์ ๋ฌธ๊ฐ ํ๋ฅด์๋์ ์๋ก ๋ค๋ฅธ ๊ด์
๐ก ์ฌ์ฉ ํ
- ์ํฌ์คํ์ด์ค ์ ๋ฆฌ: ์ฃผ์ , ์ญํ , ํ๋ก์ ํธ๋ณ๋ก ๋ํ ๋ถ๋ฆฌ
- ์๋ฏธ ๊ฒ์: ์ ํํ ํค์๋๋ณด๋ค ์์ฐ์ด ์ฌ์ฉ
- ์ํฌ์คํ์ด์ค ํ์ฉ: ์์ ํ ๋ํ ๋ณต์์ ์ํด
resume_workspace์ฌ์ฉ - ์ ๊ธฐ ์ ๋ฆฌ: ์ฑ๋ฅ ์ ์ง๋ฅผ ์ํด ๋ถํ์ํ ์ํฌ์คํ์ด์ค ์ญ์
- ์ํฌ์คํ์ด์ค ๊ฐ ์ฐธ์กฐ:
search_memory_by_workspace๋ฅผ ์ฌ์ฉํด ํ๋ฅด์๋ ๊ฐ ๊ด๋ จ ์ ๋ณด ์ฐพ๊ธฐ - ์์ฐ์ด ์ง์: "๋ฐฑ์๋๊ฐ๋ฐ ์ํฌ์คํ์ด์ค๋ก ์์ํด์ค" ๊ฐ์ ์์ฐ์ด ๋ช ๋ น ์ฌ์ฉ
๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ
# ์ค๋๋ ์ํฌ์คํ์ด์ค ์ ๋ฆฌ
cleanup_old_workspaces(days=30, confirm=true)
# ๋๋ ์์ฐ์ด: "์ค๋๋ ์ํฌ์คํ์ด์ค ์ญ์ ํด์ค"
# ํน์ ์ํฌ์คํ์ด์ค ์ญ์
delete_workspace(workspace_id="์ํฌ์คํ์ด์ค์ด๋ฆ", confirm=true)
# ๋๋ ์์ฐ์ด: "์ํฌ์คํ์ด์ค์ด๋ฆ ์ํฌ์คํ์ด์ค ์ญ์ ํด์ค"
๐ ๋ผ์ด์ ์ค
MIT License
๐ ๋งํฌ
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file q_mem_mcp_server-1.2.0.tar.gz.
File metadata
- Download URL: q_mem_mcp_server-1.2.0.tar.gz
- Upload date:
- Size: 29.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6413d427eecb444f1a4934d7016da2c057df904baf5bb103d43124b6e34dd0ca
|
|
| MD5 |
9d53aa031fde5252140696c3eed4d369
|
|
| BLAKE2b-256 |
ed57031e138d4daec2062bd87998b19895b249440218e6b02b5c8602d453b5a0
|
File details
Details for the file q_mem_mcp_server-1.2.0-py3-none-any.whl.
File metadata
- Download URL: q_mem_mcp_server-1.2.0-py3-none-any.whl
- Upload date:
- Size: 32.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61ad0c0eead1349f70dacee5d20109b72b43755500bb65265abc1eab9f8c5e90
|
|
| MD5 |
4e1e78d2713d86311338ab51dc056e36
|
|
| BLAKE2b-256 |
f968e6a73891b474eb9f76188d72ae243fb6e15aba31faaea20340da303f2df4
|