{"name":"io.github.nries1/tend-mcp","slug":"nries1-tend-mcp","title":null,"description":"Unofficial MCP server for Tend Dental appointment booking. Not affiliated with Tend.","url":"https://mcp.market/server/nries1-tend-mcp","rating":null,"grade":"B","score":78,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":17,"stars":0,"forks":0,"downloads_week":22,"last_push_at":"2026-08-02T20:20:29.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/nries1/tend-mcp","website":null,"version":"0.1.2","remotes":[],"packages":[{"registryType":"npm","identifier":"tend-mcp","version":"0.1.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your Tend account email.","isRequired":true,"format":"string","name":"TEND_EMAIL"},{"description":"Your Tend account password. Set this OR TEND_REFRESH_TOKEN, not both required.","format":"string","isSecret":true,"name":"TEND_PASSWORD"},{"description":"A Cognito refresh token obtained by hand from DevTools (see README). Alternative to TEND_PASSWORD.","format":"string","isSecret":true,"name":"TEND_REFRESH_TOKEN"}]}],"tools":[{"name":"book_appointment","description":"Book a specific slot returned by search_available_slots. All fields must match a real slot exactly — this does not search for availability itself.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_appointments","description":"List the authenticated patient's Tend appointments (past and upcoming).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_service_types","description":"List known appointment service type codes and what they mean. Incomplete — only codes seen with full metadata during capture are described; list_studios may reference codes not listed here.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_studios","description":"List Tend dental studio locations and which service codes each one offers. Static reference data, not a live API call — see README for why.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_available_slots","description":"Search for bookable time slots at a studio for a service type within a date range. Call this before book_appointment — booking needs the exact operatoryId/providerId/startsAt/endsAt of a real returned slot, not arbitrary values.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":78,"grade":"B","scanned_at":"2026-09-24T12:00:31.421Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T12:00:31.343Z","components":{"code":{"score":25,"max":25,"notes":["14 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":12,"max":15,"notes":["last push 53 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"tend-mcp","version":"0.1.2","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-08-02T20:14:57.314Z","repositoryUrl":"git+https://github.com/nries1/tend-mcp.git","weeklyDownloads":22}],"repo":{"found":true,"owner":"nries1","repo":"tend-mcp","archived":false,"pushedAt":"2026-08-02T20:20:29Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/29255311?v=4","ownerCreatedAt":"2017-06-07T13:52:24Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/29255311?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":22,"license":"MIT","lastPushAt":"2026-08-02T20:20:29.000Z","score":17}}}},"grade_history":[],"reviews":[]}