Coding assistant for the Rocky-LTI project — a Canvas LTI 1.3 integration with an AI-powered educational agent. Use when working on FastAPI endpoints, MCP server components, SQLAlchemy models, Alembic migrations, Azure Functions workers, React/TypeScript frontend, or LTI/OAuth authentication flows in this codebase.
82
75%
Does it follow best practices?
Impact
91%
1.51xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/assistant-rocky-lti-assist/SKILL.mdNew FastAPI endpoint with correct domain structure
router.py file
62%
100%
models.py file
100%
100%
service.py file
100%
100%
db.py file
100%
100%
Thin router
100%
100%
Depends injection
0%
0%
Async endpoint
100%
100%
Pydantic v2 model_config
100%
100%
Pydantic v2 model_dump
100%
100%
Type annotations
100%
100%
uv for linting
0%
100%
uv for tests
0%
100%
No pip usage
0%
100%
Database model with correct location and async patterns
Correct model location
0%
100%
Async SQLAlchemy base
75%
83%
uv run alembic revision
0%
100%
uv run alembic upgrade
0%
100%
No pip usage
100%
100%
Correct alembic directory
0%
100%
Type annotations
40%
30%
Async patterns in any queries
100%
100%
No class Config
100%
100%
MCP tool with FastMCP and correct component structure
Service in canvas_mcp/services/
30%
100%
Registration in canvas_mcp/servers/
30%
100%
Models in canvas_mcp/models/
70%
100%
FastMCP used
100%
100%
Async service function
100%
100%
Async tool handler
100%
100%
Pydantic v2 field_validator or model_validator
100%
87%
No .dict() usage
100%
100%
Type annotations
100%
100%
uv add for dependencies
0%
0%
c0b2e4b
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.