{"apiVersion":"v1","directorySlug":"3gs-mcp-018fde436a","title":"Three Good Sources (3GS)","description":null,"pageUrl":"https://www.mcpbundles.com/skills/3gs-mcp-018fde436a","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://api.3gs.ai/mcp","hostedMcpUrl":null,"toolCount":9,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"ai.3gs/3gs-mcp-018fde436a","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"get_sources","description":"Find three curated, human-vetted sources for a topic. Searches across categories using fuzzy matching against known query patterns. Returns the matching category with name, description, and all three ranked sources including URLs and explanations. Example queries: 'learn rust programming', 'set up a bitcoin node', 'self-host email server'.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"query":{"type":"string"},"threshold":{"type":["number","null"],"format":"double"}},"additionalProperties":false},"logicalName":"get_sources","displayName":"get_sources","title":"get_sources","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_categories","description":"List all available topic categories in the registry. Returns each category's slug identifier, display name, and description. Use this to discover what topics have curated sources before querying. No parameters required.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false},"logicalName":"list_categories","displayName":"list_categories","title":"list_categories","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_provenance","description":"Get curator identity and verification information for this registry. Returns the curator's name, PKARR public key (when available), registry version, and instructions for cryptographic verification of source authenticity. No parameters required.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false},"logicalName":"get_provenance","displayName":"get_provenance","title":"get_provenance","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_endorsements","description":"Get the list of endorsed curators for this registry. In v1, this returns an empty list. Future versions will support curator endorsements with trust relationships. No parameters required.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false},"logicalName":"get_endorsements","displayName":"get_endorsements","title":"get_endorsements","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_audit_log","description":"Get the public audit log of all registry changes. Returns signed, hash-chained entries showing when sources and categories were added, updated, or removed. Supports optional filtering by timestamp (since), category slug (category), and action type (action).","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"since":{"type":["string","null"]},"action":{"type":["string","null"]},"category":{"type":["string","null"]}},"additionalProperties":false},"logicalName":"get_audit_log","displayName":"get_audit_log","title":"get_audit_log","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_identity","description":"Look up a registered identity by PKARR public key. Returns the identity's display name, type (human/bot), linked platform handles with proof URLs for independent verification, and operator info for bot identities.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["pubkey"],"properties":{"pubkey":{"type":"string"}},"additionalProperties":false},"logicalName":"get_identity","displayName":"get_identity","title":"get_identity","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_proposals","description":"List community proposals for source changes. Returns proposal summaries with optional filtering by status (pending, approved, rejected, withdrawn) and category slug.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"status":{"type":["string","null"]},"category":{"type":["string","null"]}},"additionalProperties":false},"logicalName":"list_proposals","displayName":"list_proposals","title":"list_proposals","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_proposal","description":"Get full details of a community proposal by UUID, including all votes with voter pubkeys and timestamps.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["id"],"properties":{"id":{"type":"string"}},"additionalProperties":false},"logicalName":"get_proposal","displayName":"get_proposal","title":"get_proposal","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_federated_sources","description":"Search for curated sources across the federated network. Queries the local registry and all endorsed peer registries, returning results tagged with trust level (direct for local, endorsed for peers). Stale peer data is flagged. Use this instead of get_sources when you want results from the entire network.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"query":{"type":"string"},"threshold":{"type":["number","null"],"format":"double"}},"additionalProperties":false},"logicalName":"get_federated_sources","displayName":"get_federated_sources","title":"get_federated_sources","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Three-Good-Sources-3GS-&config=eyJ1cmwiOiAiaHR0cHM6Ly9hcGkuM2dzLmFpL21jcCJ9"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Three-Good-Sources-3GS-%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.3gs.ai%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Three-Good-Sources-3GS-%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.3gs.ai%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Three+Good+Sources+%283GS%29&connectorUrl=https%3A%2F%2Fapi.3gs.ai%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Three-Good-Sources-3GS-\" --url \"https://api.3gs.ai/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/3gs-mcp-018fde436a","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/3gs-mcp-018fde436a/tools/{tool}","mcpServerUrl":"https://api.3gs.ai/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/3gs-mcp-018fde436a?live=1"}