{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"github_mcp-jlumbroso-passage-of-time-mcp","slug":"mcp-jlumbroso-passage-of-time-mcp","name":"passage-of-time-mcp","type":"mcp","url":"https://github.com/jlumbroso/passage-of-time-mcp","page_url":"https://unfragile.ai/mcp-jlumbroso-passage-of-time-mcp","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_0","uri":"capability://tool.use.integration.timezone.aware.current.datetime.retrieval.with.contextual.metadata","name":"timezone-aware current datetime retrieval with contextual metadata","description":"Exposes the current date and time with full timezone support through the MCP protocol, returning both ISO 8601 timestamps and human-readable formats. Implements timezone-aware datetime calculations using Python's pytz library integrated into the FastMCP framework, allowing LLMs to query the server for the precise current moment in any specified timezone without relying on training data cutoffs or hallucinated timestamps.","intents":["Get the current time in a specific timezone for scheduling or coordination","Retrieve current datetime in ISO 8601 format for API calls or logging","Understand what time it is right now in human-readable format for context-aware responses"],"best_for":["LLM agents building scheduling systems","AI assistants handling multi-timezone coordination","Developers integrating temporal awareness into Claude or other LLM applications"],"limitations":["Depends on server system clock accuracy — no NTP synchronization built-in","Timezone database updates require pytz library updates","Returns server-local time if timezone parameter is invalid or omitted"],"requires":["Python 3.9+","FastMCP framework installed","pytz library for timezone handling","MCP client capable of calling tools (Claude, Anthropic SDK, or compatible)"],"input_types":["string (timezone identifier, e.g., 'America/New_York')","optional: boolean for include_context flag"],"output_types":["JSON object with ISO 8601 timestamp, human-readable datetime, timezone offset, and contextual metadata"],"categories":["tool-use-integration","temporal-awareness"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_1","uri":"capability://data.processing.analysis.multi.format.timestamp.parsing.and.normalization","name":"multi-format timestamp parsing and normalization","description":"Converts arbitrary timestamp formats (Unix epoch, ISO 8601, RFC 2822, human-readable strings) into normalized datetime objects with timezone awareness. Implements a format-detection pipeline using Python's dateutil.parser combined with regex-based heuristics to identify and parse ambiguous timestamp strings, exposing the parsed result through MCP with validation and error reporting for malformed inputs.","intents":["Parse user-provided timestamps in unknown formats for temporal calculations","Normalize timestamps from different sources (logs, APIs, user input) into a consistent format","Extract and validate datetime information from unstructured text or mixed-format data"],"best_for":["LLM agents processing logs or historical data with mixed timestamp formats","AI systems ingesting data from multiple APIs with different timestamp conventions","Developers building temporal data pipelines that need format-agnostic parsing"],"limitations":["Ambiguous dates (e.g., '01/02/2024') may be parsed incorrectly depending on locale assumptions","Very informal or colloquial time expressions ('next Tuesday', 'in a jiffy') are not supported","Parsing performance degrades with extremely long or malformed input strings"],"requires":["Python 3.9+","dateutil library for flexible parsing","FastMCP framework","MCP client connection"],"input_types":["string (timestamp in any common format: Unix epoch, ISO 8601, RFC 2822, etc.)","optional: string (expected timezone or locale hint)"],"output_types":["JSON object with normalized ISO 8601 datetime, detected format, timezone, and confidence score"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_2","uri":"capability://data.processing.analysis.duration.calculation.and.temporal.difference.computation","name":"duration calculation and temporal difference computation","description":"Calculates the elapsed time between two timestamps or from a timestamp to the present, returning durations in multiple human-readable formats (days, hours, minutes, seconds, and natural language descriptions). Implements timezone-aware datetime subtraction using Python's datetime module with support for DST transitions, exposing results through MCP with both machine-readable duration objects and human-contextual descriptions like 'about 2 weeks' or 'less than a minute'.","intents":["Calculate how long ago an event occurred (e.g., 'time since last deployment')","Determine the duration between two specific timestamps for scheduling or billing","Generate human-readable time differences for user-facing messages or reports"],"best_for":["LLM agents building monitoring or observability systems","AI assistants generating human-friendly temporal summaries","Developers creating time-tracking or project management integrations"],"limitations":["DST transitions may cause off-by-one-hour errors if not handled carefully in edge cases","Leap seconds are not accounted for in duration calculations","Natural language descriptions use English only — no i18n support"],"requires":["Python 3.9+","FastMCP framework","pytz for timezone-aware calculations","MCP client connection"],"input_types":["string (ISO 8601 timestamp or Unix epoch for start time)","string (ISO 8601 timestamp or Unix epoch for end time, or 'now' for current time)","optional: string (timezone for DST-aware calculation)"],"output_types":["JSON object with duration in seconds, human-readable breakdown (days/hours/minutes/seconds), natural language description, and relative time phrase"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_3","uri":"capability://data.processing.analysis.temporal.arithmetic.with.add.subtract.operations","name":"temporal arithmetic with add/subtract operations","description":"Adds or subtracts time intervals (days, hours, minutes, seconds) from a given timestamp, returning the resulting datetime with full timezone awareness and DST handling. Implements interval arithmetic using Python's timedelta objects combined with pytz timezone handling, allowing LLMs to perform forward and backward temporal projections for scheduling, deadline calculation, and temporal reasoning without manual arithmetic.","intents":["Calculate a future deadline by adding days or hours to a start date","Determine when a recurring event will next occur by adding intervals","Compute historical dates by subtracting time intervals from a reference point"],"best_for":["LLM agents building scheduling or project management systems","AI assistants calculating deadlines or future event times","Developers creating temporal projection features in applications"],"limitations":["Does not handle business day calculations (weekends/holidays) — only calendar arithmetic","DST transitions may cause unexpected hour shifts when adding days across DST boundaries","No support for relative intervals like 'next month' or 'last quarter' — requires explicit day/hour counts"],"requires":["Python 3.9+","FastMCP framework","pytz for timezone-aware arithmetic","MCP client connection"],"input_types":["string (ISO 8601 timestamp or Unix epoch as base)","integer (number of days to add/subtract)","integer (number of hours to add/subtract)","integer (number of minutes to add/subtract)","integer (number of seconds to add/subtract)","optional: string (timezone for DST-aware calculation)"],"output_types":["JSON object with resulting ISO 8601 datetime, human-readable date/time, timezone, and DST status"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_4","uri":"capability://data.processing.analysis.human.contextual.temporal.metadata.extraction","name":"human-contextual temporal metadata extraction","description":"Analyzes a timestamp and returns contextual information about when that moment falls in human terms: whether it's a weekday or weekend, business hours or after-hours, morning/afternoon/evening, and other human-centric temporal categories. Implements context detection using configurable business hour definitions and calendar logic, exposing results through MCP as structured metadata that helps LLMs reason about temporal significance beyond raw timestamps.","intents":["Determine if a timestamp falls during business hours for scheduling decisions","Understand whether an event occurred on a weekend or weekday for context-aware analysis","Classify times of day (morning, afternoon, evening, night) for human-readable descriptions"],"best_for":["LLM agents building scheduling or availability systems","AI assistants generating context-aware temporal narratives","Developers creating human-friendly time analysis features"],"limitations":["Business hours are configurable but default to US Eastern Time 9-5 — may not match all use cases","Does not account for holidays or company-specific closures — only weekday/weekend distinction","Time-of-day classifications (morning/afternoon/evening) use fixed hour boundaries that may not match cultural expectations"],"requires":["Python 3.9+","FastMCP framework","pytz for timezone-aware classification","MCP client connection"],"input_types":["string (ISO 8601 timestamp or Unix epoch)","optional: string (timezone for context classification)","optional: object (custom business hours definition)"],"output_types":["JSON object with is_weekday, is_business_hours, time_of_day, day_name, and other contextual boolean/string fields"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_5","uri":"capability://text.generation.language.duration.formatting.and.human.readable.time.representation","name":"duration formatting and human-readable time representation","description":"Converts raw duration values (seconds, milliseconds, or timedelta objects) into multiple human-readable formats: natural language descriptions ('about 2 weeks'), abbreviated formats ('2w 3d'), and detailed breakdowns (days/hours/minutes/seconds). Implements format selection logic that chooses the most appropriate representation based on duration magnitude, exposing results through MCP with both machine-readable and human-contextual outputs for LLM consumption.","intents":["Format elapsed time for display in user-facing messages or reports","Convert raw duration values into natural language for LLM-generated text","Generate abbreviated time representations for compact logging or summaries"],"best_for":["LLM agents generating human-friendly temporal summaries","AI assistants creating readable time-based reports or messages","Developers building user-facing features that display durations"],"limitations":["Natural language descriptions are approximate ('about 2 weeks') rather than precise","Formatting rules are English-only with no i18n support","Very large durations (years, decades) may produce awkward or ambiguous descriptions"],"requires":["Python 3.9+","FastMCP framework","MCP client connection"],"input_types":["integer (duration in seconds)","optional: string (format preference: 'natural', 'abbreviated', 'detailed')"],"output_types":["JSON object with natural_language, abbreviated, detailed_breakdown, and total_seconds fields"],"categories":["text-generation-language","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_6","uri":"capability://tool.use.integration.mcp.protocol.tool.registration.and.fastmcp.framework.integration","name":"mcp protocol tool registration and fastmcp framework integration","description":"Registers all temporal tools as callable MCP endpoints through the FastMCP framework, managing tool schema definition, input validation, and protocol-level communication with MCP clients. Implements a single global FastMCP instance that handles tool discovery, parameter marshalling, and response serialization, enabling seamless integration with Claude and other LLM applications that support the Model Context Protocol without requiring manual API configuration.","intents":["Enable Claude and other LLMs to call temporal tools through the MCP protocol","Automatically expose tool schemas for LLM discovery and parameter validation","Handle protocol-level communication and serialization between LLM and temporal tools"],"best_for":["Developers integrating temporal awareness into Claude applications","Teams building LLM agents that require time calculation capabilities","Organizations deploying MCP servers for LLM tool access"],"limitations":["Requires MCP client support — not compatible with REST-only or non-MCP LLM integrations","Tool schemas are auto-generated from Python function signatures — complex types may not serialize correctly","No built-in authentication or rate limiting — requires external security layer"],"requires":["Python 3.9+","FastMCP framework (installed via pip)","MCP-compatible client (Claude, Anthropic SDK, or other MCP implementations)","Network connectivity between client and server"],"input_types":["MCP tool call requests with JSON parameters"],"output_types":["MCP tool response with JSON result or error"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github_mcp-jlumbroso-passage-of-time-mcp__cap_7","uri":"capability://data.processing.analysis.timezone.database.management.and.dst.aware.calculations","name":"timezone database management and dst-aware calculations","description":"Manages timezone information using the pytz library with automatic Daylight Saving Time (DST) transition handling across all temporal calculations. Implements timezone-aware datetime arithmetic that accounts for DST boundaries, ensuring that operations like adding days or calculating durations across DST transitions produce correct results without manual offset adjustments. Exposes timezone validation and DST status information through MCP for LLM awareness of temporal edge cases.","intents":["Perform accurate time calculations across DST transitions without manual offset handling","Validate timezone identifiers and provide timezone information to LLMs","Understand DST status and offset information for a given timestamp"],"best_for":["LLM agents handling multi-timezone scheduling across DST boundaries","AI systems processing temporal data from multiple geographic regions","Developers building international scheduling or time-tracking systems"],"limitations":["Timezone database requires periodic updates via pytz library updates — may lag behind official DST changes","Some historical DST transitions are not accurately represented in older pytz versions","Ambiguous times during DST transitions (e.g., 1:30 AM during 'fall back') may be interpreted incorrectly"],"requires":["Python 3.9+","pytz library (current version for accurate DST data)","FastMCP framework","MCP client connection"],"input_types":["string (IANA timezone identifier, e.g., 'America/New_York')","string (ISO 8601 timestamp for DST status check)"],"output_types":["JSON object with timezone name, UTC offset, DST status, and DST transition dates"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":38,"verified":false,"data_access_risk":"high","permissions":["Python 3.9+","FastMCP framework installed","pytz library for timezone handling","MCP client capable of calling tools (Claude, Anthropic SDK, or compatible)","dateutil library for flexible parsing","FastMCP framework","MCP client connection","pytz for timezone-aware calculations","pytz for timezone-aware arithmetic","pytz for timezone-aware classification"],"failure_modes":["Depends on server system clock accuracy — no NTP synchronization built-in","Timezone database updates require pytz library updates","Returns server-local time if timezone parameter is invalid or omitted","Ambiguous dates (e.g., '01/02/2024') may be parsed incorrectly depending on locale assumptions","Very informal or colloquial time expressions ('next Tuesday', 'in a jiffy') are not supported","Parsing performance degrades with extremely long or malformed input strings","DST transitions may cause off-by-one-hour errors if not handled carefully in edge cases","Leap seconds are not accounted for in duration calculations","Natural language descriptions use English only — no i18n support","Does not handle business day calculations (weekends/holidays) — only calendar arithmetic","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.37593545123591277,"quality":0.41,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.52,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:22.065Z","last_scraped_at":"2026-05-03T14:23:44.761Z","last_commit":"2025-06-17T13:28:23Z"},"community":{"stars":713,"forks":49,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=mcp-jlumbroso-passage-of-time-mcp","compare_url":"https://unfragile.ai/compare?artifact=mcp-jlumbroso-passage-of-time-mcp"}},"signature":"OJVIrqb+CE2CqR9tpVJNCvvC75Y28alrIBiW9OfFcO2gJNtFMne7QL0iNnf1Tn4LV8c2N7vNMYECjLmnqqUmBQ==","signedAt":"2026-06-20T08:43:38.734Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/mcp-jlumbroso-passage-of-time-mcp","artifact":"https://unfragile.ai/mcp-jlumbroso-passage-of-time-mcp","verify":"https://unfragile.ai/api/v1/verify?slug=mcp-jlumbroso-passage-of-time-mcp","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}