mmt-mcp 1.43.3 → 1.44.1-pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/dist/examples/README.md +1 -1
  2. package/dist/examples/ai/golden_smoke/apis/echo.mmt +0 -1
  3. package/dist/examples/basic/01_simple_api/get_json.mmt +0 -1
  4. package/dist/examples/basic/01_simple_api/post_echo_json_body.mmt +0 -1
  5. package/dist/examples/basic/01_simple_api/post_echo_yaml_body.mmt +0 -1
  6. package/dist/examples/basic/03_environment_variables/get_json.mmt +0 -1
  7. package/dist/examples/basic/05_api_test_suite/README.md +9 -0
  8. package/dist/examples/basic/05_api_test_suite/echo.mmt +13 -0
  9. package/dist/examples/basic/05_api_test_suite/suite.mmt +4 -0
  10. package/dist/examples/basic/05_basic_documentation/api/get_user.mmt +0 -1
  11. package/dist/examples/examples-index.json +263 -0
  12. package/dist/examples/intermediate/01_api_inputs_outputs/get_dot_notation.mmt +0 -1
  13. package/dist/examples/intermediate/01_api_inputs_outputs/get_with_outputs.mmt +0 -1
  14. package/dist/examples/intermediate/01_api_inputs_outputs/post_regex_outputs.mmt +0 -1
  15. package/dist/examples/intermediate/01_api_inputs_outputs/post_with_inputs_outputs.mmt +0 -1
  16. package/dist/examples/intermediate/02_websocket/ws_json_echo.mmt +0 -1
  17. package/dist/examples/intermediate/05_api_documentation/api/get_users.mmt +0 -1
  18. package/dist/examples/intermediate/05_api_documentation/api/post_create_user.mmt +0 -1
  19. package/dist/examples/intermediate/05_api_documentation/api/ws_notifications.mmt +0 -1
  20. package/dist/examples/intermediate/05_api_documentation/markdown_api/health_check.mmt +0 -1
  21. package/dist/examples/intermediate/05_api_documentation/markdown_api/search_products.mmt +0 -1
  22. package/dist/examples/intermediate/05_api_documentation/markdown_api/submit_order.mmt +0 -1
  23. package/dist/examples/intermediate/06_imports/apis/echo_api.mmt +0 -1
  24. package/dist/examples/intermediate/06_imports/apis/greet_api.mmt +0 -1
  25. package/dist/examples/intermediate/07_simple_suite/api/echo_api.mmt +0 -1
  26. package/dist/examples/intermediate/08_chained_api_calls/api/get_profile.mmt +0 -1
  27. package/dist/examples/intermediate/08_chained_api_calls/api/login.mmt +0 -1
  28. package/dist/examples/intermediate/09_csv_data_driven_test/echo_api.mmt +0 -1
  29. package/dist/examples/intermediate/10_environment_presets/api/echo_env.mmt +0 -1
  30. package/dist/examples/intermediate/11_control_flow/api/echo.mmt +0 -1
  31. package/dist/examples/intermediate/12_dynamic_values/api/current.mmt +0 -1
  32. package/dist/examples/intermediate/12_dynamic_values/api/random_identity.mmt +0 -1
  33. package/dist/examples/intermediate/12_dynamic_values/api/random_network.mmt +0 -1
  34. package/dist/examples/intermediate/12_dynamic_values/api/random_time.mmt +0 -1
  35. package/dist/examples/intermediate/12_dynamic_values/api/random_types.mmt +0 -1
  36. package/dist/examples/intermediate/13_stages_and_conditions/api/get_profile.mmt +0 -1
  37. package/dist/examples/intermediate/13_stages_and_conditions/api/get_settings.mmt +0 -1
  38. package/dist/examples/intermediate/13_stages_and_conditions/api/login.mmt +0 -1
  39. package/dist/examples/intermediate/14_javascript_helpers/api/echo.mmt +0 -1
  40. package/dist/examples/intermediate/17_api_authentication/get_with_apikey_auth.mmt +0 -1
  41. package/dist/examples/intermediate/17_api_authentication/get_with_basic_auth.mmt +0 -1
  42. package/dist/examples/intermediate/17_api_authentication/get_with_bearer_auth.mmt +0 -1
  43. package/dist/examples/intermediate/18_simple_mock_server/api/create_user.mmt +0 -1
  44. package/dist/examples/intermediate/18_simple_mock_server/api/get_health.mmt +0 -1
  45. package/dist/examples/intermediate/18_simple_mock_server/api/get_user.mmt +0 -1
  46. package/dist/examples/intermediate/18_simple_mock_server/api/search.mmt +0 -1
  47. package/dist/examples/intermediate/19_environment_post_echo/post_echo.mmt +0 -1
  48. package/dist/examples/intermediate/20_document_parameters/api/search_users.mmt +0 -1
  49. package/dist/examples/intermediate/21_manual_timeout/manual_timeout.mmt +0 -1
  50. package/dist/examples/intermediate/22_omit_keyword/omit_keyword.mmt +0 -1
  51. package/dist/examples/intermediate/23_check_operators/api/sample.mmt +0 -1
  52. package/dist/examples/intermediate/24_test_call_cache/api/login_echo.mmt +0 -1
  53. package/dist/examples/intermediate/25_convert_to_mmt/bruno/converted/api/create-user.mmt +0 -1
  54. package/dist/examples/intermediate/25_convert_to_mmt/openapi/converted/api/get-sample-json.mmt +0 -1
  55. package/dist/examples/intermediate/25_convert_to_mmt/postman/converted/api/ping.mmt +0 -1
  56. package/dist/examples/professional/01_report_generation/api/echo.mmt +0 -1
  57. package/dist/examples/professional/02_tls_certificates/api/secure_echo.mmt +0 -1
  58. package/dist/examples/professional/03_load_test/echo_api.mmt +0 -1
  59. package/dist/examples/professional/04_convert_to_mmt/bruno/converted/api/echo-anything-alias.mmt +0 -1
  60. package/dist/examples/professional/04_convert_to_mmt/bruno/converted/api/echo-post-body.mmt +0 -1
  61. package/dist/examples/professional/04_convert_to_mmt/bruno/converted/api/echo-put-body.mmt +0 -1
  62. package/dist/examples/professional/04_convert_to_mmt/http/converted/api/echo-anything-alias.mmt +0 -1
  63. package/dist/examples/professional/04_convert_to_mmt/http/converted/api/echo-post-body.mmt +0 -1
  64. package/dist/examples/professional/04_convert_to_mmt/http/converted/api/echo-put-body.mmt +0 -1
  65. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/basic-auth-check.mmt +0 -1
  66. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/bearer-auth-check.mmt +0 -1
  67. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/cache-headers.mmt +0 -1
  68. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/delayed-response.mmt +0 -1
  69. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/echo-anything-alias.mmt +0 -1
  70. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/echo-delete.mmt +0 -1
  71. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/echo-get-with-query.mmt +0 -1
  72. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/echo-post-body.mmt +0 -1
  73. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/echo-put-body.mmt +0 -1
  74. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/get-sample-html.mmt +0 -1
  75. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/get-sample-json.mmt +0 -1
  76. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/get-sample-xml.mmt +0 -1
  77. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/method-match.mmt +0 -1
  78. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/random-bytes.mmt +0 -1
  79. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/redirect-n-times.mmt +0 -1
  80. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/return-client-ip.mmt +0 -1
  81. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/return-cookies.mmt +0 -1
  82. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/return-request-headers.mmt +0 -1
  83. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/return-status-code.mmt +0 -1
  84. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/service-help.mmt +0 -1
  85. package/dist/examples/professional/04_convert_to_mmt/openapi/converted/api/set-cookie.mmt +0 -1
  86. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/auth/basic-auth-check.mmt +0 -1
  87. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/auth/bearer-auth-check.mmt +0 -1
  88. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/echo/echo-anything-alias.mmt +0 -1
  89. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/echo/echo-delete.mmt +0 -1
  90. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/echo/echo-get-with-query.mmt +0 -1
  91. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/echo/echo-post-body.mmt +0 -1
  92. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/echo/echo-put-body.mmt +0 -1
  93. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/inspect/return-client-ip.mmt +0 -1
  94. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/inspect/return-cookies.mmt +0 -1
  95. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/inspect/return-request-headers.mmt +0 -1
  96. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/inspect/set-cookie.mmt +0 -1
  97. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/samples/get-sample-html.mmt +0 -1
  98. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/samples/get-sample-json.mmt +0 -1
  99. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/samples/get-sample-xml.mmt +0 -1
  100. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/samples/random-bytes.mmt +0 -1
  101. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/samples/service-help.mmt +0 -1
  102. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/status/cache-headers.mmt +0 -1
  103. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/status/delayed-response.mmt +0 -1
  104. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/status/method-match-get.mmt +0 -1
  105. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/status/redirect-twice.mmt +0 -1
  106. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/status/return-status-200.mmt +0 -1
  107. package/dist/examples/professional/04_convert_to_mmt/postman/converted/api/status/return-status-404.mmt +0 -1
  108. package/dist/examples/professional/05_tls_mock_server/api/secure_health.mmt +0 -1
  109. package/dist/examples/professional/06_mtls_mock_server/api/secure_health.mmt +0 -1
  110. package/dist/examples/professional/07_mock_server_timeout/api/slow_request.mmt +0 -1
  111. package/dist/examples/professional/10_vault_http_setenv/api/bearer_with_env_token.mmt +0 -1
  112. package/dist/examples/professional/10_vault_http_setenv/api/vault_kv_read.mmt +0 -1
  113. package/dist/examples/professional/11_token_resolution/README.md +76 -0
  114. package/dist/examples/professional/11_token_resolution/api/current_header.mmt +58 -0
  115. package/dist/examples/professional/11_token_resolution/api/current_json_body.mmt +62 -0
  116. package/dist/examples/professional/11_token_resolution/api/current_query.mmt +58 -0
  117. package/dist/examples/professional/11_token_resolution/api/current_urlencoded_body.mmt +59 -0
  118. package/dist/examples/professional/11_token_resolution/api/current_xml_body.mmt +58 -0
  119. package/dist/examples/professional/11_token_resolution/api/env_header.mmt +64 -0
  120. package/dist/examples/professional/11_token_resolution/api/env_json_body.mmt +68 -0
  121. package/dist/examples/professional/11_token_resolution/api/env_query.mmt +64 -0
  122. package/dist/examples/professional/11_token_resolution/api/env_urlencoded_body.mmt +65 -0
  123. package/dist/examples/professional/11_token_resolution/api/env_xml_body.mmt +65 -0
  124. package/dist/examples/professional/11_token_resolution/api/input_header.mmt +66 -0
  125. package/dist/examples/professional/11_token_resolution/api/input_json_body.mmt +70 -0
  126. package/dist/examples/professional/11_token_resolution/api/input_query.mmt +66 -0
  127. package/dist/examples/professional/11_token_resolution/api/input_urlencoded_body.mmt +65 -0
  128. package/dist/examples/professional/11_token_resolution/api/input_xml_body.mmt +68 -0
  129. package/dist/examples/professional/11_token_resolution/api/random_header.mmt +55 -0
  130. package/dist/examples/professional/11_token_resolution/api/random_json_body.mmt +59 -0
  131. package/dist/examples/professional/11_token_resolution/api/random_query.mmt +55 -0
  132. package/dist/examples/professional/11_token_resolution/api/random_urlencoded_body.mmt +55 -0
  133. package/dist/examples/professional/11_token_resolution/api/random_xml_body.mmt +56 -0
  134. package/dist/examples/professional/11_token_resolution/multimeter.mmt +12 -0
  135. package/dist/examples/professional/11_token_resolution/suite.mmt +24 -0
  136. package/dist/examples/professional/11_token_resolution/test/current_header_test.mmt +25 -0
  137. package/dist/examples/professional/11_token_resolution/test/current_json_body_test.mmt +26 -0
  138. package/dist/examples/professional/11_token_resolution/test/current_query_test.mmt +25 -0
  139. package/dist/examples/professional/11_token_resolution/test/current_urlencoded_body_test.mmt +25 -0
  140. package/dist/examples/professional/11_token_resolution/test/current_xml_body_test.mmt +25 -0
  141. package/dist/examples/professional/11_token_resolution/test/env_header_test.mmt +27 -0
  142. package/dist/examples/professional/11_token_resolution/test/env_json_body_test.mmt +28 -0
  143. package/dist/examples/professional/11_token_resolution/test/env_query_test.mmt +27 -0
  144. package/dist/examples/professional/11_token_resolution/test/env_urlencoded_body_test.mmt +27 -0
  145. package/dist/examples/professional/11_token_resolution/test/env_xml_body_test.mmt +27 -0
  146. package/dist/examples/professional/11_token_resolution/test/input_header_test.mmt +28 -0
  147. package/dist/examples/professional/11_token_resolution/test/input_json_body_test.mmt +29 -0
  148. package/dist/examples/professional/11_token_resolution/test/input_query_test.mmt +28 -0
  149. package/dist/examples/professional/11_token_resolution/test/input_urlencoded_body_test.mmt +28 -0
  150. package/dist/examples/professional/11_token_resolution/test/input_xml_body_test.mmt +28 -0
  151. package/dist/examples/professional/11_token_resolution/test/random_header_test.mmt +28 -0
  152. package/dist/examples/professional/11_token_resolution/test/random_json_body_test.mmt +35 -0
  153. package/dist/examples/professional/11_token_resolution/test/random_query_test.mmt +28 -0
  154. package/dist/examples/professional/11_token_resolution/test/random_urlencoded_body_test.mmt +28 -0
  155. package/dist/examples/professional/11_token_resolution/test/random_xml_body_test.mmt +28 -0
  156. package/dist/guides/golden-smoke.md +0 -1
  157. package/dist/server.cjs +2697 -372
  158. package/dist/server.js +2697 -372
  159. package/package.json +1 -1
@@ -16,4 +16,4 @@ Use these when you are ready for reusable APIs, authentication, mock servers, ri
16
16
 
17
17
  ## Professional
18
18
 
19
- Use these for higher-complexity workflows such as reports, CI pipelines (GitHub, GitLab, Azure), TLS/mTLS certificates, load testing, external mTLS smoke tests, converting a full OpenAPI spec (operations, examples, auth, schemas) into `.mmt` files, and advanced JavaScript helper imports.
19
+ Use these for higher-complexity workflows such as reports, CI pipelines (GitHub, GitLab, Azure), TLS/mTLS certificates, load testing, external mTLS smoke tests, converting a full OpenAPI spec (operations, examples, auth, schemas) into `.mmt` files, token type resolution on the echo server (`11_token_resolution`), and advanced JavaScript helper imports.
@@ -7,6 +7,5 @@ outputs:
7
7
  echoed: body.body.message
8
8
  url: https://test.mmt.dev/echo
9
9
  method: post
10
- format: json
11
10
  body:
12
11
  message: i:message
@@ -3,4 +3,3 @@ title: Get sample JSON
3
3
  description: Returns a fixed JSON payload from the test server
4
4
  url: https://test.mmt.dev/json
5
5
  method: get
6
- format: json
@@ -3,7 +3,6 @@ title: Post echo JSON body
3
3
  description: Sends a raw JSON body and gets it echoed back
4
4
  url: https://test.mmt.dev/echo
5
5
  method: post
6
- format: json
7
6
  headers:
8
7
  Content-Type: application/json
9
8
  body: |-
@@ -3,7 +3,6 @@ title: Post echo
3
3
  description: Sends a JSON body and gets it echoed back
4
4
  url: https://test.mmt.dev/echo
5
5
  method: post
6
- format: json
7
6
  headers:
8
7
  X-Custom: multimeter-example
9
8
  body:
@@ -3,4 +3,3 @@ title: Get sample JSON
3
3
  description: Fetch a sample JSON payload using an environment-based URL
4
4
  url: <<e:base_url>>/json
5
5
  method: get
6
- format: json
@@ -0,0 +1,9 @@
1
+ # API example `expect` / `require` in a suite
2
+
3
+ This example shows a `type: api` file with per-example `expect` / `require`, listed in a suite.
4
+
5
+ ```bash
6
+ npx testlight run suite.mmt
7
+ ```
8
+
9
+ Select the `ok` example in the Tests tab (or Send with that example) to evaluate the checks. See [API reference](../../../docs/files/api/reference.md) and [call expect](../../../docs/files/test/steps/call.md#expect).
@@ -0,0 +1,13 @@
1
+ type: api
2
+ title: Echo status
3
+ url: https://test.mmt.dev/json
4
+ method: get
5
+ outputs:
6
+ status_code: status
7
+ examples:
8
+ - id: ok
9
+ title: Happy path
10
+ expect:
11
+ status_code: 200
12
+ require:
13
+ status_code: == 200
@@ -0,0 +1,4 @@
1
+ type: suite
2
+ title: API with inline tests
3
+ items:
4
+ - ./echo.mmt
@@ -9,4 +9,3 @@ outputs:
9
9
  name: body.name
10
10
  url: https://test.mmt.dev/json
11
11
  method: get
12
- format: json
@@ -64,6 +64,18 @@
64
64
  "category": "basic",
65
65
  "title": "Basic POST test"
66
66
  },
67
+ {
68
+ "path": "basic/05_api_test_suite/echo.mmt",
69
+ "type": "api",
70
+ "category": "basic",
71
+ "title": "Echo status"
72
+ },
73
+ {
74
+ "path": "basic/05_api_test_suite/suite.mmt",
75
+ "type": "suite",
76
+ "category": "basic",
77
+ "title": "API with inline tests"
78
+ },
67
79
  {
68
80
  "path": "basic/05_basic_documentation/api/get_user.mmt",
69
81
  "type": "api",
@@ -1993,5 +2005,256 @@
1993
2005
  "type": "test",
1994
2006
  "category": "professional",
1995
2007
  "title": "Vault HTTP setenv → protected API"
2008
+ },
2009
+ {
2010
+ "path": "professional/11_token_resolution/api/current_header.mmt",
2011
+ "type": "api",
2012
+ "category": "professional",
2013
+ "title": "Current tokens in headers"
2014
+ },
2015
+ {
2016
+ "path": "professional/11_token_resolution/api/current_json_body.mmt",
2017
+ "type": "api",
2018
+ "category": "professional",
2019
+ "title": "Current tokens in a JSON body"
2020
+ },
2021
+ {
2022
+ "path": "professional/11_token_resolution/api/current_query.mmt",
2023
+ "type": "api",
2024
+ "category": "professional",
2025
+ "title": "Current tokens in the query string"
2026
+ },
2027
+ {
2028
+ "path": "professional/11_token_resolution/api/current_urlencoded_body.mmt",
2029
+ "type": "api",
2030
+ "category": "professional",
2031
+ "title": "Current tokens in a form body"
2032
+ },
2033
+ {
2034
+ "path": "professional/11_token_resolution/api/current_xml_body.mmt",
2035
+ "type": "api",
2036
+ "category": "professional",
2037
+ "title": "Current tokens in an XML body"
2038
+ },
2039
+ {
2040
+ "path": "professional/11_token_resolution/api/env_header.mmt",
2041
+ "type": "api",
2042
+ "category": "professional",
2043
+ "title": "Env tokens in headers"
2044
+ },
2045
+ {
2046
+ "path": "professional/11_token_resolution/api/env_json_body.mmt",
2047
+ "type": "api",
2048
+ "category": "professional",
2049
+ "title": "Env tokens in a JSON body"
2050
+ },
2051
+ {
2052
+ "path": "professional/11_token_resolution/api/env_query.mmt",
2053
+ "type": "api",
2054
+ "category": "professional",
2055
+ "title": "Env tokens in the query string"
2056
+ },
2057
+ {
2058
+ "path": "professional/11_token_resolution/api/env_urlencoded_body.mmt",
2059
+ "type": "api",
2060
+ "category": "professional",
2061
+ "title": "Env tokens in a form body"
2062
+ },
2063
+ {
2064
+ "path": "professional/11_token_resolution/api/env_xml_body.mmt",
2065
+ "type": "api",
2066
+ "category": "professional",
2067
+ "title": "Env tokens in an XML body"
2068
+ },
2069
+ {
2070
+ "path": "professional/11_token_resolution/api/input_header.mmt",
2071
+ "type": "api",
2072
+ "category": "professional",
2073
+ "title": "Input tokens in headers"
2074
+ },
2075
+ {
2076
+ "path": "professional/11_token_resolution/api/input_json_body.mmt",
2077
+ "type": "api",
2078
+ "category": "professional",
2079
+ "title": "Input tokens in a JSON body"
2080
+ },
2081
+ {
2082
+ "path": "professional/11_token_resolution/api/input_query.mmt",
2083
+ "type": "api",
2084
+ "category": "professional",
2085
+ "title": "Input tokens in the query string"
2086
+ },
2087
+ {
2088
+ "path": "professional/11_token_resolution/api/input_urlencoded_body.mmt",
2089
+ "type": "api",
2090
+ "category": "professional",
2091
+ "title": "Input tokens in a form body"
2092
+ },
2093
+ {
2094
+ "path": "professional/11_token_resolution/api/input_xml_body.mmt",
2095
+ "type": "api",
2096
+ "category": "professional",
2097
+ "title": "Input tokens in an XML body"
2098
+ },
2099
+ {
2100
+ "path": "professional/11_token_resolution/api/random_header.mmt",
2101
+ "type": "api",
2102
+ "category": "professional",
2103
+ "title": "Random tokens in headers"
2104
+ },
2105
+ {
2106
+ "path": "professional/11_token_resolution/api/random_json_body.mmt",
2107
+ "type": "api",
2108
+ "category": "professional",
2109
+ "title": "Random tokens in a JSON body"
2110
+ },
2111
+ {
2112
+ "path": "professional/11_token_resolution/api/random_query.mmt",
2113
+ "type": "api",
2114
+ "category": "professional",
2115
+ "title": "Random tokens in the query string"
2116
+ },
2117
+ {
2118
+ "path": "professional/11_token_resolution/api/random_urlencoded_body.mmt",
2119
+ "type": "api",
2120
+ "category": "professional",
2121
+ "title": "Random tokens in a form body"
2122
+ },
2123
+ {
2124
+ "path": "professional/11_token_resolution/api/random_xml_body.mmt",
2125
+ "type": "api",
2126
+ "category": "professional",
2127
+ "title": "Random tokens in an XML body"
2128
+ },
2129
+ {
2130
+ "path": "professional/11_token_resolution/multimeter.mmt",
2131
+ "type": "env",
2132
+ "category": "professional"
2133
+ },
2134
+ {
2135
+ "path": "professional/11_token_resolution/suite.mmt",
2136
+ "type": "suite",
2137
+ "category": "professional",
2138
+ "title": "Token resolution"
2139
+ },
2140
+ {
2141
+ "path": "professional/11_token_resolution/test/current_header_test.mmt",
2142
+ "type": "test",
2143
+ "category": "professional",
2144
+ "title": "Current token resolution (header)"
2145
+ },
2146
+ {
2147
+ "path": "professional/11_token_resolution/test/current_json_body_test.mmt",
2148
+ "type": "test",
2149
+ "category": "professional",
2150
+ "title": "Current token resolution (JSON body)"
2151
+ },
2152
+ {
2153
+ "path": "professional/11_token_resolution/test/current_query_test.mmt",
2154
+ "type": "test",
2155
+ "category": "professional",
2156
+ "title": "Current token resolution (query)"
2157
+ },
2158
+ {
2159
+ "path": "professional/11_token_resolution/test/current_urlencoded_body_test.mmt",
2160
+ "type": "test",
2161
+ "category": "professional",
2162
+ "title": "Current token resolution (urlencoded body)"
2163
+ },
2164
+ {
2165
+ "path": "professional/11_token_resolution/test/current_xml_body_test.mmt",
2166
+ "type": "test",
2167
+ "category": "professional",
2168
+ "title": "Current token resolution (XML body)"
2169
+ },
2170
+ {
2171
+ "path": "professional/11_token_resolution/test/env_header_test.mmt",
2172
+ "type": "test",
2173
+ "category": "professional",
2174
+ "title": "Env token resolution (header)"
2175
+ },
2176
+ {
2177
+ "path": "professional/11_token_resolution/test/env_json_body_test.mmt",
2178
+ "type": "test",
2179
+ "category": "professional",
2180
+ "title": "Env token resolution (JSON body)"
2181
+ },
2182
+ {
2183
+ "path": "professional/11_token_resolution/test/env_query_test.mmt",
2184
+ "type": "test",
2185
+ "category": "professional",
2186
+ "title": "Env token resolution (query)"
2187
+ },
2188
+ {
2189
+ "path": "professional/11_token_resolution/test/env_urlencoded_body_test.mmt",
2190
+ "type": "test",
2191
+ "category": "professional",
2192
+ "title": "Env token resolution (urlencoded body)"
2193
+ },
2194
+ {
2195
+ "path": "professional/11_token_resolution/test/env_xml_body_test.mmt",
2196
+ "type": "test",
2197
+ "category": "professional",
2198
+ "title": "Env token resolution (XML body)"
2199
+ },
2200
+ {
2201
+ "path": "professional/11_token_resolution/test/input_header_test.mmt",
2202
+ "type": "test",
2203
+ "category": "professional",
2204
+ "title": "Input token resolution (header)"
2205
+ },
2206
+ {
2207
+ "path": "professional/11_token_resolution/test/input_json_body_test.mmt",
2208
+ "type": "test",
2209
+ "category": "professional",
2210
+ "title": "Input token resolution (JSON body)"
2211
+ },
2212
+ {
2213
+ "path": "professional/11_token_resolution/test/input_query_test.mmt",
2214
+ "type": "test",
2215
+ "category": "professional",
2216
+ "title": "Input token resolution (query)"
2217
+ },
2218
+ {
2219
+ "path": "professional/11_token_resolution/test/input_urlencoded_body_test.mmt",
2220
+ "type": "test",
2221
+ "category": "professional",
2222
+ "title": "Input token resolution (urlencoded body)"
2223
+ },
2224
+ {
2225
+ "path": "professional/11_token_resolution/test/input_xml_body_test.mmt",
2226
+ "type": "test",
2227
+ "category": "professional",
2228
+ "title": "Input token resolution (XML body)"
2229
+ },
2230
+ {
2231
+ "path": "professional/11_token_resolution/test/random_header_test.mmt",
2232
+ "type": "test",
2233
+ "category": "professional",
2234
+ "title": "Random token resolution (header)"
2235
+ },
2236
+ {
2237
+ "path": "professional/11_token_resolution/test/random_json_body_test.mmt",
2238
+ "type": "test",
2239
+ "category": "professional",
2240
+ "title": "Random token resolution (JSON body)"
2241
+ },
2242
+ {
2243
+ "path": "professional/11_token_resolution/test/random_query_test.mmt",
2244
+ "type": "test",
2245
+ "category": "professional",
2246
+ "title": "Random token resolution (query)"
2247
+ },
2248
+ {
2249
+ "path": "professional/11_token_resolution/test/random_urlencoded_body_test.mmt",
2250
+ "type": "test",
2251
+ "category": "professional",
2252
+ "title": "Random token resolution (urlencoded body)"
2253
+ },
2254
+ {
2255
+ "path": "professional/11_token_resolution/test/random_xml_body_test.mmt",
2256
+ "type": "test",
2257
+ "category": "professional",
2258
+ "title": "Random token resolution (XML body)"
1996
2259
  }
1997
2260
  ]
@@ -11,4 +11,3 @@ outputs:
11
11
  items_length: body.nested.items.length
12
12
  url: https://test.mmt.dev/json
13
13
  method: get
14
- format: json
@@ -7,4 +7,3 @@ outputs:
7
7
  first_tag: body[tags][0]
8
8
  url: https://test.mmt.dev/json
9
9
  method: get
10
- format: json
@@ -17,7 +17,6 @@ outputs:
17
17
  result_code: 'body[/\sResult:\s(.*)\s\[\s/]'
18
18
  url: https://test.mmt.dev/echo
19
19
  method: post
20
- format: json
21
20
  body:
22
21
  username: i:username
23
22
  email: i:email
@@ -12,7 +12,6 @@ outputs:
12
12
  method: body[method]
13
13
  url: https://test.mmt.dev/echo
14
14
  method: post
15
- format: json
16
15
  body:
17
16
  username: i:username
18
17
  role: i:role
@@ -9,7 +9,6 @@ outputs:
9
9
  echoed_action: body.action
10
10
  url: wss://test.mmt.dev/ws
11
11
  protocol: ws
12
- format: json
13
12
  body:
14
13
  username: i:username
15
14
  action: i:action
@@ -10,4 +10,3 @@ outputs:
10
10
  tags: body[tags]
11
11
  url: https://test.mmt.dev/json
12
12
  method: get
13
- format: json
@@ -18,7 +18,6 @@ outputs:
18
18
  method: body[method]
19
19
  url: https://test.mmt.dev/echo
20
20
  method: post
21
- format: json
22
21
  body:
23
22
  username: i:username
24
23
  email: i:email
@@ -12,7 +12,6 @@ outputs:
12
12
  echoed_channel: body.channel
13
13
  url: wss://test.mmt.dev/ws
14
14
  protocol: ws
15
- format: json
16
15
  body:
17
16
  action: subscribe
18
17
  channel: i:channel
@@ -3,4 +3,3 @@ title: Health check
3
3
  description: overview.md#health-check
4
4
  url: https://test.mmt.dev/json
5
5
  method: get
6
- format: json
@@ -12,4 +12,3 @@ query:
12
12
  sort: relevance
13
13
  limit: "20"
14
14
  method: get
15
- format: json
@@ -9,7 +9,6 @@ outputs:
9
9
  method: body[method]
10
10
  url: https://test.mmt.dev/echo
11
11
  method: post
12
- format: json
13
12
  headers:
14
13
  Authorization: Bearer demo-token-xyz
15
14
  body:
@@ -8,6 +8,5 @@ outputs:
8
8
  status_code: status
9
9
  url: https://test.mmt.dev/echo
10
10
  method: post
11
- format: json
12
11
  body:
13
12
  message: i:message
@@ -8,6 +8,5 @@ outputs:
8
8
  status_code: status
9
9
  url: https://test.mmt.dev/echo
10
10
  method: post
11
- format: json
12
11
  body:
13
12
  name: i:name
@@ -7,6 +7,5 @@ outputs:
7
7
  echoed_message: body.body.message
8
8
  url: https://test.mmt.dev/echo
9
9
  method: post
10
- format: json
11
10
  body:
12
11
  message: i:message
@@ -9,7 +9,6 @@ outputs:
9
9
  email: body.body.token
10
10
  url: https://test.mmt.dev/echo
11
11
  method: post
12
- format: json
13
12
  body:
14
13
  token: i:token
15
14
  user_id: i:user_id
@@ -9,7 +9,6 @@ outputs:
9
9
  user_id: body.body.user_id
10
10
  url: https://test.mmt.dev/echo
11
11
  method: post
12
- format: json
13
12
  body:
14
13
  username: i:username
15
14
  password: i:password
@@ -9,6 +9,5 @@ outputs:
9
9
  status: status
10
10
  url: https://test.mmt.dev/echo
11
11
  method: post
12
- format: json
13
12
  body:
14
13
  message: i:message
@@ -8,7 +8,6 @@ outputs:
8
8
  echoed_mode: body.body.mode
9
9
  url: <<e:api_url>>/echo
10
10
  method: post
11
- format: json
12
11
  body:
13
12
  message: i:message
14
13
  mode: e:mode
@@ -8,6 +8,5 @@ outputs:
8
8
  echoed: body.body.message
9
9
  url: https://test.mmt.dev/echo
10
10
  method: post
11
- format: json
12
11
  body:
13
12
  message: i:message
@@ -15,7 +15,6 @@ outputs:
15
15
  request_method: body.method
16
16
  url: https://test.mmt.dev/echo
17
17
  method: post
18
- format: json
19
18
  body:
20
19
  created_utc: c:utc_datetime
21
20
  created_utc_plus_2s: c:utc_datetime(+2s)
@@ -15,7 +15,6 @@ outputs:
15
15
  request_method: body.method
16
16
  url: https://test.mmt.dev/echo
17
17
  method: post
18
- format: json
19
18
  body:
20
19
  email: r:email
21
20
  name: r:first_name
@@ -11,7 +11,6 @@ outputs:
11
11
  request_method: body.method
12
12
  url: https://test.mmt.dev/echo
13
13
  method: post
14
- format: json
15
14
  body:
16
15
  domain: r:domain
17
16
  random_url: r:url
@@ -14,7 +14,6 @@ outputs:
14
14
  request_method: body.method
15
15
  url: https://test.mmt.dev/echo
16
16
  method: post
17
- format: json
18
17
  body:
19
18
  random_datetime: r:datetime(2026-01-01,2026-12-31)
20
19
  random_utc_datetime: r:utc_datetime(2026-01-01T00:00:00Z,2026-12-31T23:59:59Z)
@@ -13,7 +13,6 @@ outputs:
13
13
  request_method: body.method
14
14
  url: https://test.mmt.dev/echo
15
15
  method: post
16
- format: json
17
16
  body:
18
17
  id: r:uuid
19
18
  lucky_number: r:int
@@ -8,6 +8,5 @@ outputs:
8
8
  name: body.body.token
9
9
  url: https://test.mmt.dev/echo
10
10
  method: post
11
- format: json
12
11
  body:
13
12
  token: i:token
@@ -8,6 +8,5 @@ outputs:
8
8
  theme: body.body.token
9
9
  url: https://test.mmt.dev/echo
10
10
  method: post
11
- format: json
12
11
  body:
13
12
  token: i:token
@@ -9,7 +9,6 @@ outputs:
9
9
  token: body.body.username
10
10
  url: https://test.mmt.dev/echo
11
11
  method: post
12
- format: json
13
12
  body:
14
13
  username: i:username
15
14
  password: i:password
@@ -8,6 +8,5 @@ outputs:
8
8
  echoed: body.body.message
9
9
  url: https://test.mmt.dev/echo
10
10
  method: post
11
- format: json
12
11
  body:
13
12
  message: i:message
@@ -3,7 +3,6 @@ title: Get with API key auth
3
3
  description: Sends a GET request with an API key in a custom header
4
4
  url: https://test.mmt.dev/echo
5
5
  method: get
6
- format: json
7
6
  auth:
8
7
  type: api-key
9
8
  header: X-API-Key
@@ -3,7 +3,6 @@ title: Get with Basic auth
3
3
  description: Sends a GET request with Basic username/password authentication
4
4
  url: https://test.mmt.dev/echo
5
5
  method: get
6
- format: json
7
6
  auth:
8
7
  type: basic
9
8
  username: admin
@@ -3,7 +3,6 @@ title: Get with Bearer auth
3
3
  description: Sends a GET request with Bearer token authentication
4
4
  url: https://test.mmt.dev/echo
5
5
  method: get
6
- format: json
7
6
  auth:
8
7
  type: bearer
9
8
  token: my-secret-token
@@ -9,7 +9,6 @@ outputs:
9
9
  message: body.message
10
10
  url: http://localhost:9099/users
11
11
  method: post
12
- format: json
13
12
  body:
14
13
  name: i:name
15
14
  email: i:email
@@ -6,4 +6,3 @@ outputs:
6
6
  uptime: body.uptime
7
7
  url: http://localhost:9099/health
8
8
  method: get
9
- format: json
@@ -9,4 +9,3 @@ outputs:
9
9
  email: body.email
10
10
  url: http://localhost:9099/users/<<i:user_id>>
11
11
  method: get
12
- format: json
@@ -8,4 +8,3 @@ outputs:
8
8
  result_count: body.results.length
9
9
  url: http://localhost:9099/search?q=<<i:q>>
10
10
  method: get
11
- format: json
@@ -3,7 +3,6 @@ title: Post echo
3
3
  description: Send a JSON body to the echo endpoint using an environment-based URL and env accessors
4
4
  url: <<e:base_url>>/echo
5
5
  method: post
6
- format: json
7
6
  headers:
8
7
  X-Custom: e:custom_header
9
8
  X-Custom-Prefix: <<e:custom_header[0:5]>>