{"id":"658891ef-fe02-4542-a56b-11c215133bcb","entityType":"agent","slug":"crawl-b275ec28fddd14c2-1e54fc084a8f","name":"Crawled github.com 1e54fc08","canonicalUrl":"https://www.xpersona.co/agent/crawl-b275ec28fddd14c2-1e54fc084a8f","canonicalPath":"/agent/crawl-b275ec28fddd14c2-1e54fc084a8f","generatedAt":"2026-10-09T11:18:07.685Z","source":"PYPI","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-04-14T23:30:55.129Z","emptyReason":null},"description":"_mcp . tool () def add_two ( n : int ) -> int : \"\"\"Tool to add two to the input\"\"\" return n + 2 # Create a combined lifespan to manage both session managers @ contextlib . asynccontextmanager async def lifespan ( app... _mcp . tool () def add_two ( n : int ) -> int : \"\"\"Tool to add two to the input\"\"\" return n + 2 # Create a combined lifespan to manage both session managers @ contextlib . asynccontextmanager async def lifespan ( app : Starlette ): async with contextlib . AsyncExitStack () as stack : await stack . enter_async_context ( echo_mcp . session_manager . run ()) await stack . enter_async_context ( math_mcp . session_manager","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. Last updated 4/14/2026.","installCommand":"pip install CRAWLED_DOC:b275ec28fddd14c2c0674fab334689bc3766e24c04eecf2a3434e5265ed473d0:1e54fc084a8f877d","sourceUrl":"https://github.com/modelcontextprotocol/python-sdk","homepage":"https://github.com/modelcontextprotocol/python-sdk","primaryLinks":[{"label":"View on PyPI","url":"https://github.com/modelcontextprotocol/python-sdk","kind":"source"}],"safetyScore":84,"overallRank":75.1,"popularityScore":61,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"_mcp . tool () def add_two ( n : int ) -> int : \"\"\"Tool to add two to the input\"\"\" return n + 2 # Create a combined lifespan to manage both session managers @ c"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-04-14T23:30:55.129Z","emptyReason":"No protocol or capability metadata is available."},"protocols":[],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":0,"capabilityMatrix":{"rows":[],"flattenedTokens":""}},"adoption":{"evidence":{"source":"no-adoption-signals","verified":false,"confidence":"low","updatedAt":"2026-04-14T23:30:55.129Z","emptyReason":"No source adoption metrics were available."},"stars":null,"forks":null,"downloads":null,"packageName":null,"latestVersion":null,"tractionLabel":null},"release":{"evidence":{"source":"agent-index","verified":false,"confidence":"medium","updatedAt":"2026-04-14T23:30:53.374Z","emptyReason":null},"lastUpdatedAt":"2026-04-14T23:30:55.129Z","lastCrawledAt":"2026-04-14T23:30:53.374Z","lastIndexedAt":"2026-04-14T23:30:53.374Z","nextCrawlAt":null,"lastVerifiedAt":null,"highlights":[]},"execution":{"evidence":{"source":"PYPI","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"pip install CRAWLED_DOC:b275ec28fddd14c2c0674fab334689bc3766e24c04eecf2a3434e5265ed473d0:1e54fc084a8f877d","setupComplexity":"medium","setupSteps":["Setup complexity is MEDIUM. Standard integration tests and API key provisioning are required before connecting this to production workloads.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":[]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"PYPI","generatedAt":"2026-10-09T11:18:07.685Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/crawl-b275ec28fddd14c2-1e54fc084a8f/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"PyPI","verified":false,"confidence":"high","updatedAt":"2026-04-14T23:30:55.129Z","emptyReason":null},"readme":"_mcp . tool () def add_two ( n : int ) -> int : \"\"\"Tool to add two to the input\"\"\" return n + 2 # Create a combined lifespan to manage both session managers @ contextlib . asynccontextmanager async def lifespan ( app : Starlette ): async with contextlib . AsyncExitStack () as stack : await stack . enter_async_context ( echo_mcp . session_manager . run ()) await stack . enter_async_context ( math_mcp . session_manager . run ()) yield # Create the Starlette app and mount the MCP servers app = Starlette ( routes = [ Mount ( \"/echo\" , echo_mcp . streamable_http_app ()), Mount ( \"/math\" , math_mcp . streamable_http_app ()), ], lifespan = lifespan , ) # Note: Clients connect to http://localhost:8000/echo/mcp and http://localhost:8000/math/mcp # To mount at the root of each path (e.g., /echo instead of /echo/mcp): # echo_mcp.settings.streamable_http_path = \"/\" # math_mcp.settings.streamable_htt","readmeExcerpt":"_mcp . tool () def add_two ( n : int ) -> int : \"\"\"Tool to add two to the input\"\"\" return n + 2 # Create a combined lifespan to manage both session managers @ contextlib . asynccontextmanager async def lifespan ( app : Starlette ): async with contextlib . AsyncExitStack () as stack : await stack . enter_async_context ( echo_mcp . session_manager . run ()) await stack . enter_async_context ( math_mcp . session_manager","codeSnippets":[],"executableExamples":[],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[],"languages":[],"docsSourceLabel":"PyPI","editorialOverview":"_mcp . tool () def add_two ( n : int ) -> int : \"\"\"Tool to add two to the input\"\"\" return n + 2 # Create a combined lifespan to manage both session managers @ contextlib . asynccontextmanager async def lifespan ( app... _mcp . tool () def add_two ( n : int ) -> int : \"\"\"Tool to add two to the input\"\"\" return n + 2 # Create a combined lifespan to manage both session managers @ contextlib . asynccontextmanager async def lifespan ( app : Starlette ): async with contextlib . AsyncExitStack () as stack : await stack . enter_async_context ( echo_mcp . session_manager . run ()) await stack . enter_async_context ( math_mcp . session_manager","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":416,"uniquenessScore":60,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-04-14T23:30:55.129Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-04-14T23:30:55.129Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"agent-directory","verified":false,"confidence":"low","updatedAt":"2026-10-09T11:18:07.685Z","emptyReason":"No close protocol neighbors were found."},"items":[],"links":{"hub":"/agent","source":"/agent/source/pypi","protocols":[]}}}