Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
07425ab
docs: add advanced MCP units from Anthropic
zealoushacker May 20, 2025
07b32f0
docs: add Unit 3 implementation plan for team review
zealoushacker May 21, 2025
72703c2
feat: implement Unit 3 - Building Custom MCP Servers
zealoushacker May 26, 2025
7357b9b
move project to projects dir
burtenshaw May 27, 2025
c700277
flatten unit3 written material structure
burtenshaw May 27, 2025
1efae10
Merge pull request #1 from huggingface/restructure-anthropic-unit3
zealoushacker May 27, 2025
7c860d6
fix(docs): Updates dir refs in unit3 build mcp server
zealoushacker May 27, 2025
6b45e64
fix(docs): Updates paths to files
zealoushacker May 27, 2025
0c29dfd
refactor: Restructure unit3 project directory to use descriptive naming
zealoushacker May 27, 2025
9f88871
feat: Add Module 2 - Smart File Analysis with MCP Resources
zealoushacker May 27, 2025
5914dc4
refactor: Remove Claude Desktop references in favor of Claude Code
zealoushacker May 27, 2025
087b1b2
fix: Correct claude mcp add command syntax
zealoushacker May 27, 2025
817f166
refactor: Remove Module 2 Resources content while preserving work
zealoushacker May 29, 2025
937d1f3
feat: Add Module 2 - GitHub Actions Integration with MCP Prompts
zealoushacker May 30, 2025
a317493
feat: Complete Unit 3 Module 3 - Slack Notification Integration
zealoushacker May 30, 2025
b01e276
feat: Comprehensively address @burtenshaw PR feedback for Unit 3
zealoushacker Jun 2, 2025
39e1c9c
add git clone and uv tip
burtenshaw Jun 3, 2025
59dab07
add returns to all tips
burtenshaw Jun 3, 2025
05c9a75
Merge branch 'main' into pr/50
burtenshaw Jun 3, 2025
0b0c754
fix: Add output limiting to prevent MCP token limit errors
zealoushacker Jun 3, 2025
bd15457
fix: Handle MCP server working directory issue using roots
zealoushacker Jun 5, 2025
751e1c3
Merge branch 'feature/anthropic-course-units' of https://github.com/z…
burtenshaw Jun 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 12 additions & 6 deletions units/en/_toctree.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,18 @@
- local: unit2/tiny-agents
title: Building a Tiny Agent with TypeScript

- title: "3. Use Case: Advanced MCP Development"
- title: "3. Advanced MCP Development: Custom Workflow Servers"
sections:
- local: unit3/introduction
title: Coming Soon
title: Building Custom Workflow Servers for Claude Code
- local: unit3/module1/introduction
title: "Module 1: Build MCP Server"
- local: unit3/module2/introduction
title: "Module 2: Smart File Analysis"
- local: unit3/module3/introduction
title: "Module 3: GitHub Actions Integration"
- local: unit3/module4/introduction
title: "Module 4: Hugging Face Hub Integration"
- local: unit3/module5/introduction
title: "Module 5: Slack Notification"

- title: "Bonus Units"
sections:
- local: unit4/introduction
title: Coming Soon
135 changes: 135 additions & 0 deletions units/en/unit3/NEXT_STEPS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
# Unit 3 Next Steps - Status Summary

## Current Status (Module 1: Complete βœ…)

### What's Done
1. **Module 1: Build MCP Server** - FULLY COMPLETE
- βœ… FastMCP implementation with all three tools
- βœ… uv package management with pyproject.toml
- βœ… Complete starter code with TODOs
- βœ… Comprehensive test suite (unit tests + validation scripts)
- βœ… Documentation (README, manual testing guide)
- βœ… MDX file in module directory
- βœ… _toctree.yml updated with module reference
- βœ… All 7 PR templates created

2. **Unit 3 Foundation**
- βœ… Updated introduction.mdx (removed production language, added MCP primitives)
- βœ… Solution walkthrough document created
- βœ… Implementation plans documented
- βœ… Directory structure for all 5 modules

### Key Technology Decisions Made
- **Package Manager**: uv (with pyproject.toml)
- **MCP SDK**: FastMCP (not legacy Server API)
- **Python Version**: >=3.10
- **Testing**: pytest with pytest-asyncio
- **Webhooks**: Cloudflare Tunnel (not ngrok)

## Immediate Next Steps (Before Committing)

1. **Git housekeeping**:
```bash
git add units/en/unit3/implementation_plan_enhancements.md
git add units/en/unit3/solution_walkthrough.md
```

2. **Verify Module 1 works**:
```bash
cd units/en/unit3/module1/solution
uv sync --all-extras
uv run python validate_solution.py
```

3. **Consider adding to _toctree.yml**:
- The solution_walkthrough.md (as a reference doc)
- Future module entries as they're completed

## Module Implementation Roadmap

### Module 2: Smart File Analysis (Resources)
**Goal**: Add Resources for project context
- **Starter**: Copy Module 1 solution as base
- **Add**: Resource registration for templates/, project-context/, git history
- **MDX**: Create module2/introduction.mdx
- **_toctree**: Add reference when complete

### Module 3: GitHub Actions Integration (Prompts)
**Goal**: Add webhook handling and Prompts
- **Starter**: Copy Module 2 solution
- **Add**: Cloudflare Tunnel setup, webhook endpoint, prompt templates
- **MDX**: Create module3/introduction.mdx
- **_toctree**: Add reference when complete

### Module 4: Hugging Face Hub Integration
**Goal**: LLM-specific workflows
- **Starter**: Copy Module 3 solution
- **Add**: Hub API integration, model card generation, dataset validation
- **MDX**: Create module4/introduction.mdx
- **_toctree**: Add reference when complete

### Module 5: Slack Notification (All Primitives)
**Goal**: Complete integration
- **Starter**: Copy Module 4 solution
- **Add**: Slack webhooks, message formatting, full workflow
- **MDX**: Create module5/introduction.mdx
- **_toctree**: Add reference when complete

## Testing Checklist for Each Module

When implementing each module:
1. [ ] Create solution with full implementation
2. [ ] Create starter by removing implementation
3. [ ] Write unit tests
4. [ ] Create validation scripts
5. [ ] Test with Claude Desktop
6. [ ] Write module MDX file
7. [ ] Update _toctree.yml
8. [ ] Ensure progressive enhancement from previous module

## Documentation Updates Needed

1. **After all modules complete**:
- Update solution_walkthrough.md if needed
- Consider adding troubleshooting guide
- Create unit3/conclusion.mdx

2. **For PR**:
- Ensure commit message follows format
- Update PR description with what's complete
- Note that only Module 1 is implemented

## Commit Message Suggestion

```
feat(unit3): implement Module 1 with FastMCP and uv

- Complete Module 1: Basic MCP server with PR template tools
- Migrate from legacy Server API to FastMCP
- Replace pip/requirements.txt with uv/pyproject.toml
- Add comprehensive test suite and validation scripts
- Update unit introduction to focus on learning (not production)
- Create module structure for remaining 4 modules

Module 1 provides hands-on experience with MCP Tools, letting learners
build a PR agent that analyzes git changes and suggests templates.
```

## Quality Checklist βœ…

- [x] All imports use current APIs (FastMCP, not legacy Server)
- [x] No hardcoded paths (all use relative imports)
- [x] Consistent error handling patterns
- [x] Tests are meaningful and pass
- [x] Documentation is clear and accurate
- [x] No "production-ready" claims in Unit 3
- [x] Free tooling only (no paid services required)
- [x] Works with Claude Desktop

## Notes for Reviewers

1. **Only Module 1 is implemented** - Other modules are scaffolded but empty
2. **FastMCP is used throughout** - This is the modern API
3. **uv replaces pip** - Following MCP documentation recommendations
4. **Focus is on learning** - Production concerns deferred to Unit 4
5. **All MCP primitives covered** - Tools (M1), Resources (M2), Prompts (M3), Integration (M4-5)
Loading