{"name":"io.github.michaelrobertsutton/verified-googledocs-mcp","slug":"michaelrobertsutton-verified-googledocs-mcp","title":null,"description":"MCP server for Google Docs with verified writes — every mutation returns before/after proof.","url":"https://mcp.market/server/michaelrobertsutton-verified-googledocs-mcp","rating":null,"grade":"A","score":88,"certified":false,"status":"active","category":"productivity","tags":["productivity"],"presence":{"score":10,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-08-13T21:02:35.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/michaelrobertsutton/verified-googledocs-mcp","website":null,"version":"0.1.0","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"verified-googledocs-mcp","version":"0.1.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Path to the OAuth client-secret JSON. Defaults to ~/.config/verified-googledocs-mcp/credentials.json.","name":"VERIFIED_GOOGLEDOCS_MCP_CREDENTIALS"},{"description":"Set to a falsey value (0/false/no/off) to redact before/after content excerpts from the local audit log.","name":"VERIFIED_GOOGLEDOCS_MCP_AUDIT_EXCERPTS"}]}],"tools":[{"name":"add_anchored_comment","description":"Add a comment to a document, validated against a quoted passage.","write_action":false,"price_micros":0,"input_schema":null},{"name":"append_markdown","description":"Append compiled markdown at the end of a document tab.","write_action":false,"price_micros":0,"input_schema":null},{"name":"diff_tab_vs_file","description":"Export a document tab as markdown and diff against a local file.","write_action":false,"price_micros":0,"input_schema":null},{"name":"find_sections","description":"Find headings in a document tab and return their document ranges.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_comment_thread","description":"Retrieve the full reply chain for a comment.","write_action":false,"price_micros":0,"input_schema":null},{"name":"insert_image","description":"Insert an inline image after the paragraph containing anchor text.","write_action":true,"price_micros":0,"input_schema":null},{"name":"list_open_items","description":"List all open comments and pending suggested edits on a document.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_tabs","description":"List the tabs in a Google Doc.","write_action":false,"price_micros":0,"input_schema":null},{"name":"read_document","description":"Read the content of a specific tab in a Google Doc.","write_action":false,"price_micros":0,"input_schema":null},{"name":"replace_range_markdown","description":"Replace a document range with compiled markdown.","write_action":false,"price_micros":0,"input_schema":null},{"name":"replace_tab_markdown","description":"Replace the entire content of a document tab with compiled markdown.","write_action":false,"price_micros":0,"input_schema":null},{"name":"replace_text","description":"Replace occurrences of a text string in a Google Doc tab.","write_action":false,"price_micros":0,"input_schema":null},{"name":"reply_to_comment","description":"Add a reply to an existing comment thread.","write_action":false,"price_micros":0,"input_schema":null},{"name":"resolve_comment","description":"Resolve a comment on a document and verify the resolution landed.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":88,"grade":"A","scanned_at":"2026-09-26T21:23:44.047Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T21:23:43.971Z","components":{"code":{"score":25,"max":25,"notes":["16 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":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":12,"max":15,"notes":["last push 44 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"verified-googledocs-mcp","version":"0.1.0","found":true,"dependencyCount":11,"publishedAt":"2026-06-16T12:06:47.722951Z","repositoryUrl":"https://github.com/michaelrobertsutton/verified-googledocs-mcp"}],"repo":{"found":true,"owner":"michaelrobertsutton","repo":"verified-googledocs-mcp","archived":false,"pushedAt":"2026-08-13T21:02:35Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/12904582?v=4","ownerCreatedAt":"2015-06-16T02:10:17Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/12904582?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-08-13T21:02:35.000Z","score":10}}}},"grade_history":[],"reviews":[]}