{"id":"pinboard-mcp-server","name":"pinboard-mcp-server","homepage":"https://pypi.org/project/pinboard-mcp-server/","repo_url":"https://github.com/rossshannon/pinboard-bookmarks-mcp-server","category":"ai-ml","subcategories":[],"tags":["mcp","pinboard","bookmarks","retrieval","llm-tools","fastmcp","python"],"what_it_does":"Provides a FastMCP-based Model Context Protocol (MCP) server exposing read-only tools to search and list Pinboard.in bookmarks (including tag listing) for use by LLM clients at inference time. It uses a Pinboard API token from an environment variable and includes caching and rate-limit handling as described in the README.","use_cases":["LLM-assisted retrieval of personal knowledge from Pinboard bookmarks","Querying bookmarks by search terms (titles/notes/tags)","Listing recent bookmarks for context in chat agents","Filtering bookmarks by tags and optional date ranges","Providing tag statistics to inform retrieval/routing strategies"],"not_for":["Writing/modifying Pinboard bookmarks (the service is described as read-only)","Use cases requiring real-time freshness on every call without caching","Environments where users cannot supply and securely manage a third-party API token"],"best_when":"You have a Pinboard account and want LLM tools to retrieve relevant bookmark metadata quickly and safely (read-only), while respecting Pinboard’s API usage guidance.","avoid_when":"You need guaranteed strict recency beyond the described caching strategy, or you cannot securely provide a PINBOARD_TOKEN to the server process.","alternatives":["Pinboard RSS export + custom retrieval layer","A bespoke Pinboard API wrapper (without MCP) integrated directly into your agent framework","Other bookmark/knowledge retrieval connectors (e.g., browser extension APIs, Obsidian/Notion connectors)","Community MCP servers for generic web search/bookmarking (if available)"],"af_score":77.8,"security_score":62.8,"reliability_score":33.8,"package_type":"mcp_server","discovery_source":["pypi"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T21:48:30.759799+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["Environment variable PINBOARD_TOKEN in format username:token"],"oauth":false,"scopes":false,"notes":"Authentication appears to be a single Pinboard API token supplied via environment variable; no OAuth or scope model is described."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Pricing is not described; this appears to be a self-hosted/open-source Python package."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":77.8,"security_score":62.8,"reliability_score":33.8,"mcp_server_quality":85.0,"documentation_accuracy":80.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":90.0,"rate_limit_clarity":80.0,"tls_enforcement":70.0,"auth_strength":75.0,"scope_granularity":20.0,"dependency_hygiene":60.0,"secret_handling":85.0,"security_notes":"Token is provided via environment variable and the README claims tokens are never logged/exposed in error messages. Access is read-only. Scope granularity is effectively all-or-nothing for the token (no fine-grained scopes described). TLS enforcement for the MCP transport and outbound Pinboard calls is not explicitly documented here; score reflects typical secure defaults but uncertainty.","uptime_documented":0.0,"version_stability":45.0,"breaking_changes_history":40.0,"error_recovery":50.0,"idempotency_support":"true","idempotency_notes":"All described tools are read-only (search/list) so repeated calls are naturally idempotent; caching may affect freshness but not correctness of results for the same underlying Pinboard state.","pagination_style":"limit-based (default 20, max 100)","retry_guidance_documented":false,"known_agent_gotchas":["Rate limits/caching: results freshness may lag due to caching and cache invalidation behavior; agents should not assume real-time updates on every call.","Tool parameters are constrained (e.g., tags list length 1-3; limit max 100); agents should validate/sanitize inputs to avoid tool-argument errors."]}}