[{"data":1,"prerenderedAt":350},["ShallowReactive",2],{"project-44661673":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":35,"aspects":36,"strip":42,"post_text":44,"what":45,"said":69,"maker_in_thread":167,"shape":177,"grid":181,"attempts":312,"same_week":313,"maker_shows":186,"maker_hidden":342,"reader_version":343,"card":344},"44661673","Apple Health MCP","Apple Health MCP Server","title","Show HN: Apple Health MCP Server","https:\u002F\u002Fgithub.com\u002Fneiltron\u002Fapple-health-mcp","github.com","_neil",1753291403,2025,199,49,329,3837,9,"notable","infrastructure","mcp server for health data","library",[24,25,26,27,28],"apple health","mcp server","duckdb","health data","fitness tracking","loved",0.297,{"positive":32,"neutral":33,"mixed":34,"critical":34},6,13,0,19,{"privacy":37,"execution":38,"idea":39,"docs":41},{"positive":34,"critical":34},{"positive":34,"critical":34},{"positive":40,"critical":34},3,{"positive":34,"critical":34},[40,34,34,40,40,34,34,43,40,34,34,40,34,40,34,34,34,34,43,34,43,34,43,34,40,40,43,34,34,43,34,40,34,34,34,34,34,40,34,40],5,"Hey HN,\n\nThis is an MCP server to chat with Apple Health data. I built it because I'm working on (yet another) personal trainer tool that keeps track of my workout goals, etc. and does scheduling for me. Part of that is weekly check-ins. I thought pairing those check-ins with sensor data could be useful, so here we are.\n\nIt seems there isn't a way to automate access to Apple Health data, so this relies on an iOS app that can quickly\u002Feasily export key data to CSV. So the process at the moment is to export the data every Sunday before doing a check-in. More steps than I'd like, but in practice i",{"problem":46,"audience":52,"pricing":52,"motivation":53,"time_to_build":52,"stack":57,"openness":66,"stage":67,"team_size":68},{"value":47,"source":48,"evidence":49},"Apple Health data cannot be automatically accessed, so chatting with it requires manual CSV exports","maker",[50],{"id":51},"post",null,{"value":54,"source":48,"evidence":55},"Pairing weekly personal trainer check-ins with sensor data",[56],{"id":51},[58,62],{"value":59,"source":48,"evidence":60},"DuckDB",[61],{"id":51},{"value":63,"source":48,"evidence":64},"MCP",[65],{"id":51},"open_source","launched","unknown",{"praise":70,"objections":87,"requests":99,"questions":123,"alternatives":138},[71],{"value":72,"source":73,"evidence":74},"Cool idea and useful for querying health data with AI","commenter",[75,79,83],{"id":76,"by":77,"text":78},"44683323","woodylondon","This is really cool - I recently worked on a tool that I installed on my iPhone, which extracts all health data nightly to CSV and then to a cloud database. This was quite…",{"id":80,"by":81,"text":82},"44683043","friggeri","This is awesome! I’ve been working on and off for the last few months on an AI running coach app. Would love to compare notes of effectively prompting Claude or O3 to analyze…",{"id":84,"by":85,"text":86},"44688858","hahahacorn","Can imagine this is really useful for development too. if RubyLLM.with_tools(...).ask(\"Do my health metrics indicate I am stressed?\") model = 'claude-4-opus' else model =…",[88,92],{"value":89,"source":73,"evidence":90},"Manual CSV export every week is a lot of steps",[91],{"id":51},{"value":93,"source":73,"evidence":94},"Health data is sensitive and should be exported deliberately",[95],{"id":96,"by":97,"text":98},"44683661","mattkrause","I thought this was sort of deliberate for Apple Health. People use it to track sensitive information, like reproductive and mental health data, that should only be exported very…",[100,110,117],{"value":101,"source":73,"evidence":102},"Support the native Apple Health XML export",[103,107],{"id":104,"by":105,"text":106},"44774439","dcreater","Yes, the native export is the whole enchilada. Please do it!",{"id":108,"by":11,"text":109},"44683241","I actually started with this but the export always had the appearance of stalling unless I left it for long periods. For a first version, the CSV export app was much quicker. And…",{"value":111,"source":73,"evidence":112},"Package as a desktop extension for Claude's directory",[113],{"id":114,"by":115,"text":116},"44690146","felixrieseberg","Hey Neil, this is cool! If you package it up as a desktop extension (https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fdxt) and send it to me…",{"value":118,"source":73,"evidence":119},"Add examples of chat questions and answers",[120],{"id":121,"by":105,"text":122},"44699031","Can you please add examples of actual chat questions and answers so that we can understand how it actually performs?",[124,131],{"value":125,"source":73,"evidence":126},"Is any of it open source and what tools are used for the CSV?",[127],{"id":128,"by":129,"text":130},"44690066","pheeney","Is any of it open source? What tools for the CSV? I’d like to build a dashboard of my cycling rides?",{"value":132,"source":73,"evidence":133},"Can arbitrary questions be asked or only predefined ones?",[134],{"id":135,"by":136,"text":137},"44695198","leguy","This is SO freaking cool. I'm doing something similar for a startup, albeit in a different domain and against a massive dataset. Looking at the code (and \"for the future...\" note…",[139,146,153,160],{"value":140,"source":73,"evidence":141},"healthkit-to-sqlite",[142],{"id":143,"by":144,"text":145},"44691912","hcm","Love it! For getting Apple Health data into duckdb, I’ve used this in the past: https:\u002F\u002Fgithub.com\u002Fdogsheep\u002Fhealthkit-to-sqlite. (You can load the SQLite database directly in…",{"value":147,"source":73,"evidence":148},"Health Auto Export app",[149],{"id":150,"by":151,"text":152},"44682653","monatron","Very cool indeed. I started building something similar - relying on Auto Export [https:\u002F\u002Fapps.apple.com\u002Fus\u002Fapp\u002Fhealth-auto-export-json-csv\u002Fid1115567069] to export my health data…",{"value":154,"source":73,"evidence":155},"Fulcra Context",[156],{"id":157,"by":158,"text":159},"44685507","cstone","Hey - if you're interested in prototyping with real data, we've built a platform for stuff like this -- Fulcra Context (https:\u002F\u002Fwww.fulcradynamics.com\u002F). We have an iOS app that…",{"value":161,"source":73,"evidence":162},"atlas parquet tool for Apple Health XML",[163],{"id":164,"by":165,"text":166},"44695955","tosh","If you are looking for a way to explore Apple Health data: I have a proof of concept here that turns the Apple Health export xml file into a timeseries .parquet that you can then…",{"comments":168,"answered":32,"key":169},12,[170,173,174],{"id":171,"text":172},"44683420","Simple Health Export CSV was just the fastest route to proving to myself that the idea would work. I really considered making an app but decided that was one nerd snipe too many…",{"id":108,"text":109},{"id":175,"text":176},"44683595","I haven't gone deep on prompting around health data specifically, but I've built some other data agents. Agree that there isn't always an easy path, depending on the domain. It…",{"commenters":178,"max_depth":43,"maker_replies":168,"first_comment_mins":179,"lifespan_hours":180},33,2607,253,[182,184,187,191,193,197,199,203,206,209,212,213,214,215,218,221,222,225,228,230,233,236,239,243,245,246,247,250,252,254,258,260,263,265,267,271,274,277,280,284,286,289,291,293,297,300,304,306,310],[76,34,40,183,77,34],"project\u002Fneutral\u002Fprivacy",[171,34,34,185,11,186],"maker\u002Fneutral\u002Fnone",1,[188,34,34,189,190,34],"44684210","other\u002Fneutral\u002Fnone","Tom1380",[128,34,40,192,129,34],"project\u002Fneutral\u002Fnone",[194,186,40,195,196,34],"44683114","project\u002Fneutral\u002Fexecution","formerly_proven",[108,186,34,198,11,186],"maker\u002Fneutral\u002Fperformance",[200,186,34,201,202,34],"44683509","commenter\u002Fneutral\u002Fprivacy","NotPractical",[204,186,34,201,205,34],"44693450","echoangle",[80,207,43,208,81,34],2,"project\u002Fpositive\u002Fidea",[210,207,40,192,211,34],"44683150","rikbruggink",[175,207,34,185,11,186],[157,207,34,189,158,34],[143,40,34,189,144,34],[216,40,40,217,105,34],"44699450","maker\u002Fneutral\u002Fidea",[219,40,34,220,11,186],"44706093","maker\u002Fneutral\u002Fexecution",[104,40,40,195,105,34],[150,223,40,224,151,34],4,"project\u002Fneutral\u002Fidea",[226,223,34,189,227,34],"44682954","dkdcio",[96,223,34,229,97,34],"other\u002Fneutral\u002Fprivacy",[231,223,34,232,11,186],"44683761","maker\u002Fneutral\u002Fprivacy",[234,223,34,201,235,34],"44685210","yunohn",[237,223,34,189,238,34],"44683967","s0sa",[240,223,43,241,242,34],"44683212","project\u002Fpositive\u002Fnone","yurishimo",[244,223,34,185,11,186],"44683468",[84,43,43,208,85,34],[164,32,34,189,165,34],[248,32,34,249,11,186],"44706516","commenter\u002Fneutral\u002Fnone",[114,251,43,241,115,34],7,[253,251,34,185,11,186],"44706576",[255,256,40,192,257,34],"44748542",8,"christopherkao",[121,18,40,259,105,34],"project\u002Fneutral\u002Fdocs",[261,18,34,262,11,186],"44706557","maker\u002Fneutral\u002Fdocs",[135,264,43,241,136,34],10,[266,264,34,185,11,186],"44706569",[268,269,34,189,270,34],"44685478",11,"voska",[272,168,43,208,273,34],"44682548","brandonb",[275,168,34,189,276,34],"44682655","guzik",[278,33,40,224,279,34],"44687769","beaker52",[281,282,40,192,283,34],"44684966",14,"solarkraft",[285,282,34,189,158,34],"44685680",[287,282,34,189,288,34],"44686710","neomantra",[290,282,34,189,288,34],"44689345",[292,282,34,189,288,34],"44694508",[294,295,34,229,296,34],"44688433",15,"vincvinc",[298,295,34,249,299,34],"44691286","Tempest1981",[301,302,40,192,303,34],"44685962",16,"ellisv",[305,302,34,185,11,186],"44706605",[307,308,40,192,309,34],"44683128",17,"dostick",[311,308,34,185,11,186],"44683266",[],[314,319,324,328,333,337],{"id":315,"name":316,"points":317,"category":318},"44664873","Tender",1030,"consumer_social",{"id":320,"name":321,"points":322,"category":323},"44594584","Conductor",228,"dev_tools",{"id":325,"name":326,"points":327,"category":20},"44630648","connmap",205,{"id":329,"name":330,"points":331,"category":332},"44613438","Compass CNC",176,"hardware",{"id":334,"name":335,"points":336,"category":20},"44662497","TheProtector",167,{"id":338,"name":339,"points":340,"category":341},"44622374","blender-mcp",151,"creative",false,"v2",{"id":345,"name":5,"line":6,"ai":342,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":346,"top":18,"kw":347,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":348,"url":9,"mix":349,"praise":72,"objection":89,"sub":21},44661673,0.3,[24,25,26,27,28],"3003300530030300005050503350050300000303",[32,33,34,34],1794036679006]