Archon MCP Server Instructions
π¨ CRITICAL RULES (ALWAYS FOLLOW)
Task Management: ALWAYS use Archon MCP tools for task management.
- Combine with your local TODO tools for granular tracking
Research First: Before implementing, use rag_search_knowledge_base and rag_search_code_examples
Task-Driven Development: Never code without checking current tasks first
π― Targeted Documentation Search
When searching specific documentation (very common!):
- Get available sources:
rag_get_available_sources()- Returns list with id, title, url - Find source ID: Match user's request to source title (e.g., "PydanticAI docs" -> find ID)
- Filter search:
rag_search_knowledge_base(query="...", source_id="src_xxx", match_count=5)
Examples:
User: "Search the Supabase docs for vector functions"
- Call
rag_get_available_sources() - Find Supabase source ID from results (e.g., "src_abc123")
- Call
rag_search_knowledge_base(query="vector functions", source_id="src_abc123")
- Call
User: "Find authentication examples in the MCP documentation"
- Call
rag_get_available_sources() - Find MCP docs source ID
- Call
rag_search_code_examples(query="authentication", source_id="src_def456")
- Call
IMPORTANT: Always use source_id (not URLs or domain names) for filtering!
π Core Workflow
Task Management Cycle
- Get current task:
list_tasks(task_id="...") - Search/List tasks:
list_tasks(query="auth", filter_by="status", filter_value="todo") - Mark as doing:
manage_task("update", task_id="...", status="doing") - Research phase:
rag_search_knowledge_base(query="...", match_count=5)rag_search_code_examples(query="...", match_count=3)
- Implementation: Code based on research findings
- Mark for review:
manage_task("update", task_id="...", status="review") - Get next task:
list_tasks(filter_by="status", filter_value="todo")
Consolidated Task Tools (Optimized ~2 tools from 5)
list_tasks(query=None, task_id=None, filter_by=None, filter_value=None, per_page=10)- list + search + get in one tool
- Search with keyword query parameter (optional)
- task_id parameter for getting single task (full details)
- Filter by status, project, or assignee
- Optimized: Returns truncated descriptions and array counts (lists only)
- Default: 10 items per page (was 50)
manage_task(action, task_id=None, project_id=None, ...)- Consolidated: create + update + delete in one tool
- action: "create" | "update" | "delete"
- Examples:
manage_task("create", project_id="p-1", title="Fix auth")manage_task("update", task_id="t-1", status="doing")manage_task("delete", task_id="t-1")
ποΈ Project Management
Project Tools
list_projects(project_id=None, query=None, page=1, per_page=10)- List all projects, search by query, or get specific project by ID
manage_project(action, project_id=None, title=None, description=None, github_repo=None)- Actions: "create", "update", "delete"
Document Tools
list_documents(project_id, document_id=None, query=None, document_type=None, page=1, per_page=10)- List project documents, search, filter by type, or get specific document
manage_document(action, project_id, document_id=None, title=None, document_type=None, content=None, ...)- Actions: "create", "update", "delete"
π Research Patterns
CRITICAL: Keep Queries Short and Focused!
Vector search works best with 2-5 keywords, NOT long sentences or keyword dumps.
β GOOD Queries (concise, focused):
rag_search_knowledge_base(query="vector search pgvector")rag_search_code_examples(query="React useState")rag_search_knowledge_base(query="authentication JWT")rag_search_code_examples(query="FastAPI middleware")
β BAD Queries (too long, unfocused):
rag_search_knowledge_base(query="how to implement vector search with pgvector in PostgreSQL for semantic similarity matching with OpenAI embeddings")rag_search_code_examples(query="React hooks useState useEffect useContext useReducer useMemo useCallback")
Query Construction Tips:
- Extract 2-5 most important keywords from the user's request
- Focus on technical terms and specific technologies
- Omit filler words like "how to", "implement", "create", "example"
- For multi-concept searches, do multiple focused queries instead of one broad query
π Task Status Flow
todo β doing β review β done
- Only ONE task in 'doing' status at a time
- Use 'review' for completed work awaiting validation
- Mark tasks 'done' only after verification
π Task Granularity Guidelines
Project Scope Determines Task Granularity
For Feature-Specific Projects (project = single feature): Create granular implementation tasks:
- "Set up development environment"
- "Install required dependencies"
- "Create database schema"
- "Implement API endpoints"
- "Add frontend components"
- "Write unit tests"
- "Add integration tests"
- "Update documentation"
For Codebase-Wide Projects (project = entire application): Create feature-level tasks:
- "Implement user authentication feature"
- "Add payment processing system"
- "Create admin dashboard"