wmcp-annotate 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/AGENTS.md +108 -0
  2. package/IMPLEMENTATION_PLAN.md +187 -0
  3. package/LAUNCH.md +217 -0
  4. package/PRD.md +199 -0
  5. package/PROMPT.md +62 -0
  6. package/README.md +140 -0
  7. package/dist/commands/generate.d.ts +3 -0
  8. package/dist/commands/generate.d.ts.map +1 -0
  9. package/dist/commands/generate.js +46 -0
  10. package/dist/commands/generate.js.map +1 -0
  11. package/dist/commands/scan.d.ts +3 -0
  12. package/dist/commands/scan.d.ts.map +1 -0
  13. package/dist/commands/scan.js +24 -0
  14. package/dist/commands/scan.js.map +1 -0
  15. package/dist/commands/suggest.d.ts +3 -0
  16. package/dist/commands/suggest.d.ts.map +1 -0
  17. package/dist/commands/suggest.js +36 -0
  18. package/dist/commands/suggest.js.map +1 -0
  19. package/dist/commands/validate.d.ts +3 -0
  20. package/dist/commands/validate.d.ts.map +1 -0
  21. package/dist/commands/validate.js +39 -0
  22. package/dist/commands/validate.js.map +1 -0
  23. package/dist/index.d.ts +3 -0
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +44 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/lib/analyzer.d.ts +10 -0
  28. package/dist/lib/analyzer.d.ts.map +1 -0
  29. package/dist/lib/analyzer.js +80 -0
  30. package/dist/lib/analyzer.js.map +1 -0
  31. package/dist/lib/generator.d.ts +12 -0
  32. package/dist/lib/generator.d.ts.map +1 -0
  33. package/dist/lib/generator.js +136 -0
  34. package/dist/lib/generator.js.map +1 -0
  35. package/dist/lib/output.d.ts +6 -0
  36. package/dist/lib/output.d.ts.map +1 -0
  37. package/dist/lib/output.js +35 -0
  38. package/dist/lib/output.js.map +1 -0
  39. package/dist/lib/scanner.d.ts +19 -0
  40. package/dist/lib/scanner.d.ts.map +1 -0
  41. package/dist/lib/scanner.js +159 -0
  42. package/dist/lib/scanner.js.map +1 -0
  43. package/dist/lib/validator.d.ts +13 -0
  44. package/dist/lib/validator.d.ts.map +1 -0
  45. package/dist/lib/validator.js +178 -0
  46. package/dist/lib/validator.js.map +1 -0
  47. package/dist/types.d.ts +109 -0
  48. package/dist/types.d.ts.map +1 -0
  49. package/dist/types.js +3 -0
  50. package/dist/types.js.map +1 -0
  51. package/docs/index.html +563 -0
  52. package/marketing/email-outreach.md +183 -0
  53. package/marketing/landing-page.md +165 -0
  54. package/marketing/social-posts.md +192 -0
  55. package/package.json +58 -0
  56. package/scripts/publish.sh +33 -0
  57. package/specs/generate-command.md +147 -0
  58. package/specs/scan-command.md +92 -0
  59. package/specs/suggest-command.md +120 -0
  60. package/specs/validate-command.md +108 -0
  61. package/src/commands/generate.ts +48 -0
  62. package/src/commands/scan.ts +28 -0
  63. package/src/commands/suggest.ts +39 -0
  64. package/src/commands/validate.ts +44 -0
  65. package/src/index.ts +51 -0
  66. package/src/lib/analyzer.ts +90 -0
  67. package/src/lib/generator.ts +149 -0
  68. package/src/lib/output.ts +40 -0
  69. package/src/lib/scanner.ts +185 -0
  70. package/src/lib/validator.ts +192 -0
  71. package/src/types.ts +124 -0
  72. package/tsconfig.json +20 -0
package/AGENTS.md ADDED
@@ -0,0 +1,108 @@
1
+ # AGENTS.md - wmcp-annotate
2
+
3
+ ## Project Overview
4
+ CLI tool to automatically analyze websites and generate WebMCP tool annotations.
5
+
6
+ ## Tech Stack
7
+ - Node.js 20+
8
+ - TypeScript
9
+ - Playwright (browser automation)
10
+ - Commander.js (CLI)
11
+ - Vitest (testing)
12
+ - Claude API (AI analysis)
13
+
14
+ ## Commands
15
+
16
+ ### Install dependencies
17
+ ```bash
18
+ npm install
19
+ ```
20
+
21
+ ### Build
22
+ ```bash
23
+ npm run build
24
+ ```
25
+
26
+ ### Test
27
+ ```bash
28
+ npm test
29
+ ```
30
+
31
+ ### Run locally
32
+ ```bash
33
+ npm run dev -- scan https://example.com
34
+ ```
35
+
36
+ ### Lint
37
+ ```bash
38
+ npm run lint
39
+ ```
40
+
41
+ ## Backpressure Commands
42
+ Run these after each implementation task:
43
+
44
+ ```bash
45
+ # Build check
46
+ npm run build
47
+
48
+ # Type check
49
+ npx tsc --noEmit
50
+
51
+ # Tests
52
+ npm test
53
+
54
+ # Lint
55
+ npm run lint
56
+ ```
57
+
58
+ ## File Structure
59
+ ```
60
+ wmcp-annotate/
61
+ ├── src/
62
+ │ ├── index.ts # CLI entry point
63
+ │ ├── commands/
64
+ │ │ ├── scan.ts # Scan command
65
+ │ │ ├── suggest.ts # Suggest command
66
+ │ │ ├── generate.ts # Generate command
67
+ │ │ └── validate.ts # Validate command
68
+ │ ├── lib/
69
+ │ │ ├── scanner.ts # Playwright scanning logic
70
+ │ │ ├── analyzer.ts # AI analysis
71
+ │ │ ├── generator.ts # Code generation
72
+ │ │ └── validator.ts # Compliance checking
73
+ │ ├── templates/ # Output templates
74
+ │ └── types.ts # TypeScript types
75
+ ├── tests/
76
+ │ ├── scan.test.ts
77
+ │ ├── suggest.test.ts
78
+ │ ├── generate.test.ts
79
+ │ └── validate.test.ts
80
+ ├── specs/ # Requirements specs
81
+ ├── package.json
82
+ ├── tsconfig.json
83
+ └── README.md
84
+ ```
85
+
86
+ ## Environment Variables
87
+ ```bash
88
+ ANTHROPIC_API_KEY=sk-ant-... # For AI analysis
89
+ WMCP_RATE_LIMIT=10 # Free tier limit
90
+ ```
91
+
92
+ ## Key Dependencies
93
+ - playwright: browser automation
94
+ - commander: CLI framework
95
+ - @anthropic-ai/sdk: AI analysis
96
+ - handlebars: template engine
97
+ - ajv: JSON Schema validation
98
+
99
+ ## Coding Standards
100
+ - Use TypeScript strict mode
101
+ - Async/await for all async operations
102
+ - Error handling with specific error types
103
+ - JSDoc comments for public APIs
104
+ - 100% test coverage for core logic
105
+
106
+ ## Learnings
107
+ (Updated during development)
108
+ -
@@ -0,0 +1,187 @@
1
+ # IMPLEMENTATION_PLAN.md - wmcp-annotate
2
+
3
+ ## Overview
4
+ Build `wmcp-annotate` CLI tool for WebMCP adoption.
5
+
6
+ ## Status
7
+ 🔵 IN PROGRESS
8
+
9
+ ---
10
+
11
+ ## Phase 1: Project Setup (Day 1)
12
+
13
+ ### Task 1.1: Initialize project ⬜
14
+ - [ ] Create package.json with name "wmcp-annotate"
15
+ - [ ] Set up TypeScript config (strict mode)
16
+ - [ ] Add dependencies: playwright, commander, @anthropic-ai/sdk, handlebars, ajv
17
+ - [ ] Add dev dependencies: vitest, typescript, eslint, prettier
18
+ - [ ] Create src/ directory structure
19
+ - [ ] Add npm scripts: build, test, dev, lint
20
+
21
+ ### Task 1.2: CLI scaffolding ⬜
22
+ - [ ] Create src/index.ts with Commander setup
23
+ - [ ] Add scan, suggest, generate, validate command stubs
24
+ - [ ] Add global options (--output, --format, --verbose)
25
+ - [ ] Add version and help commands
26
+ - [ ] Test: `wmcp-annotate --help` works
27
+
28
+ ### Task 1.3: Types definition ⬜
29
+ - [ ] Create src/types.ts with interfaces:
30
+ - ScanResult, ScannedElement
31
+ - ToolSuggestion, ToolDefinition
32
+ - ValidationResult, ValidationIssue
33
+ - [ ] Export all types
34
+
35
+ ---
36
+
37
+ ## Phase 2: Scan Command (Day 1-2)
38
+
39
+ ### Task 2.1: Scanner core ⬜
40
+ - [ ] Create src/lib/scanner.ts
41
+ - [ ] Implement launchBrowser() with Playwright
42
+ - [ ] Implement scanPage(url) → identifies forms, buttons, links
43
+ - [ ] Handle SPA wait (networkidle)
44
+ - [ ] Extract element metadata (selector, label, inputs)
45
+
46
+ ### Task 2.2: API interception ⬜
47
+ - [ ] Intercept fetch/XHR requests
48
+ - [ ] Capture API endpoints and parameters
49
+ - [ ] Add to scan results
50
+
51
+ ### Task 2.3: Scan command integration ⬜
52
+ - [ ] Connect scanner to CLI command
53
+ - [ ] Add --depth option for multi-page crawl
54
+ - [ ] Add --output and --format options
55
+ - [ ] Test with 3 different websites
56
+
57
+ ---
58
+
59
+ ## Phase 3: Suggest Command (Day 2-3)
60
+
61
+ ### Task 3.1: Analyzer core ⬜
62
+ - [ ] Create src/lib/analyzer.ts
63
+ - [ ] Implement Claude API integration
64
+ - [ ] Create prompt template for tool analysis
65
+ - [ ] Parse AI response into ToolSuggestion[]
66
+
67
+ ### Task 3.2: Schema generation ⬜
68
+ - [ ] Generate JSON Schema from form inputs
69
+ - [ ] Handle different input types (text, number, select, checkbox)
70
+ - [ ] Add descriptions from labels/placeholders
71
+ - [ ] Set required fields correctly
72
+
73
+ ### Task 3.3: Suggest command integration ⬜
74
+ - [ ] Connect analyzer to CLI command
75
+ - [ ] Add --scan-file option to use existing scan
76
+ - [ ] Cache results (1 hour TTL)
77
+ - [ ] Add rate limiting for free tier
78
+
79
+ ---
80
+
81
+ ## Phase 4: Generate Command (Day 3-4)
82
+
83
+ ### Task 4.1: Generator core ⬜
84
+ - [ ] Create src/lib/generator.ts
85
+ - [ ] Create Handlebars templates:
86
+ - templates/js-esm.hbs
87
+ - templates/ts.hbs
88
+ - templates/react.hbs
89
+ - [ ] Implement template rendering
90
+
91
+ ### Task 4.2: Code generation ⬜
92
+ - [ ] Generate valid navigator.modelContext.registerTool() code
93
+ - [ ] Add execute handler stubs with implementation hints
94
+ - [ ] Add TypeScript types for TS output
95
+ - [ ] Add React hook wrapper for React output
96
+
97
+ ### Task 4.3: Generate command integration ⬜
98
+ - [ ] Connect generator to CLI command
99
+ - [ ] Add --suggest-file option
100
+ - [ ] Add --format option (js, ts, react, vue)
101
+ - [ ] Test generated code is valid
102
+
103
+ ---
104
+
105
+ ## Phase 5: Validate Command (Day 4-5)
106
+
107
+ ### Task 5.1: Validator core ⬜
108
+ - [ ] Create src/lib/validator.ts
109
+ - [ ] Query navigator.modelContext.tools from page
110
+ - [ ] Implement validation rules from spec
111
+ - [ ] Return structured ValidationResult
112
+
113
+ ### Task 5.2: Validation rules ⬜
114
+ - [ ] NAME_FORMAT: camelCase check
115
+ - [ ] DESCRIPTION_MISSING/TOO_SHORT
116
+ - [ ] SCHEMA_INVALID: JSON Schema validation
117
+ - [ ] HANDLER_NOT_ASYNC
118
+ - [ ] READONLY_HINT
119
+
120
+ ### Task 5.3: Validate command integration ⬜
121
+ - [ ] Connect validator to CLI command
122
+ - [ ] Add --strict and --ci flags
123
+ - [ ] Generate report in multiple formats
124
+ - [ ] Exit codes for CI
125
+
126
+ ---
127
+
128
+ ## Phase 6: Polish & Publish (Day 5-6)
129
+
130
+ ### Task 6.1: Documentation ⬜
131
+ - [ ] Write comprehensive README.md
132
+ - [ ] Add usage examples for each command
133
+ - [ ] Add CI integration examples
134
+ - [ ] Add troubleshooting section
135
+
136
+ ### Task 6.2: Testing ⬜
137
+ - [ ] Add unit tests for each module
138
+ - [ ] Add integration tests with real websites
139
+ - [ ] Achieve 80%+ code coverage
140
+ - [ ] Add test fixtures
141
+
142
+ ### Task 6.3: Publishing ⬜
143
+ - [ ] Set up npm publish workflow
144
+ - [ ] Create GitHub repository
145
+ - [ ] Add GitHub Actions CI
146
+ - [ ] Publish v1.0.0 to npm
147
+ - [ ] Add badges to README
148
+
149
+ ---
150
+
151
+ ## Phase 7: Marketing Launch (Day 6-7)
152
+
153
+ ### Task 7.1: Content ⬜
154
+ - [ ] Write Dev.to article
155
+ - [ ] Create demo video
156
+ - [ ] Write Twitter thread
157
+ - [ ] Prepare HN post
158
+
159
+ ### Task 7.2: Launch ⬜
160
+ - [ ] Post to Hacker News
161
+ - [ ] Tweet announcement
162
+ - [ ] Post to Dev.to
163
+ - [ ] Share in AI/dev communities
164
+
165
+ ### Task 7.3: Outreach ⬜
166
+ - [ ] Email 50 potential enterprise customers
167
+ - [ ] Reach out to WebMCP early adopters
168
+ - [ ] Contact AI agent builders
169
+
170
+ ---
171
+
172
+ ## Completion Checklist
173
+ - [ ] All commands working
174
+ - [ ] Tests passing
175
+ - [ ] Published to npm
176
+ - [ ] Documentation complete
177
+ - [ ] Marketing launched
178
+ - [ ] First paying customers
179
+
180
+ ---
181
+
182
+ ## Notes
183
+ (Add learnings and blockers here)
184
+
185
+ ---
186
+
187
+ **STATUS: PLANNING_COMPLETE**
package/LAUNCH.md ADDED
@@ -0,0 +1,217 @@
1
+ # 🚀 wmcp-annotate Launch Checklist
2
+
3
+ **Status:** Ready to launch
4
+ **Date:** February 24, 2026
5
+
6
+ ---
7
+
8
+ ## ✅ Completed
9
+
10
+ - [x] Core CLI implementation (scan, suggest, generate, validate)
11
+ - [x] TypeScript build passing
12
+ - [x] Package.json configured for npm
13
+ - [x] README.md with full documentation
14
+ - [x] Landing page HTML (`docs/index.html`)
15
+ - [x] Social posts written (LinkedIn, Twitter/X, HN)
16
+ - [x] Email outreach templates ready
17
+
18
+ ---
19
+
20
+ ## 🔐 Needs Your Action (npm publish)
21
+
22
+ Run these commands:
23
+
24
+ ```bash
25
+ cd ~/workspace/projects/wmcp-annotate
26
+
27
+ # 1. Login to npm (one-time)
28
+ npm login
29
+
30
+ # 2. Publish to npm registry
31
+ npm publish --access public
32
+
33
+ # 3. Verify it's live
34
+ npm info wmcp-annotate
35
+ ```
36
+
37
+ ---
38
+
39
+ ## 📱 Social Media Posts (Copy & Post)
40
+
41
+ ### LinkedIn (Post Now)
42
+ ```
43
+ Google just changed how AI agents interact with websites. Is your site ready?
44
+
45
+ Two weeks ago, Google and Microsoft shipped WebMCP in Chrome 146—a W3C standard that lets websites declare structured tools for AI agents.
46
+
47
+ Instead of AI scraping your DOM or analyzing screenshots (expensive, fragile), WebMCP lets you tell agents exactly what your site can do.
48
+
49
+ The problem? 99% of sites don't have these annotations yet.
50
+
51
+ So we built wmcp-annotate.
52
+
53
+ One command:
54
+
55
+ npx wmcp-annotate generate https://your-site.com
56
+
57
+ It scans your site, uses AI to suggest tool definitions, and generates ready-to-use code.
58
+
59
+ Think of it as "making your website API-first for AI."
60
+
61
+ We're launching today. Open source core, Pro tier for teams.
62
+
63
+ → GitHub: https://github.com/avatarconsulting/wmcp-annotate
64
+ → Try it: npm install -g wmcp-annotate
65
+
66
+ If you're building AI agents or want your SaaS to be agent-friendly, this is the fastest path.
67
+
68
+ Questions? Drop them below.
69
+
70
+ #AI #WebDevelopment #Automation #AIAgents #WebMCP
71
+ ```
72
+
73
+ ### Twitter/X Thread (Post Now)
74
+ ```
75
+ 🧵 Google just shipped the biggest change to web automation since Selenium.
76
+
77
+ WebMCP is now in Chrome 146.
78
+
79
+ Here's what it means and how to get your site ready in 5 minutes:
80
+
81
+ ---
82
+
83
+ WebMCP lets websites declare "tools" that AI agents can call directly.
84
+
85
+ No more:
86
+ - DOM scraping
87
+ - Screenshot analysis (2000+ tokens each!)
88
+ - Broken automation when CSS changes
89
+
90
+ ---
91
+
92
+ Instead, your site says:
93
+ "Here's a searchProducts tool. It takes a query string. Here's how to call it."
94
+
95
+ The AI agent calls the tool. Gets structured data back. Done.
96
+
97
+ ---
98
+
99
+ The catch? 99% of websites don't have WebMCP annotations.
100
+
101
+ Someone needs to add them.
102
+
103
+ ---
104
+
105
+ Enter: wmcp-annotate
106
+
107
+ We built a CLI that:
108
+ 1. Scans your site
109
+ 2. Identifies forms/buttons/APIs
110
+ 3. Uses AI to generate tool definitions
111
+ 4. Outputs ready-to-use code
112
+
113
+ ---
114
+
115
+ npx wmcp-annotate generate https://your-site.com
116
+
117
+ That's it. You get JavaScript you can copy-paste into your app.
118
+
119
+ ---
120
+
121
+ Open source core. Free to use.
122
+ Pro tier ($49/mo) for unlimited AI + CI integration.
123
+
124
+ Try it: npm install -g wmcp-annotate
125
+ GitHub: https://github.com/avatarconsulting/wmcp-annotate
126
+ ```
127
+
128
+ ### Hacker News (Submit to Show HN)
129
+
130
+ **Title:** Show HN: wmcp-annotate – Make any website AI-agent ready with WebMCP
131
+
132
+ **URL:** https://github.com/avatarconsulting/wmcp-annotate
133
+
134
+ **Text:**
135
+ ```
136
+ Two weeks ago, Google and Microsoft shipped WebMCP in Chrome 146 (https://webmcp.link). It's a W3C standard that lets websites declare structured tools for AI agents—no more DOM scraping or screenshot parsing.
137
+
138
+ We built wmcp-annotate to help developers adopt it quickly.
139
+
140
+ What it does:
141
+ - Scans any website and identifies forms, buttons, API calls
142
+ - Uses Claude to generate meaningful tool definitions
143
+ - Outputs ready-to-use JS/TS/React code
144
+ - Validates existing implementations
145
+
146
+ Usage:
147
+ npm install -g wmcp-annotate
148
+ wmcp-annotate generate https://your-site.com --format typescript
149
+
150
+ Why this matters:
151
+ AI agents currently waste ~2000 tokens per screenshot to understand a page. With WebMCP, it's ~100 tokens to call a declared tool. That's 95% cost reduction. Plus, the automation is stable—no more broken scripts when CSS changes.
152
+
153
+ Business model:
154
+ Open source CLI (MIT). Pro tier ($49/mo) for unlimited AI analysis and CI integration. Enterprise ($499/mo) for teams.
155
+
156
+ We're a small consulting firm (Avatar Consulting) that does AI transformation for banks. This came out of client work—everyone wanted their internal tools to be agent-accessible.
157
+
158
+ Would love feedback on the tool and the approach.
159
+ ```
160
+
161
+ ---
162
+
163
+ ## 🌐 Landing Page
164
+
165
+ The HTML is ready at: `docs/index.html`
166
+
167
+ **To deploy:**
168
+
169
+ Option A - GitHub Pages:
170
+ ```bash
171
+ # Push to gh-pages branch
172
+ git subtree push --prefix docs origin gh-pages
173
+ ```
174
+
175
+ Option B - Vercel:
176
+ ```bash
177
+ cd docs
178
+ vercel --prod
179
+ ```
180
+
181
+ Option C - Just serve the HTML file anywhere
182
+
183
+ ---
184
+
185
+ ## 📧 Email Outreach (Week 1)
186
+
187
+ Target list in `marketing/email-outreach.md`. Key targets:
188
+
189
+ 1. **AI/ML Newsletter authors** - TheSequence, Import AI, Last Week in AI
190
+ 2. **Dev tool journalists** - The Changelog, Dev.to editors
191
+ 3. **VC contacts** - especially those who funded browser/AI tools
192
+ 4. **SaaS founders** - tweet about AI compatibility
193
+
194
+ ---
195
+
196
+ ## 📊 Success Metrics (Week 1)
197
+
198
+ - [ ] npm downloads > 500
199
+ - [ ] GitHub stars > 100
200
+ - [ ] HN front page (or close)
201
+ - [ ] 3+ inbound leads for Pro/Enterprise
202
+ - [ ] 5+ mentions in tweets/posts
203
+
204
+ ---
205
+
206
+ ## 🎯 Post-Launch (Week 2+)
207
+
208
+ 1. **Blog post:** "How we built wmcp-annotate" (dev story)
209
+ 2. **Tutorial video:** 5-min demo on YouTube
210
+ 3. **Integrations:** VS Code extension, GitHub Action
211
+ 4. **Partnerships:** Reach out to Playwright, Puppeteer, browser-use
212
+
213
+ ---
214
+
215
+ **Questions?** Text me or drop them in Command Center.
216
+
217
+ — Edison 💡
package/PRD.md ADDED
@@ -0,0 +1,199 @@
1
+ # PRD: wmcp-annotate
2
+
3
+ ## Product Overview
4
+
5
+ **wmcp-annotate** is a CLI tool that automatically analyzes websites and generates WebMCP tool annotations, enabling AI agents to interact with any web application through the new W3C WebMCP standard.
6
+
7
+ ## Problem Statement
8
+
9
+ Google and Microsoft shipped WebMCP in Chrome 146 (February 2026) as a W3C standard. This protocol lets websites declare structured tools that AI agents can call directly—no DOM scraping, 89% token reduction vs screenshots.
10
+
11
+ **The problem:** 99% of websites don't have WebMCP annotations yet. Developers need to:
12
+ 1. Understand the WebMCP spec
13
+ 2. Identify which UI elements should become tools
14
+ 3. Write the JavaScript registration code
15
+ 4. Test and validate the implementation
16
+
17
+ This is manual, error-prone, and slow. Most teams won't do it.
18
+
19
+ ## Solution
20
+
21
+ **wmcp-annotate** automates WebMCP adoption:
22
+ 1. **Scan** any website and identify actionable elements (forms, buttons, links, APIs)
23
+ 2. **Suggest** WebMCP tool definitions with proper schemas
24
+ 3. **Generate** ready-to-use JavaScript code
25
+ 4. **Validate** existing WebMCP implementations
26
+ 5. **Inject** annotations into React/Vue/Svelte/vanilla codebases
27
+
28
+ ## ICP (Ideal Customer Profile)
29
+
30
+ ### Primary: Web Development Teams
31
+ - Frontend engineers at SaaS companies
32
+ - Agencies building client sites
33
+ - Enterprise IT teams modernizing internal apps
34
+
35
+ ### Secondary: AI Agent Builders
36
+ - Teams building AI agents that need to interact with websites
37
+ - Automation engineers
38
+ - RPA modernization projects
39
+
40
+ ## Key Features
41
+
42
+ ### v1.0 (MVP - 2 weeks)
43
+ 1. **Scan mode**: Analyze any URL, identify actionable elements
44
+ 2. **Suggest mode**: Generate WebMCP tool definitions as JSON
45
+ 3. **Generate mode**: Output ready-to-use JavaScript code
46
+ 4. **Validate mode**: Check existing WebMCP implementations for compliance
47
+
48
+ ### v1.1 (Week 3-4)
49
+ 5. **Inject mode**: Add annotations to React/Vue/Svelte projects
50
+ 6. **CI integration**: GitHub Actions / GitLab CI support
51
+ 7. **Report mode**: Generate compliance reports
52
+
53
+ ### v2.0 (Month 2)
54
+ 8. **Watch mode**: Monitor sites for changes, suggest updates
55
+ 9. **Catalog integration**: Publish to wmcp-catalog registry
56
+ 10. **Enterprise**: Team workspaces, audit logs, SSO
57
+
58
+ ## Non-Features (Out of Scope)
59
+ - Browser extension (use CLI instead)
60
+ - Visual editor (code-first approach)
61
+ - Hosting/proxy services
62
+ - WebMCP runtime (browser handles that)
63
+
64
+ ## Technical Architecture
65
+
66
+ ### CLI Structure
67
+ ```
68
+ wmcp-annotate <command> [options]
69
+
70
+ Commands:
71
+ scan <url> Analyze a website for WebMCP opportunities
72
+ suggest <url> Generate tool definition suggestions
73
+ generate <url> Output JavaScript registration code
74
+ validate <url> Check WebMCP compliance
75
+ inject <dir> Add annotations to codebase
76
+ report <url> Generate compliance report
77
+
78
+ Options:
79
+ --output, -o Output file (default: stdout)
80
+ --format, -f Output format: json, js, ts, react, vue
81
+ --config, -c Config file path
82
+ --verbose, -v Verbose output
83
+ --headless Run browser in headless mode (default: true)
84
+ ```
85
+
86
+ ### Core Components
87
+ 1. **Scanner**: Playwright-based crawler that identifies forms, buttons, links, API calls
88
+ 2. **Analyzer**: AI-powered analysis to determine tool semantics
89
+ 3. **Generator**: Template engine for JS/TS/React/Vue output
90
+ 4. **Validator**: WebMCP spec compliance checker
91
+ 5. **Injector**: AST-based code modification for existing projects
92
+
93
+ ### Tech Stack
94
+ - **Runtime**: Node.js 20+
95
+ - **Browser**: Playwright
96
+ - **AI**: Claude API for semantic analysis
97
+ - **Parser**: TypeScript compiler API for injection
98
+ - **CLI**: Commander.js
99
+ - **Testing**: Vitest
100
+
101
+ ## Success Metrics
102
+
103
+ ### Week 1
104
+ - [ ] CLI scaffolding complete
105
+ - [ ] Scan command working on 3 test sites
106
+ - [ ] Suggest command generating valid schemas
107
+
108
+ ### Week 2
109
+ - [ ] Generate command outputting working JS
110
+ - [ ] Validate command checking compliance
111
+ - [ ] 10 beta users testing
112
+
113
+ ### Month 1
114
+ - [ ] 100 GitHub stars
115
+ - [ ] 50 npm weekly downloads
116
+ - [ ] 5 paying enterprise customers
117
+ - [ ] $5K MRR
118
+
119
+ ### Month 3
120
+ - [ ] 1000 GitHub stars
121
+ - [ ] 500 npm weekly downloads
122
+ - [ ] 20 paying customers
123
+ - [ ] $25K MRR
124
+
125
+ ## Pricing
126
+
127
+ ### Open Source (Free)
128
+ - Scan, suggest, generate commands
129
+ - Community support
130
+ - Rate-limited AI analysis (10/day)
131
+
132
+ ### Pro ($49/month)
133
+ - Unlimited AI analysis
134
+ - Inject command
135
+ - CI integration
136
+ - Email support
137
+
138
+ ### Enterprise ($499/month)
139
+ - Team workspaces
140
+ - Audit logs
141
+ - SSO/SAML
142
+ - Priority support
143
+ - Custom integrations
144
+
145
+ ## Go-to-Market
146
+
147
+ ### Week 1: Launch
148
+ - [ ] Ship to npm
149
+ - [ ] Post on Hacker News
150
+ - [ ] Twitter/X announcement
151
+ - [ ] Dev.to article: "Make Your Site AI-Agent Ready in 5 Minutes"
152
+
153
+ ### Week 2: Community
154
+ - [ ] Discord server
155
+ - [ ] GitHub discussions
156
+ - [ ] YouTube demo video
157
+ - [ ] Reach out to 50 AI agent builders
158
+
159
+ ### Month 1: Revenue
160
+ - [ ] ProductHunt launch
161
+ - [ ] Paid ads on dev newsletters
162
+ - [ ] Partner with WebMCP early adopters
163
+ - [ ] Enterprise outreach (50 companies)
164
+
165
+ ## Risks & Mitigations
166
+
167
+ | Risk | Impact | Mitigation |
168
+ |------|--------|------------|
169
+ | WebMCP spec changes | High | Version lock, follow W3C group |
170
+ | Competition from Google | High | Move fast, focus on DX |
171
+ | Low adoption | Medium | Strong content marketing |
172
+ | AI analysis quality | Medium | Human review option, feedback loop |
173
+
174
+ ## Team
175
+
176
+ - **Edison** (Avatar Consulting): Product strategy, marketing
177
+ - **Atlas**: Implementation lead
178
+ - **Cipher**: Technical architecture
179
+ - **Aria**: Documentation, content
180
+
181
+ ## Timeline
182
+
183
+ | Week | Milestone |
184
+ |------|-----------|
185
+ | 1 | CLI scaffold, scan/suggest commands |
186
+ | 2 | Generate/validate commands, beta launch |
187
+ | 3 | Inject command, CI integration |
188
+ | 4 | ProductHunt launch, enterprise outreach |
189
+
190
+ ## Appendix
191
+
192
+ ### WebMCP Reference
193
+ - Spec: https://webmcp.link
194
+ - Chrome flags: chrome://flags → WebMCP
195
+ - W3C Community Group: Web Machine Learning CG
196
+
197
+ ### Competitive Landscape
198
+ - No direct competitors yet (first mover advantage)
199
+ - Indirect: Puppeteer, Playwright (low-level), browser extensions