Spaces:
Running
Running
finished reading Strategy to Win the MCP Tool/Server Hackathon Track paper
Browse files- docs/idea.md +3 -1
- docs/implementation_plan.md +50 -0
docs/idea.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1 |
Develop a medical-symptom MCP server that takes patient-entered symptoms, maps them to ICD-10 codes via a local knowledge base, and returns a JSON of probable diagnoses with confidence scores.
|
2 |
|
3 |
-
Verdict: Your medical symptom → ICD-10 MCP server idea appears to be a strong candidate for winning. It aligns with a high-impact, real-world problem, demonstrates a structured use of AI (which highlights technical skill), and can be made user-friendly as an API/tool. It’s also something you’re motivated by (you even have a PhD contact interested in it), which is important for execution. Furthermore, since another team is working on clinical triage, it validates the domain – but you can differentiate your project by focusing on ICD-10 coding and confidence scoring, giving it a unique edge.
|
|
|
|
|
|
1 |
Develop a medical-symptom MCP server that takes patient-entered symptoms, maps them to ICD-10 codes via a local knowledge base, and returns a JSON of probable diagnoses with confidence scores.
|
2 |
|
3 |
+
Verdict: Your medical symptom → ICD-10 MCP server idea appears to be a strong candidate for winning. It aligns with a high-impact, real-world problem, demonstrates a structured use of AI (which highlights technical skill), and can be made user-friendly as an API/tool. It’s also something you’re motivated by (you even have a PhD contact interested in it), which is important for execution. Furthermore, since another team is working on clinical triage, it validates the domain – but you can differentiate your project by focusing on ICD-10 coding and confidence scoring, giving it a unique edge.
|
4 |
+
|
5 |
+
To win: Highlight the Use of Credits/Tech in Submission: Explicitly mention in your README or presentation how you utilized the provided resources. For example: “This project was built using Modal’s cloud GPUs to preprocess data, OpenAI’s GPT-4 for code validation (using hackathon API credits), and LlamaIndex for efficient retrieval.” This not only gives credit to the sponsors (good etiquette) but also reinforces that you made the most of the hackathon’s offerings – a trait of a resourceful hacker.
|
docs/implementation_plan.md
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
* [ ] Gather ICD-10 data
|
2 |
+
|
3 |
+
* [x] Obtain dataset from CMS/CDC or Kaggle
|
4 |
+
* [ ] Download CSV of ICD-10-CM codes (\~70k entries)
|
5 |
+
* [ ] Load data into application or database
|
6 |
+
|
7 |
+
* [ ] Build search/lookup functionality
|
8 |
+
|
9 |
+
* [ ] Implement keyword filter for description matching
|
10 |
+
* [ ] Generate embeddings for each ICD description (offline)
|
11 |
+
* [ ] Build vector index (FAISS, Annoy, or numpy)
|
12 |
+
* [ ] Embed user query and perform nearest-neighbor search
|
13 |
+
|
14 |
+
* [ ] Combine code and description lookup into MCP API
|
15 |
+
|
16 |
+
* [ ] Accept input as code (lookup definition) or description (search codes)
|
17 |
+
* [ ] Return list of candidate codes with descriptions
|
18 |
+
|
19 |
+
* [ ] Integrate LLM for refinement (optional)
|
20 |
+
|
21 |
+
* [ ] Use GPT-4 or Claude to select best code from top-N results
|
22 |
+
* [ ] Prompt LLM to generate short rationale for selected code
|
23 |
+
* [ ] Cache LLM prompts and responses to conserve tokens
|
24 |
+
|
25 |
+
* [ ] Build MCP server (Gradio App)
|
26 |
+
|
27 |
+
* [ ] Create Gradio UI with text input and output area
|
28 |
+
* [ ] Implement backend logic to expose API endpoint or STDIO interface per MCP standards
|
29 |
+
* [ ] Tag Space with “mcp-server-track” and configure /api route
|
30 |
+
* [ ] Test connectivity with MCP client (e.g., Cursor IDE or Claude Desktop)
|
31 |
+
|
32 |
+
* [ ] Test with realistic inputs
|
33 |
+
|
34 |
+
* [ ] Simple case: “Type 1 diabetes mellitus” → expect E10.9
|
35 |
+
* [ ] Complex case: “Acute MI involving LAD” → expect I21.02 or related code
|
36 |
+
* [ ] Edge case: Typos or layman terms (e.g., “heart attack”) → verify semantic search or add spell-check
|
37 |
+
* [ ] Compare tool output to expected codes (use ChatGPT or reference lists)
|
38 |
+
|
39 |
+
* [ ] Optimize and cache
|
40 |
+
|
41 |
+
* [ ] Precompute embeddings for entire code database
|
42 |
+
* [ ] Cache embeddings of frequent queries
|
43 |
+
* [ ] Cache LLM explanations in memory or simple key-value store
|
44 |
+
* [ ] Choose deployment hardware (GPU-backed if running local embedding model; CPU if precomputed)
|
45 |
+
|
46 |
+
* [ ] Polish documentation & demo
|
47 |
+
|
48 |
+
* [ ] Write README.md with tool description, architecture outline, research citations, and sponsor acknowledgments
|
49 |
+
* [ ] Prepare 2–3 minute demo video showing Gradio UI and AI agent calling the MCP server
|
50 |
+
* [ ] Share project on community channels (Discord, YouTube) for feedback and visibility
|