Skip to content

Projects

Project Memories

Specialized tools for managing project context and module state.

get_project_main_memory

Description: Get the main memory of a project. The main memory contains the project's core context, architecture, key decisions, and current state.

Parameters: - project_name (required): Name of the project (typically the folder name)

Example:

curl -X POST https://akashic-mcp.com/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"projects","arguments":{"action":"get_main_memory","project_name":"my-api"}},"id":1}'

Response:

{
  "found": true,
  "memory": {
    "id": "mem-main-001",
    "content": "Project overview: TypeScript API with Express, PostgreSQL, Qdrant...",
    "metadata": {
      "event_type": "project-main",
      "state": "active",
      "project_name": "my-api"
    }
  },
  "files": [
    {
      "id": "file-001",
      "filename": "architecture.pdf",
      "mime_type": "application/pdf"
    }
  ],
  "related_memories": [
    {
      "id": "mem-001",
      "content": "Decision: Use PostgreSQL for database",
      "collection_name": "memory-cf17f249..."
    }
  ]
}

Use Cases: - Starting work on a project (always call this FIRST) - Understanding project architecture and decisions - Getting project context before making changes - Viewing all project-related files and memories

Important Notes: - CRITICAL: Call this FIRST when starting work on a project - Only one active main memory per project (system enforced) - Automatically includes linked files and related memories (2 levels deep) - Returns found: false if no main memory exists (suggests creating one)


get_module_state

Description: Consult the current state of a module/component. Searches for all memories and files related to a specific module.

Parameters: - module_name (required): Name of the module/component (e.g., "authentication", "database") - project_name (optional): Filter by project name - project_id (optional): Filter by project ID - limit (optional): Maximum memories to return (default: 10)

Example:

curl -X POST https://akashic-mcp.com/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"projects","arguments":{"action":"get_module_state","module_name":"authentication","project_name":"my-api","limit":10}},"id":1}'

Response:

{
  "module_name": "authentication",
  "memories": [
    {
      "id": "mem-001",
      "content": "Authentication module uses JWT tokens...",
      "collection_name": "memory-cf17f249...",
      "metadata": {
        "tags": ["authentication", "jwt"]
      }
    }
  ],
  "files": [
    {
      "id": "file-001",
      "filename": "auth-service.ts",
      "mime_type": "text/typescript"
    }
  ],
  "total_memories": 5,
  "total_files": 2
}

Use Cases: - Before answering questions about a module - Before making changes to a module - Understanding module architecture and decisions - Getting complete module context

Important Notes: - CRITICAL: Use this BEFORE answering questions about modules - Searches by module name in tags and content - Returns all related memories and files - Provides complete context for informed responses