bobo-ai-cli 1.0.1

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 (234) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +216 -0
  3. package/dist/agent.d.ts +9 -0
  4. package/dist/agent.js +144 -0
  5. package/dist/agent.js.map +1 -0
  6. package/dist/config.d.ts +15 -0
  7. package/dist/config.js +76 -0
  8. package/dist/config.js.map +1 -0
  9. package/dist/index.d.ts +2 -0
  10. package/dist/index.js +366 -0
  11. package/dist/index.js.map +1 -0
  12. package/dist/knowledge-commands.d.ts +2 -0
  13. package/dist/knowledge-commands.js +40 -0
  14. package/dist/knowledge-commands.js.map +1 -0
  15. package/dist/knowledge.d.ts +17 -0
  16. package/dist/knowledge.js +112 -0
  17. package/dist/knowledge.js.map +1 -0
  18. package/dist/memory.d.ts +17 -0
  19. package/dist/memory.js +215 -0
  20. package/dist/memory.js.map +1 -0
  21. package/dist/planner.d.ts +22 -0
  22. package/dist/planner.js +130 -0
  23. package/dist/planner.js.map +1 -0
  24. package/dist/project.d.ts +25 -0
  25. package/dist/project.js +117 -0
  26. package/dist/project.js.map +1 -0
  27. package/dist/rules-commands.d.ts +2 -0
  28. package/dist/rules-commands.js +51 -0
  29. package/dist/rules-commands.js.map +1 -0
  30. package/dist/skills.d.ts +28 -0
  31. package/dist/skills.js +349 -0
  32. package/dist/skills.js.map +1 -0
  33. package/dist/structured/loader.d.ts +19 -0
  34. package/dist/structured/loader.js +147 -0
  35. package/dist/structured/loader.js.map +1 -0
  36. package/dist/structured/paths.d.ts +2 -0
  37. package/dist/structured/paths.js +14 -0
  38. package/dist/structured/paths.js.map +1 -0
  39. package/dist/structured/project-scaffold.d.ts +7 -0
  40. package/dist/structured/project-scaffold.js +60 -0
  41. package/dist/structured/project-scaffold.js.map +1 -0
  42. package/dist/structured/render-markdown.d.ts +37 -0
  43. package/dist/structured/render-markdown.js +47 -0
  44. package/dist/structured/render-markdown.js.map +1 -0
  45. package/dist/structured/render-table.d.ts +1 -0
  46. package/dist/structured/render-table.js +15 -0
  47. package/dist/structured/render-table.js.map +1 -0
  48. package/dist/structured/search.d.ts +10 -0
  49. package/dist/structured/search.js +104 -0
  50. package/dist/structured/search.js.map +1 -0
  51. package/dist/structured/skill-runner.d.ts +15 -0
  52. package/dist/structured/skill-runner.js +60 -0
  53. package/dist/structured/skill-runner.js.map +1 -0
  54. package/dist/structured/types.d.ts +212 -0
  55. package/dist/structured/types.js +97 -0
  56. package/dist/structured/types.js.map +1 -0
  57. package/dist/structured-skills-commands.d.ts +3 -0
  58. package/dist/structured-skills-commands.js +126 -0
  59. package/dist/structured-skills-commands.js.map +1 -0
  60. package/dist/structured-template-commands.d.ts +2 -0
  61. package/dist/structured-template-commands.js +34 -0
  62. package/dist/structured-template-commands.js.map +1 -0
  63. package/dist/tools/index.d.ts +3 -0
  64. package/dist/tools/index.js +450 -0
  65. package/dist/tools/index.js.map +1 -0
  66. package/dist/ui.d.ts +19 -0
  67. package/dist/ui.js +72 -0
  68. package/dist/ui.js.map +1 -0
  69. package/dist/web.d.ts +4 -0
  70. package/dist/web.js +124 -0
  71. package/dist/web.js.map +1 -0
  72. package/knowledge/advanced-patterns.md +70 -0
  73. package/knowledge/agent-directives.md +74 -0
  74. package/knowledge/dream.md +36 -0
  75. package/knowledge/engineering.md +46 -0
  76. package/knowledge/error-catalog.md +33 -0
  77. package/knowledge/index.json +170 -0
  78. package/knowledge/memory/cache-optimization-and-skill-integration.md +102 -0
  79. package/knowledge/memory/engineering-patterns.md +134 -0
  80. package/knowledge/memory/feedback_root_structure.md +16 -0
  81. package/knowledge/memory/project-contexts.md +69 -0
  82. package/knowledge/memory/tools-and-services.md +85 -0
  83. package/knowledge/rules/agents.md +62 -0
  84. package/knowledge/rules/blocking-rules.md +323 -0
  85. package/knowledge/rules/cache-management.md +379 -0
  86. package/knowledge/rules/capability-evolution.md +132 -0
  87. package/knowledge/rules/coding.md +126 -0
  88. package/knowledge/rules/engineering-workflows.md +225 -0
  89. package/knowledge/rules/evomap-content-guidelines.md +354 -0
  90. package/knowledge/rules/evomap-guide.md +224 -0
  91. package/knowledge/rules/git.md +31 -0
  92. package/knowledge/rules/hooks.md +106 -0
  93. package/knowledge/rules/performance.md +101 -0
  94. package/knowledge/rules/remotion-auto-production.md +1120 -0
  95. package/knowledge/rules/security.md +46 -0
  96. package/knowledge/rules/testing.md +32 -0
  97. package/knowledge/rules/work-mode.md +208 -0
  98. package/knowledge/rules.md +62 -0
  99. package/knowledge/skills/Skill_Seekers.md +1722 -0
  100. package/knowledge/skills/ab-test-setup.md +557 -0
  101. package/knowledge/skills/agent-sdk-dev.md +238 -0
  102. package/knowledge/skills/agent-tools.md +136 -0
  103. package/knowledge/skills/analytics-tracking.md +597 -0
  104. package/knowledge/skills/artifacts-builder.md +89 -0
  105. package/knowledge/skills/asana.md +13 -0
  106. package/knowledge/skills/backend-expert.md +97 -0
  107. package/knowledge/skills/brand-voice.md +481 -0
  108. package/knowledge/skills/browser-use.md +419 -0
  109. package/knowledge/skills/cache-optimization-skill.md +179 -0
  110. package/knowledge/skills/canvas-design.md +147 -0
  111. package/knowledge/skills/citation-validator.md +203 -0
  112. package/knowledge/skills/clangd-lsp.md +52 -0
  113. package/knowledge/skills/code-review-expert.md +85 -0
  114. package/knowledge/skills/code-review.md +280 -0
  115. package/knowledge/skills/code-simplifier.md +13 -0
  116. package/knowledge/skills/commit-commands.md +258 -0
  117. package/knowledge/skills/competitor-alternatives.md +795 -0
  118. package/knowledge/skills/content-atomizer.md +910 -0
  119. package/knowledge/skills/content-research-writer.md +605 -0
  120. package/knowledge/skills/context-optimization-suite.md +162 -0
  121. package/knowledge/skills/context7.md +13 -0
  122. package/knowledge/skills/copy-editing.md +494 -0
  123. package/knowledge/skills/copywriting.md +510 -0
  124. package/knowledge/skills/csharp-lsp.md +40 -0
  125. package/knowledge/skills/decision-making-framework.md +154 -0
  126. package/knowledge/skills/developer-growth-analysis.md +335 -0
  127. package/knowledge/skills/direct-response-copy.md +2336 -0
  128. package/knowledge/skills/docker-expert.md +229 -0
  129. package/knowledge/skills/document-skills.md +13 -0
  130. package/knowledge/skills/documentation-expert.md +126 -0
  131. package/knowledge/skills/email-sequence.md +1061 -0
  132. package/knowledge/skills/email-sequences.md +910 -0
  133. package/knowledge/skills/example-plugin.md +72 -0
  134. package/knowledge/skills/explanatory-output-style.md +82 -0
  135. package/knowledge/skills/feature-dev.md +458 -0
  136. package/knowledge/skills/file-organizer.md +466 -0
  137. package/knowledge/skills/firebase.disabled.md +13 -0
  138. package/knowledge/skills/form-cro.md +488 -0
  139. package/knowledge/skills/free-tool-strategy.md +636 -0
  140. package/knowledge/skills/frontend-design-offical.md +55 -0
  141. package/knowledge/skills/frontend-design.md +41 -0
  142. package/knowledge/skills/frontend-expert.md +93 -0
  143. package/knowledge/skills/github.md +13 -0
  144. package/knowledge/skills/gitlab.md +13 -0
  145. package/knowledge/skills/gopls-lsp.md +32 -0
  146. package/knowledge/skills/got-controller.md +218 -0
  147. package/knowledge/skills/greptile.md +72 -0
  148. package/knowledge/skills/hookify.md +376 -0
  149. package/knowledge/skills/image-editor.md +189 -0
  150. package/knowledge/skills/image-enhancer.md +109 -0
  151. package/knowledge/skills/jdtls-lsp.md +49 -0
  152. package/knowledge/skills/json-canvas.md +654 -0
  153. package/knowledge/skills/keyword-research.md +559 -0
  154. package/knowledge/skills/kotlin-lsp.md +28 -0
  155. package/knowledge/skills/laravel-boost.md +13 -0
  156. package/knowledge/skills/launch-strategy.md +394 -0
  157. package/knowledge/skills/lead-magnet.md +393 -0
  158. package/knowledge/skills/learning-output-style.md +106 -0
  159. package/knowledge/skills/linear.md +13 -0
  160. package/knowledge/skills/lua-lsp.md +47 -0
  161. package/knowledge/skills/marketing-ideas.md +720 -0
  162. package/knowledge/skills/marketing-psychology.md +534 -0
  163. package/knowledge/skills/mcp-builder.md +369 -0
  164. package/knowledge/skills/meeting-insights-analyzer.md +347 -0
  165. package/knowledge/skills/memory-evolution-system.md +172 -0
  166. package/knowledge/skills/multi-lens-thinking.md +407 -0
  167. package/knowledge/skills/nano-banana-pro.md +116 -0
  168. package/knowledge/skills/newsletter.md +736 -0
  169. package/knowledge/skills/notebooklm.md +296 -0
  170. package/knowledge/skills/obsidian-bases.md +634 -0
  171. package/knowledge/skills/obsidian-markdown.md +651 -0
  172. package/knowledge/skills/onboarding-cro.md +494 -0
  173. package/knowledge/skills/orchestrator.md +681 -0
  174. package/knowledge/skills/page-cro.md +379 -0
  175. package/knowledge/skills/paid-ads.md +624 -0
  176. package/knowledge/skills/paywall-upgrade-cro.md +651 -0
  177. package/knowledge/skills/php-lsp.md +36 -0
  178. package/knowledge/skills/planning-with-files.md +193 -0
  179. package/knowledge/skills/playwright.md +13 -0
  180. package/knowledge/skills/plugin-dev.md +434 -0
  181. package/knowledge/skills/popup-cro.md +520 -0
  182. package/knowledge/skills/positioning-angles.md +330 -0
  183. package/knowledge/skills/pr-review-toolkit.md +359 -0
  184. package/knowledge/skills/pricing-strategy.md +777 -0
  185. package/knowledge/skills/programmatic-seo.md +714 -0
  186. package/knowledge/skills/pyright-lsp.md +43 -0
  187. package/knowledge/skills/quality-assurance-framework.md +168 -0
  188. package/knowledge/skills/question-refiner.md +160 -0
  189. package/knowledge/skills/ralph-loop.md +205 -0
  190. package/knowledge/skills/refactoring-expert.md +103 -0
  191. package/knowledge/skills/referral-program.md +668 -0
  192. package/knowledge/skills/research-executor.md +164 -0
  193. package/knowledge/skills/review-with-security.md +12 -0
  194. package/knowledge/skills/rust-analyzer-lsp.md +50 -0
  195. package/knowledge/skills/schema-markup.md +647 -0
  196. package/knowledge/skills/security-audit-expert.md +124 -0
  197. package/knowledge/skills/security-expert.md +140 -0
  198. package/knowledge/skills/security-guidance.md +13 -0
  199. package/knowledge/skills/seedance-prompt.md +139 -0
  200. package/knowledge/skills/self-evolution.md +1160 -0
  201. package/knowledge/skills/seo-audit.md +432 -0
  202. package/knowledge/skills/seo-content.md +787 -0
  203. package/knowledge/skills/serena.md +13 -0
  204. package/knowledge/skills/signup-flow-cro.md +409 -0
  205. package/knowledge/skills/skill-creator.md +220 -0
  206. package/knowledge/skills/skill-manager.md +226 -0
  207. package/knowledge/skills/skill-share.md +98 -0
  208. package/knowledge/skills/slack.md +13 -0
  209. package/knowledge/skills/social-content.md +878 -0
  210. package/knowledge/skills/spec-flow-skill.md +124 -0
  211. package/knowledge/skills/stripe.md +13 -0
  212. package/knowledge/skills/supabase.md +13 -0
  213. package/knowledge/skills/swift-lsp.md +40 -0
  214. package/knowledge/skills/synthesizer.md +236 -0
  215. package/knowledge/skills/template-skill.md +16 -0
  216. package/knowledge/skills/testing-expert.md +99 -0
  217. package/knowledge/skills/theme-factory.md +72 -0
  218. package/knowledge/skills/tiktok-research.md +208 -0
  219. package/knowledge/skills/typescript-lsp.md +36 -0
  220. package/knowledge/skills/ui-ux-pro-max.md +247 -0
  221. package/knowledge/skills/verify.md +15 -0
  222. package/knowledge/skills/visual-prompt-engineer.md +102 -0
  223. package/knowledge/skills/webapp-testing.md +111 -0
  224. package/knowledge/skills/wide-research.md +191 -0
  225. package/knowledge/system.md +93 -0
  226. package/knowledge/task-router.md +37 -0
  227. package/knowledge/verification.md +38 -0
  228. package/knowledge/workflows/3d-viz.md +47 -0
  229. package/knowledge/workflows/data-pipeline.md +47 -0
  230. package/knowledge/workflows/db-migration.md +51 -0
  231. package/knowledge/workflows/feature-dev.md +41 -0
  232. package/knowledge/workflows/tdd-flow.md +52 -0
  233. package/knowledge/workflows/ui-verify.md +51 -0
  234. package/package.json +60 -0
@@ -0,0 +1,369 @@
1
+ ---
2
+ id: "mcp-builder"
3
+ title: "MCP Server Development Guide"
4
+ category: "dev-tools"
5
+ tags: ["mcp server development guide", "overview", "process", "🚀 high-level workflow", "reference files", "📚 documentation library"]
6
+ triggers: []
7
+ dependencies: []
8
+ source: "E:/Bobo's Coding cache/.claude/skills/mcp-builder"
9
+ ---
10
+
11
+ ---
12
+ name: mcp-builder
13
+ description: Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
14
+ license: Complete terms in LICENSE.txt
15
+ ---
16
+
17
+ # MCP Server Development Guide
18
+
19
+ ## Overview
20
+
21
+ To create high-quality MCP (Model Context Protocol) servers that enable LLMs to effectively interact with external services, use this skill. An MCP server provides tools that allow LLMs to access external services and APIs. The quality of an MCP server is measured by how well it enables LLMs to accomplish real-world tasks using the tools provided.
22
+
23
+ ---
24
+
25
+ # Process
26
+
27
+ ## 🚀 High-Level Workflow
28
+
29
+ Creating a high-quality MCP server involves four main phases:
30
+
31
+ ### Phase 1: Deep Research and Planning
32
+
33
+ #### 1.1 Understand Agent-Centric Design Principles
34
+
35
+ Before diving into implementation, understand how to design tools for AI agents by reviewing these principles:
36
+
37
+ **Build for Workflows, Not Just API Endpoints:**
38
+
39
+ - Don't simply wrap existing API endpoints - build thoughtful, high-impact workflow tools
40
+ - Consolidate related operations (e.g., `schedule_event` that both checks availability and creates event)
41
+ - Focus on tools that enable complete tasks, not just individual API calls
42
+ - Consider what workflows agents actually need to accomplish
43
+
44
+ **Optimize for Limited Context:**
45
+
46
+ - Agents have constrained context windows - make every token count
47
+ - Return high-signal information, not exhaustive data dumps
48
+ - Provide "concise" vs "detailed" response format options
49
+ - Default to human-readable identifiers over technical codes (names over IDs)
50
+ - Consider the agent's context budget as a scarce resource
51
+
52
+ **Design Actionable Error Messages:**
53
+
54
+ - Error messages should guide agents toward correct usage patterns
55
+ - Suggest specific next steps: "Try using filter='active_only' to reduce results"
56
+ - Make errors educational, not just diagnostic
57
+ - Help agents learn proper tool usage through clear feedback
58
+
59
+ **Follow Natural Task Subdivisions:**
60
+
61
+ - Tool names should reflect how humans think about tasks
62
+ - Group related tools with consistent prefixes for discoverability
63
+ - Design tools around natural workflows, not just API structure
64
+
65
+ **Use Evaluation-Driven Development:**
66
+
67
+ - Create realistic evaluation scenarios early
68
+ - Let agent feedback drive tool improvements
69
+ - Prototype quickly and iterate based on actual agent performance
70
+
71
+ #### 1.3 Study MCP Protocol Documentation
72
+
73
+ **Fetch the latest MCP protocol documentation:**
74
+
75
+ Use WebFetch to load: `https://modelcontextprotocol.io/llms-full.txt`
76
+
77
+ This comprehensive document contains the complete MCP specification and guidelines.
78
+
79
+ #### 1.4 Study Framework Documentation
80
+
81
+ **Load and read the following reference files:**
82
+
83
+ - **MCP Best Practices**: [📋 View Best Practices](./reference/mcp_best_practices.md) - Core guidelines for all MCP servers
84
+
85
+ **For Python implementations, also load:**
86
+
87
+ - **Python SDK Documentation**: Use WebFetch to load `https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md`
88
+ - [🐍 Python Implementation Guide](./reference/python_mcp_server.md) - Python-specific best practices and examples
89
+
90
+ **For Node/TypeScript implementations, also load:**
91
+
92
+ - **TypeScript SDK Documentation**: Use WebFetch to load `https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md`
93
+ - [⚡ TypeScript Implementation Guide](./reference/node_mcp_server.md) - Node/TypeScript-specific best practices and examples
94
+
95
+ #### 1.5 Exhaustively Study API Documentation
96
+
97
+ To integrate a service, read through **ALL** available API documentation:
98
+
99
+ - Official API reference documentation
100
+ - Authentication and authorization requirements
101
+ - Rate limiting and pagination patterns
102
+ - Error responses and status codes
103
+ - Available endpoints and their parameters
104
+ - Data models and schemas
105
+
106
+ **To gather comprehensive information, use web search and the WebFetch tool as needed.**
107
+
108
+ #### 1.6 Create a Comprehensive Implementation Plan
109
+
110
+ Based on your research, create a detailed plan that includes:
111
+
112
+ **Tool Selection:**
113
+
114
+ - List the most valuable endpoints/operations to implement
115
+ - Prioritize tools that enable the most common and important use cases
116
+ - Consider which tools work together to enable complex workflows
117
+
118
+ **Shared Utilities and Helpers:**
119
+
120
+ - Identify common API request patterns
121
+ - Plan pagination helpers
122
+ - Design filtering and formatting utilities
123
+ - Plan error handling strategies
124
+
125
+ **Input/Output Design:**
126
+
127
+ - Define input validation models (Pydantic for Python, Zod for TypeScript)
128
+ - Design consistent response formats (e.g., JSON or Markdown), and configurable levels of detail (e.g., Detailed or Concise)
129
+ - Plan for large-scale usage (thousands of users/resources)
130
+ - Implement character limits and truncation strategies (e.g., 25,000 tokens)
131
+
132
+ **Error Handling Strategy:**
133
+
134
+ - Plan graceful failure modes
135
+ - Design clear, actionable, LLM-friendly, natural language error messages which prompt further action
136
+ - Consider rate limiting and timeout scenarios
137
+ - Handle authentication and authorization errors
138
+
139
+ ---
140
+
141
+ ### Phase 2: Implementation
142
+
143
+ Now that you have a comprehensive plan, begin implementation following language-specific best practices.
144
+
145
+ #### 2.1 Set Up Project Structure
146
+
147
+ **For Python:**
148
+
149
+ - Create a single `.py` file or organize into modules if complex (see [🐍 Python Guide](./reference/python_mcp_server.md))
150
+ - Use the MCP Python SDK for tool registration
151
+ - Define Pydantic models for input validation
152
+
153
+ **For Node/TypeScript:**
154
+
155
+ - Create proper project structure (see [⚡ TypeScript Guide](./reference/node_mcp_server.md))
156
+ - Set up `package.json` and `tsconfig.json`
157
+ - Use MCP TypeScript SDK
158
+ - Define Zod schemas for input validation
159
+
160
+ #### 2.2 Implement Core Infrastructure First
161
+
162
+ **To begin implementation, create shared utilities before implementing tools:**
163
+
164
+ - API request helper functions
165
+ - Error handling utilities
166
+ - Response formatting functions (JSON and Markdown)
167
+ - Pagination helpers
168
+ - Authentication/token management
169
+
170
+ #### 2.3 Implement Tools Systematically
171
+
172
+ For each tool in the plan:
173
+
174
+ **Define Input Schema:**
175
+
176
+ - Use Pydantic (Python) or Zod (TypeScript) for validation
177
+ - Include proper constraints (min/max length, regex patterns, min/max values, ranges)
178
+ - Provide clear, descriptive field descriptions
179
+ - Include diverse examples in field descriptions
180
+
181
+ **Write Comprehensive Docstrings/Descriptions:**
182
+
183
+ - One-line summary of what the tool does
184
+ - Detailed explanation of purpose and functionality
185
+ - Explicit parameter types with examples
186
+ - Complete return type schema
187
+ - Usage examples (when to use, when not to use)
188
+ - Error handling documentation, which outlines how to proceed given specific errors
189
+
190
+ **Implement Tool Logic:**
191
+
192
+ - Use shared utilities to avoid code duplication
193
+ - Follow async/await patterns for all I/O
194
+ - Implement proper error handling
195
+ - Support multiple response formats (JSON and Markdown)
196
+ - Respect pagination parameters
197
+ - Check character limits and truncate appropriately
198
+
199
+ **Add Tool Annotations:**
200
+
201
+ - `readOnlyHint`: true (for read-only operations)
202
+ - `destructiveHint`: false (for non-destructive operations)
203
+ - `idempotentHint`: true (if repeated calls have same effect)
204
+ - `openWorldHint`: true (if interacting with external systems)
205
+
206
+ #### 2.4 Follow Language-Specific Best Practices
207
+
208
+ **At this point, load the appropriate language guide:**
209
+
210
+ **For Python: Load [🐍 Python Implementation Guide](./reference/python_mcp_server.md) and ensure the following:**
211
+
212
+ - Using MCP Python SDK with proper tool registration
213
+ - Pydantic v2 models with `model_config`
214
+ - Type hints throughout
215
+ - Async/await for all I/O operations
216
+ - Proper imports organization
217
+ - Module-level constants (CHARACTER_LIMIT, API_BASE_URL)
218
+
219
+ **For Node/TypeScript: Load [⚡ TypeScript Implementation Guide](./reference/node_mcp_server.md) and ensure the following:**
220
+
221
+ - Using `server.registerTool` properly
222
+ - Zod schemas with `.strict()`
223
+ - TypeScript strict mode enabled
224
+ - No `any` types - use proper types
225
+ - Explicit Promise<T> return types
226
+ - Build process configured (`npm run build`)
227
+
228
+ ---
229
+
230
+ ### Phase 3: Review and Refine
231
+
232
+ After initial implementation:
233
+
234
+ #### 3.1 Code Quality Review
235
+
236
+ To ensure quality, review the code for:
237
+
238
+ - **DRY Principle**: No duplicated code between tools
239
+ - **Composability**: Shared logic extracted into functions
240
+ - **Consistency**: Similar operations return similar formats
241
+ - **Error Handling**: All external calls have error handling
242
+ - **Type Safety**: Full type coverage (Python type hints, TypeScript types)
243
+ - **Documentation**: Every tool has comprehensive docstrings/descriptions
244
+
245
+ #### 3.2 Test and Build
246
+
247
+ **Important:** MCP servers are long-running processes that wait for requests over stdio/stdin or sse/http. Running them directly in your main process (e.g., `python server.py` or `node dist/index.js`) will cause your process to hang indefinitely.
248
+
249
+ **Safe ways to test the server:**
250
+
251
+ - Use the evaluation harness (see Phase 4) - recommended approach
252
+ - Run the server in tmux to keep it outside your main process
253
+ - Use a timeout when testing: `timeout 5s python server.py`
254
+
255
+ **For Python:**
256
+
257
+ - Verify Python syntax: `python -m py_compile your_server.py`
258
+ - Check imports work correctly by reviewing the file
259
+ - To manually test: Run server in tmux, then test with evaluation harness in main process
260
+ - Or use the evaluation harness directly (it manages the server for stdio transport)
261
+
262
+ **For Node/TypeScript:**
263
+
264
+ - Run `npm run build` and ensure it completes without errors
265
+ - Verify dist/index.js is created
266
+ - To manually test: Run server in tmux, then test with evaluation harness in main process
267
+ - Or use the evaluation harness directly (it manages the server for stdio transport)
268
+
269
+ #### 3.3 Use Quality Checklist
270
+
271
+ To verify implementation quality, load the appropriate checklist from the language-specific guide:
272
+
273
+ - Python: see "Quality Checklist" in [🐍 Python Guide](./reference/python_mcp_server.md)
274
+ - Node/TypeScript: see "Quality Checklist" in [⚡ TypeScript Guide](./reference/node_mcp_server.md)
275
+
276
+ ---
277
+
278
+ ### Phase 4: Create Evaluations
279
+
280
+ After implementing your MCP server, create comprehensive evaluations to test its effectiveness.
281
+
282
+ **Load [✅ Evaluation Guide](./reference/evaluation.md) for complete evaluation guidelines.**
283
+
284
+ #### 4.1 Understand Evaluation Purpose
285
+
286
+ Evaluations test whether LLMs can effectively use your MCP server to answer realistic, complex questions.
287
+
288
+ #### 4.2 Create 10 Evaluation Questions
289
+
290
+ To create effective evaluations, follow the process outlined in the evaluation guide:
291
+
292
+ 1. **Tool Inspection**: List available tools and understand their capabilities
293
+ 2. **Content Exploration**: Use READ-ONLY operations to explore available data
294
+ 3. **Question Generation**: Create 10 complex, realistic questions
295
+ 4. **Answer Verification**: Solve each question yourself to verify answers
296
+
297
+ #### 4.3 Evaluation Requirements
298
+
299
+ Each question must be:
300
+
301
+ - **Independent**: Not dependent on other questions
302
+ - **Read-only**: Only non-destructive operations required
303
+ - **Complex**: Requiring multiple tool calls and deep exploration
304
+ - **Realistic**: Based on real use cases humans would care about
305
+ - **Verifiable**: Single, clear answer that can be verified by string comparison
306
+ - **Stable**: Answer won't change over time
307
+
308
+ #### 4.4 Output Format
309
+
310
+ Create an XML file with this structure:
311
+
312
+ ```xml
313
+ <evaluation>
314
+ <qa_pair>
315
+ <question>Find discussions about AI model launches with animal codenames. One model needed a specific safety designation that uses the format ASL-X. What number X was being determined for the model named after a spotted wild cat?</question>
316
+ <answer>3</answer>
317
+ </qa_pair>
318
+ <!-- More qa_pairs... -->
319
+ </evaluation>
320
+ ```
321
+
322
+ ---
323
+
324
+ # Reference Files
325
+
326
+ ## 📚 Documentation Library
327
+
328
+ Load these resources as needed during development:
329
+
330
+ ### Core MCP Documentation (Load First)
331
+
332
+ - **MCP Protocol**: Fetch from `https://modelcontextprotocol.io/llms-full.txt` - Complete MCP specification
333
+ - [📋 MCP Best Practices](./reference/mcp_best_practices.md) - Universal MCP guidelines including:
334
+ - Server and tool naming conventions
335
+ - Response format guidelines (JSON vs Markdown)
336
+ - Pagination best practices
337
+ - Character limits and truncation strategies
338
+ - Tool development guidelines
339
+ - Security and error handling standards
340
+
341
+ ### SDK Documentation (Load During Phase 1/2)
342
+
343
+ - **Python SDK**: Fetch from `https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md`
344
+ - **TypeScript SDK**: Fetch from `https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md`
345
+
346
+ ### Language-Specific Implementation Guides (Load During Phase 2)
347
+
348
+ - [🐍 Python Implementation Guide](./reference/python_mcp_server.md) - Complete Python/FastMCP guide with:
349
+ - Server initialization patterns
350
+ - Pydantic model examples
351
+ - Tool registration with `@mcp.tool`
352
+ - Complete working examples
353
+ - Quality checklist
354
+
355
+ - [⚡ TypeScript Implementation Guide](./reference/node_mcp_server.md) - Complete TypeScript guide with:
356
+ - Project structure
357
+ - Zod schema patterns
358
+ - Tool registration with `server.registerTool`
359
+ - Complete working examples
360
+ - Quality checklist
361
+
362
+ ### Evaluation Guide (Load During Phase 4)
363
+
364
+ - [✅ Evaluation Guide](./reference/evaluation.md) - Complete evaluation creation guide with:
365
+ - Question creation guidelines
366
+ - Answer verification strategies
367
+ - XML format specifications
368
+ - Example questions and answers
369
+ - Running an evaluation with the provided scripts