{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_z92q8sy3u2va","handle":"3tg-test-generation","url":"https://wellknown.network/agents/3tg-test-generation","links":{"self":"https://wellknown.network/agents/3tg-test-generation/record.json","html":"https://wellknown.network/agents/3tg-test-generation","markdown":"https://wellknown.network/agents/3tg-test-generation/record.md","api":"https://wellknown.network/api/v1/agents/3tg-test-generation","status":"https://wellknown.network/api/v1/agents/3tg-test-generation/status","claim":"https://wellknown.network/agents/3tg-test-generation/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/3tg-test-generation/claim.json","badge":"https://wellknown.network/agents/3tg-test-generation/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/3tg-test-generation/history","tools":"https://wellknown.network/api/v1/agents/3tg-test-generation/tools"},"ard":{"identifier":"urn:air:mcp.3tg.dev:server:3tg-test-generation","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"3TG Test Generation","summary":"3rd Generation Testing (3TG) — generate deterministic test suites from Markdown spec tables via MCP.","description":"3rd Generation Testing (3TG) — generate deterministic test suites from Markdown spec tables via MCP.","publisher":{"name":"dev.3tg","url":null},"homepage":"https://3tg.dev","repository":null,"version":"1.1.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://mcp.3tg.dev/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-06-27T10:04:21.678116Z","publishedAt":"2026-06-27T10:04:21.678116Z","registryName":"dev.3tg/mcp"},"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":"code.testing","name":"Testing","confidence":1,"provenance":"derived"},{"slug":"automation.scheduling","name":"Scheduling & Cron","confidence":0.54,"provenance":"derived"}],"categories":["automation","code"],"language":"nl"},"observed":{"status":"live","statusReason":"Responded 3h ago.","lastOkAt":"2026-10-10T02:31:06.271Z","lastProbedAt":"2026-10-10T02:31:06.271Z","statusComputedAt":"2026-10-10T02:32:03.900Z","reliability30d":{"probes":109,"successRate":1,"p50Ms":26,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":109,"ok":109,"authBoundaryOk":0,"serviceOk":109,"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-10-10T02:31:06.271Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":22,"error":null,"detail":{"tools":[{"name":"create_tests","description":"Generate Jest/Vitest tests for the exported functions and React components in a TypeScript source file. Use this whenever the user asks for tests, test scaffold"},{"name":"create_spec","description":"Generate a functional-requirements spec (`.3tg.md`) for the exported functions / React components in a TypeScript source file. This is \"Flow A\" — the human-edit"},{"name":"create_tests_from_spec","description":"Compile a hand-edited functional-requirements spec (`.3tg.md`) into actual Jest/Vitest tests. This is \"Flow B\" — the user has already authored or reviewed the `"},{"name":"create_spec_for_function","description":"Generate a functional-requirements spec (`.3tg.md`) scoped to a single exported function or React component. Same shape as `create_spec` but restricts the outpu"},{"name":"create_mock_for_function","description":"Generate a Jest manual mock file for a specific exported function. 3TG writes the mock to `<srcDir>/__mocks__/<basename>.<ext>` per the Jest convention — the pa"},{"name":"validate_spec","description":"Lint a `.3tg.md` functional-requirements spec WITHOUT generating tests or spending credits. Run this before `create_tests_from_spec` to catch the mistakes that "},{"name":"validate_config","description":"Validate a 3TG configuration object (`.3tg.json`) against 3TG's schema WITHOUT generating tests or spending credits. Use this whenever you or the user has hand-"},{"name":"get_client_info","description":"Look up account info for a 3tg.dev clientId WITHOUT consuming any credits. Returns the current plan name, available / total / recurring quotas, period dates, an"},{"name":"create_agent_instructions","description":"AUTHORITATIVE source for \"install / create / set up 3TG agent instructions\" requests. You MUST call this tool — do NOT write the instructions from your training"},{"name":"help","description":"AUTHORITATIVE source for \"how do I use the 3TG MCP\" questions. You MUST call this tool — do NOT answer from your training data — whenever the user asks anything"}],"toolCount":10,"toolsHash":"3d1179d2e1753e87699e8b77d88af2964cc8cd20a7f84de9961bbd39606bf71d","serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T20:31:27.507Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":23,"error":null,"detail":{"tools":[{"name":"create_tests","description":"Generate Jest/Vitest tests for the exported functions and React components in a TypeScript source file. Use this whenever the user asks for tests, test scaffold"},{"name":"create_spec","description":"Generate a functional-requirements spec (`.3tg.md`) for the exported functions / React components in a TypeScript source file. This is \"Flow A\" — the human-edit"},{"name":"create_tests_from_spec","description":"Compile a hand-edited functional-requirements spec (`.3tg.md`) into actual Jest/Vitest tests. This is \"Flow B\" — the user has already authored or reviewed the `"},{"name":"create_spec_for_function","description":"Generate a functional-requirements spec (`.3tg.md`) scoped to a single exported function or React component. Same shape as `create_spec` but restricts the outpu"},{"name":"create_mock_for_function","description":"Generate a Jest manual mock file for a specific exported function. 3TG writes the mock to `<srcDir>/__mocks__/<basename>.<ext>` per the Jest convention — the pa"},{"name":"validate_spec","description":"Lint a `.3tg.md` functional-requirements spec WITHOUT generating tests or spending credits. Run this before `create_tests_from_spec` to catch the mistakes that "},{"name":"validate_config","description":"Validate a 3TG configuration object (`.3tg.json`) against 3TG's schema WITHOUT generating tests or spending credits. Use this whenever you or the user has hand-"},{"name":"get_client_info","description":"Look up account info for a 3tg.dev clientId WITHOUT consuming any credits. Returns the current plan name, available / total / recurring quotas, period dates, an"},{"name":"create_agent_instructions","description":"AUTHORITATIVE source for \"install / create / set up 3TG agent instructions\" requests. You MUST call this tool — do NOT write the instructions from your training"},{"name":"help","description":"AUTHORITATIVE source for \"how do I use the 3TG MCP\" questions. You MUST call this tool — do NOT answer from your training data — whenever the user asks anything"}],"toolCount":10,"toolsHash":"3d1179d2e1753e87699e8b77d88af2964cc8cd20a7f84de9961bbd39606bf71d","serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T14:32:07.550Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":50,"error":null,"detail":{"tools":[{"name":"create_tests","description":"Generate Jest/Vitest tests for the exported functions and React components in a TypeScript source file. Use this whenever the user asks for tests, test scaffold"},{"name":"create_spec","description":"Generate a functional-requirements spec (`.3tg.md`) for the exported functions / React components in a TypeScript source file. This is \"Flow A\" — the human-edit"},{"name":"create_tests_from_spec","description":"Compile a hand-edited functional-requirements spec (`.3tg.md`) into actual Jest/Vitest tests. This is \"Flow B\" — the user has already authored or reviewed the `"},{"name":"create_spec_for_function","description":"Generate a functional-requirements spec (`.3tg.md`) scoped to a single exported function or React component. Same shape as `create_spec` but restricts the outpu"},{"name":"create_mock_for_function","description":"Generate a Jest manual mock file for a specific exported function. 3TG writes the mock to `<srcDir>/__mocks__/<basename>.<ext>` per the Jest convention — the pa"},{"name":"validate_spec","description":"Lint a `.3tg.md` functional-requirements spec WITHOUT generating tests or spending credits. Run this before `create_tests_from_spec` to catch the mistakes that "},{"name":"validate_config","description":"Validate a 3TG configuration object (`.3tg.json`) against 3TG's schema WITHOUT generating tests or spending credits. Use this whenever you or the user has hand-"},{"name":"get_client_info","description":"Look up account info for a 3tg.dev clientId WITHOUT consuming any credits. Returns the current plan name, available / total / recurring quotas, period dates, an"},{"name":"create_agent_instructions","description":"AUTHORITATIVE source for \"install / create / set up 3TG agent instructions\" requests. You MUST call this tool — do NOT write the instructions from your training"},{"name":"help","description":"AUTHORITATIVE source for \"how do I use the 3TG MCP\" questions. You MUST call this tool — do NOT answer from your training data — whenever the user asks anything"}],"toolCount":10,"toolsHash":"3d1179d2e1753e87699e8b77d88af2964cc8cd20a7f84de9961bbd39606bf71d","serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T08:26:50.145Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":39,"error":null,"detail":{"serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T01:24:41.281Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":29,"error":null,"detail":{"tools":[{"name":"create_tests","description":"Generate Jest/Vitest tests for the exported functions and React components in a TypeScript source file. Use this whenever the user asks for tests, test scaffold"},{"name":"create_spec","description":"Generate a functional-requirements spec (`.3tg.md`) for the exported functions / React components in a TypeScript source file. This is \"Flow A\" — the human-edit"},{"name":"create_tests_from_spec","description":"Compile a hand-edited functional-requirements spec (`.3tg.md`) into actual Jest/Vitest tests. This is \"Flow B\" — the user has already authored or reviewed the `"},{"name":"create_spec_for_function","description":"Generate a functional-requirements spec (`.3tg.md`) scoped to a single exported function or React component. Same shape as `create_spec` but restricts the outpu"},{"name":"create_mock_for_function","description":"Generate a Jest manual mock file for a specific exported function. 3TG writes the mock to `<srcDir>/__mocks__/<basename>.<ext>` per the Jest convention — the pa"},{"name":"validate_spec","description":"Lint a `.3tg.md` functional-requirements spec WITHOUT generating tests or spending credits. Run this before `create_tests_from_spec` to catch the mistakes that "},{"name":"validate_config","description":"Validate a 3TG configuration object (`.3tg.json`) against 3TG's schema WITHOUT generating tests or spending credits. Use this whenever you or the user has hand-"},{"name":"get_client_info","description":"Look up account info for a 3tg.dev clientId WITHOUT consuming any credits. Returns the current plan name, available / total / recurring quotas, period dates, an"},{"name":"create_agent_instructions","description":"AUTHORITATIVE source for \"install / create / set up 3TG agent instructions\" requests. You MUST call this tool — do NOT write the instructions from your training"},{"name":"help","description":"AUTHORITATIVE source for \"how do I use the 3TG MCP\" questions. You MUST call this tool — do NOT answer from your training data — whenever the user asks anything"}],"toolCount":10,"toolsHash":"3d1179d2e1753e87699e8b77d88af2964cc8cd20a7f84de9961bbd39606bf71d","serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T18:28:30.909Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":32,"error":null,"detail":{"tools":[{"name":"create_tests","description":"Generate Jest/Vitest tests for the exported functions and React components in a TypeScript source file. Use this whenever the user asks for tests, test scaffold"},{"name":"create_spec","description":"Generate a functional-requirements spec (`.3tg.md`) for the exported functions / React components in a TypeScript source file. This is \"Flow A\" — the human-edit"},{"name":"create_tests_from_spec","description":"Compile a hand-edited functional-requirements spec (`.3tg.md`) into actual Jest/Vitest tests. This is \"Flow B\" — the user has already authored or reviewed the `"},{"name":"create_spec_for_function","description":"Generate a functional-requirements spec (`.3tg.md`) scoped to a single exported function or React component. Same shape as `create_spec` but restricts the outpu"},{"name":"create_mock_for_function","description":"Generate a Jest manual mock file for a specific exported function. 3TG writes the mock to `<srcDir>/__mocks__/<basename>.<ext>` per the Jest convention — the pa"},{"name":"validate_spec","description":"Lint a `.3tg.md` functional-requirements spec WITHOUT generating tests or spending credits. Run this before `create_tests_from_spec` to catch the mistakes that "},{"name":"validate_config","description":"Validate a 3TG configuration object (`.3tg.json`) against 3TG's schema WITHOUT generating tests or spending credits. Use this whenever you or the user has hand-"},{"name":"get_client_info","description":"Look up account info for a 3tg.dev clientId WITHOUT consuming any credits. Returns the current plan name, available / total / recurring quotas, period dates, an"},{"name":"create_agent_instructions","description":"AUTHORITATIVE source for \"install / create / set up 3TG agent instructions\" requests. You MUST call this tool — do NOT write the instructions from your training"},{"name":"help","description":"AUTHORITATIVE source for \"how do I use the 3TG MCP\" questions. You MUST call this tool — do NOT answer from your training data — whenever the user asks anything"}],"toolCount":10,"toolsHash":"3d1179d2e1753e87699e8b77d88af2964cc8cd20a7f84de9961bbd39606bf71d","serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T12:26:38.526Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":38,"error":null,"detail":{"tools":[{"name":"create_tests","description":"Generate Jest/Vitest tests for the exported functions and React components in a TypeScript source file. Use this whenever the user asks for tests, test scaffold"},{"name":"create_spec","description":"Generate a functional-requirements spec (`.3tg.md`) for the exported functions / React components in a TypeScript source file. This is \"Flow A\" — the human-edit"},{"name":"create_tests_from_spec","description":"Compile a hand-edited functional-requirements spec (`.3tg.md`) into actual Jest/Vitest tests. This is \"Flow B\" — the user has already authored or reviewed the `"},{"name":"create_spec_for_function","description":"Generate a functional-requirements spec (`.3tg.md`) scoped to a single exported function or React component. Same shape as `create_spec` but restricts the outpu"},{"name":"create_mock_for_function","description":"Generate a Jest manual mock file for a specific exported function. 3TG writes the mock to `<srcDir>/__mocks__/<basename>.<ext>` per the Jest convention — the pa"},{"name":"validate_spec","description":"Lint a `.3tg.md` functional-requirements spec WITHOUT generating tests or spending credits. Run this before `create_tests_from_spec` to catch the mistakes that "},{"name":"validate_config","description":"Validate a 3TG configuration object (`.3tg.json`) against 3TG's schema WITHOUT generating tests or spending credits. Use this whenever you or the user has hand-"},{"name":"get_client_info","description":"Look up account info for a 3tg.dev clientId WITHOUT consuming any credits. Returns the current plan name, available / total / recurring quotas, period dates, an"},{"name":"create_agent_instructions","description":"AUTHORITATIVE source for \"install / create / set up 3TG agent instructions\" requests. You MUST call this tool — do NOT write the instructions from your training"},{"name":"help","description":"AUTHORITATIVE source for \"how do I use the 3TG MCP\" questions. You MUST call this tool — do NOT answer from your training data — whenever the user asks anything"}],"toolCount":10,"toolsHash":"3d1179d2e1753e87699e8b77d88af2964cc8cd20a7f84de9961bbd39606bf71d","serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T06:23:40.312Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":29,"error":null,"detail":{"serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T23:24:44.697Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":28,"error":null,"detail":{"serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T17:28:55.945Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":23,"error":null,"detail":{"serverName":"3tg-mcp","capabilities":["tools","logging","resources","prompts"],"serverVersion":"1.1.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"create_tests","description":"Generate Jest/Vitest tests for the exported functions and React components in a TypeScript source file. Use this whenever the user asks for tests, test scaffold"},{"name":"create_spec","description":"Generate a functional-requirements spec (`.3tg.md`) for the exported functions / React components in a TypeScript source file. This is \"Flow A\" — the human-edit"},{"name":"create_tests_from_spec","description":"Compile a hand-edited functional-requirements spec (`.3tg.md`) into actual Jest/Vitest tests. This is \"Flow B\" — the user has already authored or reviewed the `"},{"name":"create_spec_for_function","description":"Generate a functional-requirements spec (`.3tg.md`) scoped to a single exported function or React component. Same shape as `create_spec` but restricts the outpu"},{"name":"create_mock_for_function","description":"Generate a Jest manual mock file for a specific exported function. 3TG writes the mock to `<srcDir>/__mocks__/<basename>.<ext>` per the Jest convention — the pa"},{"name":"validate_spec","description":"Lint a `.3tg.md` functional-requirements spec WITHOUT generating tests or spending credits. Run this before `create_tests_from_spec` to catch the mistakes that "},{"name":"validate_config","description":"Validate a 3TG configuration object (`.3tg.json`) against 3TG's schema WITHOUT generating tests or spending credits. Use this whenever you or the user has hand-"},{"name":"get_client_info","description":"Look up account info for a 3tg.dev clientId WITHOUT consuming any credits. Returns the current plan name, available / total / recurring quotas, period dates, an"},{"name":"create_agent_instructions","description":"AUTHORITATIVE source for \"install / create / set up 3TG agent instructions\" requests. You MUST call this tool — do NOT write the instructions from your training"},{"name":"help","description":"AUTHORITATIVE source for \"how do I use the 3TG MCP\" questions. You MUST call this tool — do NOT answer from your training data — whenever the user asks anything"}],"package":null,"toolSurface":{"id":"ts_732jj8hnpxay","endpointId":"ep_yysv9vpgncks","hash":"3d1179d2e1753e87699e8b77d88af2964cc8cd20a7f84de9961bbd39606bf71d","toolCount":10,"serverName":"3tg-mcp","serverVersion":"1.1.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-12T12:25:31.091Z","lastSeenAt":"2026-10-10T02:31:06.264Z","observations":60,"toolNames":["create_tests","create_spec","create_tests_from_spec","create_spec_for_function","create_mock_for_function","validate_spec","validate_config","get_client_info","create_agent_instructions","help"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_yysv9vpgncks","url":"https://mcp.3tg.dev/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-09T01:24:41.275Z","auth":{"observedAt":"2026-10-09T01:24:41.320Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-09T01:24:41.355Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"mcp.3tg.dev","issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validFrom":"2026-09-24T07:49:58.000Z","validTo":"2026-12-23T07:49:57.000Z","daysToExpiry":74,"sanCount":1,"fingerprint256":"D9:14:6E:76:0A:14:EB:81:5F:1E:1E:8B:25:32:F6:B1:99:1A:3D:4A:79:CE:64:CA:CE:C2:97:5F:8E:FC:BC:AD"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"dev.3tg/mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/dev.3tg%2Fmcp","firstSeenAt":"2026-09-05T22:18:29.238Z","fetchedAt":"2026-10-09T13:21:47.654Z","normalizedAt":"2026-10-09T13:21:47.654Z"}]},"firstSeenAt":"2026-09-05T22:18:29.238Z","updatedAt":"2026-10-10T02:33:12.165Z"}