ms-agent-framework-rag

0
0
Source

Comprehensive guide for building Agentic RAG systems using Microsoft Agent Framework in C#. Use when creating RAG applications with semantic search, document indexing, and intelligent agent orchestration. Includes scaffolding scripts, reference implementations, and documentation for vector databases, embedding models, and multi-agent workflows.

Install

mkdir -p .claude/skills/ms-agent-framework-rag && curl -L -o skill.zip "https://mcp.directory/api/skills/download/7812" && unzip -o skill.zip -d .claude/skills/ms-agent-framework-rag && rm skill.zip

Installs to .claude/skills/ms-agent-framework-rag

About this skill

Microsoft Agent Framework - Agentic RAG System

This skill provides scaffolding and guidance for building production-ready Agentic RAG (Retrieval-Augmented Generation) systems using Microsoft Agent Framework with C#.

Quick Start

Use the scaffolding script to create a new RAG system:

scripts/create_rag_system.sh <project-name> [--output-dir <path>]

Example:

scripts/create_rag_system.sh MyKnowledgeBase --output-dir ./my-rag-project

Architecture Overview

An Agentic RAG system consists of:

  1. Ingestion Layer: Document parsing, chunking, and embedding generation
  2. Vector Store: Semantic search index (Azure AI Search, Qdrant, or Pinecone)
  3. Agent Framework: Multi-agent orchestration with Microsoft AutoGen
  4. LLM Integration: Azure OpenAI or OpenAI API for generation
  5. API Layer: RESTful endpoints for querying

Core Components

1. Semantic Search

  • Use Azure AI Search for integrated vector + keyword search
  • Store embeddings with metadata (source, timestamp, tags)
  • Implement hybrid search (vector + BM25) for best results

See references/semantic_search.md for implementation details.

2. Multi-Agent System

Build specialized agents:

  • Research Agent: Finds relevant documents
  • Synthesis Agent: Combines information from multiple sources
  • Validation Agent: Checks accuracy and citations

See references/agent_patterns.md for agent design patterns.

3. Document Processing

  • Supported formats: PDF, DOCX, TXT, MD, HTML
  • Chunking strategies: semantic, sliding window, hierarchical
  • Metadata extraction: title, author, date, tags

See references/document_processing.md for chunking strategies.

Available Scripts

create_rag_system.sh

Scaffolds a complete RAG system with:

  • Project structure following best practices
  • Configuration files (appsettings.json)
  • Docker compose for local development
  • Example agents and tools

Usage:

scripts/create_rag_system.sh <project-name> [--output-dir <path>]

ingest_documents.sh

Batch document ingestion:

scripts/ingest_documents.sh <source-dir> <index-name>

run_local.sh

Start the RAG system locally:

scripts/run_local.sh <project-dir>

Configuration

Required environment variables:

AZURE_OPENAI_ENDPOINT=<your-endpoint>
AZURE_OPENAI_API_KEY=<your-key>
AZURE_SEARCH_ENDPOINT=<your-search-endpoint>
AZURE_SEARCH_KEY=<your-search-key>
EMBEDDING_MODEL=text-embedding-ada-002
CHAT_MODEL=gpt-4

Reference Documentation

  • references/semantic_search.md - Vector search implementation
  • references/agent_patterns.md - Multi-agent design patterns
  • references/document_processing.md - Chunking and preprocessing
  • references/evaluation.md - RAG quality metrics

Best Practices

  1. Start Simple: Begin with basic RAG, add agents incrementally
  2. Metadata Matters: Rich metadata improves retrieval accuracy
  3. Hybrid Search: Combine vector and keyword search
  4. Citation Tracking: Always include source references
  5. Evaluation: Use RAGAS framework for quality metrics

Common Patterns

Multi-Step Retrieval

For complex queries, use iterative refinement:

  1. Initial search with broad query
  2. Research agent expands with sub-queries
  3. Synthesis agent combines results
  4. Validation agent checks citations

Citation Management

Always track:

  • Document ID
  • Page number
  • Chunk index
  • Relevance score

See references/citations.md for implementation.

Troubleshooting

Poor Retrieval Quality

  • Adjust chunk size (try 512-1024 tokens)
  • Use hybrid search instead of pure vector
  • Add more metadata for filtering
  • Consider re-embedding with different model

Slow Performance

  • Enable caching on vector queries
  • Use streaming responses
  • Implement async document ingestion
  • Consider partitioning large indices

High Costs

  • Use smaller models for embeddings
  • Cache frequently asked questions
  • Implement result pagination
  • Use batch processing for ingestion

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

9521,094

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

846846

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

571699

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

548492

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

673466

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

514280

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.