{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_qa9fd7pep4jd","handle":"ptally","url":"https://wellknown.network/agents/ptally","links":{"self":"https://wellknown.network/agents/ptally/record.json","html":"https://wellknown.network/agents/ptally","markdown":"https://wellknown.network/agents/ptally/record.md","api":"https://wellknown.network/api/v1/agents/ptally","status":"https://wellknown.network/api/v1/agents/ptally/status","claim":"https://wellknown.network/agents/ptally/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/ptally/claim.json","badge":"https://wellknown.network/agents/ptally/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/ptally/history","tools":"https://wellknown.network/api/v1/agents/ptally/tools"},"ard":{"identifier":"urn:air:app.ptally.ai:server:ptally","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Ptally","summary":"Insurance pricing: build, validate and test rating models, then price quotes from your AI client.","description":"Insurance pricing: build, validate and test rating models, then price quotes from your AI client.","publisher":{"name":"ai.ptally","url":null},"homepage":"https://ptally.ai/developer/mcp","repository":null,"version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://app.ptally.ai/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-11-04T14:23:24.940298Z","publishedAt":"2026-11-04T14:23:24.940298Z","registryName":"ai.ptally/ptally"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"data.database","name":"Databases","confidence":1,"provenance":"derived"},{"slug":"dev.docs-lookup","name":"Documentation Lookup","confidence":1,"provenance":"derived"},{"slug":"commerce.pricing","name":"Pricing & Quotes","confidence":1,"provenance":"derived"},{"slug":"code.documentation","name":"Code Documentation","confidence":0.583,"provenance":"derived"},{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":0.54,"provenance":"derived"},{"slug":"content.writing","name":"Writing & Editing","confidence":0.51,"provenance":"derived"}],"categories":["analytics","code","commerce","content","data","dev"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 8h ago.","lastOkAt":"2026-11-09T05:29:58.976Z","lastProbedAt":"2026-11-09T05:29:58.976Z","statusComputedAt":"2026-11-09T05:33:01.441Z","reliability30d":{"probes":3,"successRate":1,"p50Ms":16,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":3,"ok":3,"authBoundaryOk":0,"serviceOk":3,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-11-09T05:29:58.976Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":16,"error":null,"detail":{"tools":[{"name":"get_docs","description":"Fetch Ptally documentation by topic. Call BEFORE building or editing a config to load the rules and reference material you need. Topics: \"rules\" = agent rules, "},{"name":"get_schema","description":"Fetch the full JSON schema for Ptally project config files. Use to check exact field requirements, allowed step types, and property constraints."},{"name":"validate_project","description":"Server-side schema validation of a project config. Returns { valid: true/false, errors: [...] } with the JSON path, keyword, and message for each issue. Prefer "},{"name":"get_starter","description":"Fetch a worked-example Ptally project for a common line of business. Each example is a small, fully valid project with realistic collection tables, calculations"},{"name":"get_projects","description":"List every project stored on this self-host instance. Returns `{ count, projects: [{ project_reference, name, description }] }`. Descriptions are truncated to 1"},{"name":"get_project","description":"Fetch a project by `project_reference` from the self-host store. Optional `version_reference` pins to a specific version of that project (a version from another"},{"name":"get_quotes","description":"List quotes stored on this self-host instance, newest first (`direction: \"asc\"` for oldest first). Filter by `project_reference` (from get_projects), `version_r"},{"name":"get_quote","description":"Review one quote in a standard shape, from a stored `quote_reference` (get_quotes) or a pasted `quote` — the dashboard's Copy JSON, a POST /quotes or run_quote "},{"name":"amend_quote","description":"Amend a SAVED quote (a quote_reference from get_quotes): its price (`result`), and optionally `valid` or `sold`, with a required `reason`. Logged in the quote's"},{"name":"run_quote","description":"Price a quote against a stored project: a dry run by default, saved only with `save: true`. Takes `project_reference`, an optional `version_reference` (defaults"},{"name":"run_version_tests","description":"Price every test in a version's tests[] against that version's stored model and compare each with its expected output. Takes `version_reference` (any status but"},{"name":"patch_version","description":"Change a DRAFT version's stored model with an RFC 6902 JSON Patch, merged on the server. Use it for targeted edits; any change to a clipped collection (__contex"},{"name":"get_health","description":"Diagnostic snapshot of the deployed MCP server plus a live probe of its store (sqlite or Postgres). Returns server name and version, protocol version, root, boo"}],"toolCount":13,"toolsHash":"ec38075a0fb749c5df16b4129ea32d951aacda55ded10f2d035d8ec8260d5f5d","serverName":"ptally-self-host-mcp","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-08T20:27:25.901Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":13,"error":null,"detail":{"tools":[{"name":"get_docs","description":"Fetch Ptally documentation by topic. Call BEFORE building or editing a config to load the rules and reference material you need. Topics: \"rules\" = agent rules, "},{"name":"get_schema","description":"Fetch the full JSON schema for Ptally project config files. Use to check exact field requirements, allowed step types, and property constraints."},{"name":"validate_project","description":"Server-side schema validation of a project config. Returns { valid: true/false, errors: [...] } with the JSON path, keyword, and message for each issue. Prefer "},{"name":"get_starter","description":"Fetch a worked-example Ptally project for a common line of business. Each example is a small, fully valid project with realistic collection tables, calculations"},{"name":"get_projects","description":"List every project stored on this self-host instance. Returns `{ count, projects: [{ project_reference, name, description }] }`. Descriptions are truncated to 1"},{"name":"get_project","description":"Fetch a project by `project_reference` from the self-host store. Optional `version_reference` pins to a specific version of that project (a version from another"},{"name":"get_quotes","description":"List quotes stored on this self-host instance, newest first (`direction: \"asc\"` for oldest first). Filter by `project_reference` (from get_projects), `version_r"},{"name":"get_quote","description":"Review one quote in a standard shape, from a stored `quote_reference` (get_quotes) or a pasted `quote` — the dashboard's Copy JSON, a POST /quotes or run_quote "},{"name":"amend_quote","description":"Amend a SAVED quote (a quote_reference from get_quotes): its price (`result`), and optionally `valid` or `sold`, with a required `reason`. Logged in the quote's"},{"name":"run_quote","description":"Price a quote against a stored project: a dry run by default, saved only with `save: true`. Takes `project_reference`, an optional `version_reference` (defaults"},{"name":"run_version_tests","description":"Price every test in a version's tests[] against that version's stored model and compare each with its expected output. Takes `version_reference` (any status but"},{"name":"patch_version","description":"Change a DRAFT version's stored model with an RFC 6902 JSON Patch, merged on the server. Use it for targeted edits; any change to a clipped collection (__contex"},{"name":"get_health","description":"Diagnostic snapshot of the deployed MCP server plus a live probe of its store (sqlite or Postgres). Returns server name and version, protocol version, root, boo"}],"toolCount":13,"toolsHash":"ec38075a0fb749c5df16b4129ea32d951aacda55ded10f2d035d8ec8260d5f5d","serverName":"ptally-self-host-mcp","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-08T11:24:18.495Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":18,"error":null,"detail":{"tools":[{"name":"get_docs","description":"Fetch Ptally documentation by topic. Call BEFORE building or editing a config to load the rules and reference material you need. Topics: \"rules\" = agent rules, "},{"name":"get_schema","description":"Fetch the full JSON schema for Ptally project config files. Use to check exact field requirements, allowed step types, and property constraints."},{"name":"validate_project","description":"Server-side schema validation of a project config. Returns { valid: true/false, errors: [...] } with the JSON path, keyword, and message for each issue. Prefer "},{"name":"get_starter","description":"Fetch a worked-example Ptally project for a common line of business. Each example is a small, fully valid project with realistic collection tables, calculations"},{"name":"get_projects","description":"List every project stored on this self-host instance. Returns `{ count, projects: [{ project_reference, name, description }] }`. Descriptions are truncated to 1"},{"name":"get_project","description":"Fetch a project by `project_reference` from the self-host store. Optional `version_reference` pins to a specific version of that project (a version from another"},{"name":"get_quotes","description":"List quotes stored on this self-host instance, newest first (`direction: \"asc\"` for oldest first). Filter by `project_reference` (from get_projects), `version_r"},{"name":"get_quote","description":"Review one quote in a standard shape, from a stored `quote_reference` (get_quotes) or a pasted `quote` — the dashboard's Copy JSON, a POST /quotes or run_quote "},{"name":"amend_quote","description":"Amend a SAVED quote (a quote_reference from get_quotes): its price (`result`), and optionally `valid` or `sold`, with a required `reason`. Logged in the quote's"},{"name":"run_quote","description":"Price a quote against a stored project: a dry run by default, saved only with `save: true`. Takes `project_reference`, an optional `version_reference` (defaults"},{"name":"run_version_tests","description":"Price every test in a version's tests[] against that version's stored model and compare each with its expected output. Takes `version_reference` (any status but"},{"name":"patch_version","description":"Change a DRAFT version's stored model with an RFC 6902 JSON Patch, merged on the server. Use it for targeted edits; any change to a clipped collection (__contex"},{"name":"get_health","description":"Diagnostic snapshot of the deployed MCP server plus a live probe of its store (sqlite or Postgres). Returns server name and version, protocol version, root, boo"}],"toolCount":13,"toolsHash":"ec38075a0fb749c5df16b4129ea32d951aacda55ded10f2d035d8ec8260d5f5d","serverName":"ptally-self-host-mcp","capabilities":["tools","resources","prompts"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"get_docs","description":"Fetch Ptally documentation by topic. Call BEFORE building or editing a config to load the rules and reference material you need. Topics: \"rules\" = agent rules, "},{"name":"get_schema","description":"Fetch the full JSON schema for Ptally project config files. Use to check exact field requirements, allowed step types, and property constraints."},{"name":"validate_project","description":"Server-side schema validation of a project config. Returns { valid: true/false, errors: [...] } with the JSON path, keyword, and message for each issue. Prefer "},{"name":"get_starter","description":"Fetch a worked-example Ptally project for a common line of business. Each example is a small, fully valid project with realistic collection tables, calculations"},{"name":"get_projects","description":"List every project stored on this self-host instance. Returns `{ count, projects: [{ project_reference, name, description }] }`. Descriptions are truncated to 1"},{"name":"get_project","description":"Fetch a project by `project_reference` from the self-host store. Optional `version_reference` pins to a specific version of that project (a version from another"},{"name":"get_quotes","description":"List quotes stored on this self-host instance, newest first (`direction: \"asc\"` for oldest first). Filter by `project_reference` (from get_projects), `version_r"},{"name":"get_quote","description":"Review one quote in a standard shape, from a stored `quote_reference` (get_quotes) or a pasted `quote` — the dashboard's Copy JSON, a POST /quotes or run_quote "},{"name":"amend_quote","description":"Amend a SAVED quote (a quote_reference from get_quotes): its price (`result`), and optionally `valid` or `sold`, with a required `reason`. Logged in the quote's"},{"name":"run_quote","description":"Price a quote against a stored project: a dry run by default, saved only with `save: true`. Takes `project_reference`, an optional `version_reference` (defaults"},{"name":"run_version_tests","description":"Price every test in a version's tests[] against that version's stored model and compare each with its expected output. Takes `version_reference` (any status but"},{"name":"patch_version","description":"Change a DRAFT version's stored model with an RFC 6902 JSON Patch, merged on the server. Use it for targeted edits; any change to a clipped collection (__contex"},{"name":"get_health","description":"Diagnostic snapshot of the deployed MCP server plus a live probe of its store (sqlite or Postgres). Returns server name and version, protocol version, root, boo"}],"package":null,"toolSurface":{"id":"ts_ec4depdhmp8p","endpointId":"ep_ayncwcp8mtr7","hash":"ec38075a0fb749c5df16b4129ea32d951aacda55ded10f2d035d8ec8260d5f5d","toolCount":13,"serverName":"ptally-self-host-mcp","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-11-08T11:24:18.490Z","lastSeenAt":"2026-11-09T05:29:58.979Z","observations":3,"hiddenText":{"level":"none","total":0,"tools":0,"kinds":[],"findings":[]},"toolNames":["get_docs","get_schema","validate_project","get_starter","get_projects","get_project","get_quotes","get_quote","amend_quote","run_quote","run_version_tests","patch_version","get_health"],"distinctSurfaces":1,"surfacesWithHiddenText":0},"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"ai.ptally/ptally","url":"https://registry.modelcontextprotocol.io/v0/servers/ai.ptally%2Fptally","firstSeenAt":"2026-11-08T08:18:15.933Z","fetchedAt":"2026-11-08T08:18:15.933Z","normalizedAt":"2026-11-08T08:18:15.933Z"}]},"firstSeenAt":"2026-11-08T08:18:15.933Z","updatedAt":"2026-11-09T05:34:48.312Z"}