{"name":"ac.tandem/docs-mcp","slug":"tandem-docs-mcp","title":null,"description":"Remote MCP server for Tandem docs, install guides, SDKs, workflows, and agent setup help.","url":"https://mcp.market/server/tandem-docs-mcp","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"productivity","tags":["productivity","ai"],"presence":{"score":43,"stars":121,"forks":13,"downloads_week":null,"last_push_at":"2026-09-27T21:15:00.000Z","license":"NOASSERTION"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-09-28T02:01:44.993Z","last_ok_at":"2026-09-28T02:01:44.993Z","latency_ms":145},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/frumu-ai/tandem","website":"https://tandem.ac/docs-mcp","version":"0.3.2","remotes":[{"type":"streamable-http","url":"https://tandem.ac/mcp"}],"packages":[],"tools":[{"name":"answer_how_to","description":"Answer how to install or use Tandem, build workflows, or use the SDKs by synthesizing relevant published docs.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"task":{"type":"string","description":"The Tandem task or question that needs a docs-grounded answer."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."},"engine_version":{"type":"string","description":"Optional Tandem engine version hint. Prefer stable docs for installed engines."},"audience":{"type":"string","description":"Optional audience hint such as developer, desktop user, or operator."},"limit":{"type":"integer","minimum":1,"maximum":10,"description":"Maximum number of supporting docs recommendations to include."}},"required":["task"]}},{"name":"compare_doc_page_refresh","description":"Force-refresh a docs page and return before/after hashes so page content changes can be proven.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"path":{"type":"string","description":"Docs path like /start-here/ or /sdk/python/ to compare before and after refresh."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."}},"required":["path"]}},{"name":"compare_docs_index_refresh","description":"Force-refresh the docs indexes and return before/after hashes so content changes can be proven.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."}}}},{"name":"get_doc","description":"Fetch and normalize a published Tandem docs page by path or URL.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"path":{"type":"string","description":"Docs path like /sdk/python/ or a full Tandem docs URL."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."},"engine_version":{"type":"string","description":"Optional Tandem engine version hint for compatibility checks."}},"required":["path"]}},{"name":"get_docs_cache_status","description":"Inspect the current docs cache state for index sources and warmed pages.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"get_start_path","description":"Recommend the best Tandem docs starting path for a desktop user, server admin, or developer.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"role":{"type":"string","enum":["desktop","server_admin","developer"],"description":"The user role to optimize the docs starting point for."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."}},"required":["role"]}},{"name":"get_tandem_guide","description":"Return a structured Tandem learning guide for install-engine, python-sdk, typescript-sdk, build-workflows, or headless-deploy.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"topic":{"type":"string","enum":["install-engine","python-sdk","typescript-sdk","build-workflows","headless-deploy"],"description":"Named Tandem learning guide to return."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."}},"required":["topic"]}},{"name":"invalidate_docs_cache","description":"Invalidate docs cache entries for index data, all pages, or a specific page path.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"target":{"type":"string","enum":["all","index","pages","page"],"description":"Which cache area to invalidate."},"path":{"type":"string","description":"Required when target is page; identifies the specific docs path to invalidate."},"docs_ref":{"type":"string","description":"Optional docs ref to scope page/index cache invalidation."}}}},{"name":"recommend_next_docs","description":"Recommend the next Tandem docs to read after a current page, optionally biased toward a goal.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"current_path":{"type":"string","description":"Current Tandem docs path the user has already read."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."},"goal":{"type":"string","description":"Optional goal such as install Tandem, use the Python SDK, or build workflows."},"limit":{"type":"integer","minimum":1,"maximum":10,"description":"Maximum number of next-doc recommendations to return."}},"required":["current_path"]}},{"name":"refresh_doc_page","description":"Force-refresh a docs page and report whether content came from the network, cache, or stale fallback.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"path":{"type":"string","description":"Docs path like /start-here/ or /sdk/python/ to refresh."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."},"force_refresh":{"type":"boolean","description":"Whether to bypass cache and force a network refresh attempt."}},"required":["path"]}},{"name":"refresh_docs_index","description":"Force-refresh docs indexes and report whether data came from the network, cache, or stale fallback.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"force_refresh":{"type":"boolean","description":"Whether to bypass cache and force a network refresh attempt."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."}}}},{"name":"search_docs","description":"Search the published Tandem docs index for relevant pages.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","description":"The Tandem question, task, or keyword query to search for."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable. Use next, refs/<sha>, or releases/<version> only when explicitly needed."},"engine_version":{"type":"string","description":"Optional Tandem engine version hint. If supplied without docs_ref, the MCP still defaults to stable unless a matching versioned docs ref is configured."},"limit":{"type":"integer","minimum":1,"maximum":20,"description":"Maximum number of matching docs pages to return."},"audience":{"type":"string","description":"Optional audience filter such as developer, desktop user, or operator."}},"required":["query"]}},{"name":"warmup_docs_cache","description":"Refresh the docs index and preload the most important Tandem docs pages into cache.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"force_refresh":{"type":"boolean","description":"Whether to bypass cache and force fresh upstream fetches first."},"docs_ref":{"type":"string","description":"Docs channel or immutable ref. Defaults to stable."}}}}],"scan":{"score":91,"grade":"A","scanned_at":"2026-09-27T22:31:56.960Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T22:31:56.912Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1620ms"]},"poisoning":{"score":15,"max":15,"notes":["13 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":8,"max":10,"notes":["namespace and repository owner differ","GitHub account older than a year","website matches verified namespace"]}},"findings":[],"inputs":{"probes":[{"url":"https://tandem.ac/mcp","reachable":true,"authRequired":false,"latencyMs":1620,"serverInfo":{"name":"ac.tandem/docs-mcp","version":"0.3.2"}}],"packages":[],"repo":{"found":true,"owner":"frumu-ai","repo":"tandem","archived":false,"pushedAt":"2026-09-27T21:15:00Z","stars":121,"forks":13,"openIssues":26,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/199770472?v=4","ownerCreatedAt":"2025-02-18T12:40:22Z","license":"NOASSERTION"},"icon":{"url":"https://tandem.ac/favicon.ico?favicon.072a8fd2.ico","source":"site","width":256,"height":256},"presence":{"stars":121,"forks":13,"downloadsWeek":null,"license":"NOASSERTION","lastPushAt":"2026-09-27T21:15:00.000Z","score":43}}}},"grade_history":[],"reviews":[]}