Skip to content

Commit 08622d3

Browse files
- Added robot test MCP HTTPS List Providers Canonical.
- Added robot test `MCP HTTPS List Services Canonical`. - Added robot test `MCP HTTPS List Resources Canonical`. - Added robot test `MCP HTTPS List Methods Canonical`. - Added robot test `MCP HTTPS Describe Table Canonical`.
1 parent 30fffe7 commit 08622d3

File tree

1 file changed

+103
-0
lines changed

1 file changed

+103
-0
lines changed

test/robot/functional/mcp.robot

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -403,6 +403,109 @@ MCP HTTPS Server JSON DTO Meta Find Relationships
403403
${meta_rels_obj}= Parse MCP JSON Output ${meta_rels.stdout}
404404
Dictionary Should Contain Key ${meta_rels_obj} text
405405

406+
407+
MCP HTTPS List Providers Canonical
408+
Pass Execution If "%{IS_SKIP_MCP_TEST=false}" == "true" Some platforms do not have the MCP client available
409+
# Future proofing: raw text format reserved; may gain structured hints later.
410+
${ns_query_text}= Run Process
411+
... ${STACKQL_MCP_CLIENT_EXE}
412+
... exec
413+
... \-\-client\-type\=http
414+
... \-\-url\=https://127.0.0.1:9004
415+
... \-\-client\-cfg
416+
... { "apply_tls_globally": true, "insecure_skip_verify": true, "ca_file": "test/server/mtls/credentials/pg_server_cert.pem", "promote_leaf_to_ca": true }
417+
... \-\-exec.action
418+
... list_providers
419+
... \-\-exec.args
420+
... {"provider": "google"}
421+
... stdout=${CURDIR}${/}tmp${/}MCP-HTTPS-list-providers-canonical.txt
422+
... stderr=${CURDIR}${/}tmp${/}MCP-HTTPS-list-providers-canonical-stderr.txt
423+
${meta_rels_obj}= Parse MCP JSON Output ${meta_rels.stdout}
424+
Dictionary Should Contain Key ${meta_rels_obj} rows
425+
Should Not Be Empty ${meta_rels_obj[rows]}
426+
427+
MCP HTTPS List Services Canonical
428+
Pass Execution If "%{IS_SKIP_MCP_TEST=false}" == "true" Some platforms do not have the MCP client available
429+
# Future proofing: raw text format reserved; may gain structured hints later.
430+
${ns_query_text}= Run Process
431+
... ${STACKQL_MCP_CLIENT_EXE}
432+
... exec
433+
... \-\-client\-type\=http
434+
... \-\-url\=https://127.0.0.1:9004
435+
... \-\-client\-cfg
436+
... { "apply_tls_globally": true, "insecure_skip_verify": true, "ca_file": "test/server/mtls/credentials/pg_server_cert.pem", "promote_leaf_to_ca": true }
437+
... \-\-exec.action
438+
... list_services
439+
... \-\-exec.args
440+
... {"provider": "google"}
441+
... stdout=${CURDIR}${/}tmp${/}MCP-HTTPS-list-services-canonical.txt
442+
... stderr=${CURDIR}${/}tmp${/}MCP-HTTPS-list-services-canonical-stderr.txt
443+
${meta_rels_obj}= Parse MCP JSON Output ${meta_rels.stdout}
444+
Dictionary Should Contain Key ${meta_rels_obj} rows
445+
Should Not Be Empty ${meta_rels_obj[rows]}
446+
447+
MCP HTTPS List Resources Canonical
448+
Pass Execution If "%{IS_SKIP_MCP_TEST=false}" == "true" Some platforms do not have the MCP client available
449+
# Future proofing: raw text format reserved; may gain structured hints later.
450+
${ns_query_text}= Run Process
451+
... ${STACKQL_MCP_CLIENT_EXE}
452+
... exec
453+
... \-\-client\-type\=http
454+
... \-\-url\=https://127.0.0.1:9004
455+
... \-\-client\-cfg
456+
... { "apply_tls_globally": true, "insecure_skip_verify": true, "ca_file": "test/server/mtls/credentials/pg_server_cert.pem", "promote_leaf_to_ca": true }
457+
... \-\-exec.action
458+
... list_resources
459+
... \-\-exec.args
460+
... {"provider": "google", "service": "compute"}
461+
... stdout=${CURDIR}${/}tmp${/}MCP-HTTPS-list-resources-canonical.txt
462+
... stderr=${CURDIR}${/}tmp${/}MCP-HTTPS-list-resources-canonical-stderr.txt
463+
${meta_rels_obj}= Parse MCP JSON Output ${meta_rels.stdout}
464+
Dictionary Should Contain Key ${meta_rels_obj} rows
465+
Should Not Be Empty ${meta_rels_obj[rows]}
466+
467+
468+
MCP HTTPS List Methods Canonical
469+
Pass Execution If "%{IS_SKIP_MCP_TEST=false}" == "true" Some platforms do not have the MCP client available
470+
# Future proofing: raw text format reserved; may gain structured hints later.
471+
${ns_query_text}= Run Process
472+
... ${STACKQL_MCP_CLIENT_EXE}
473+
... exec
474+
... \-\-client\-type\=http
475+
... \-\-url\=https://127.0.0.1:9004
476+
... \-\-client\-cfg
477+
... { "apply_tls_globally": true, "insecure_skip_verify": true, "ca_file": "test/server/mtls/credentials/pg_server_cert.pem", "promote_leaf_to_ca": true }
478+
... \-\-exec.action
479+
... list_methods
480+
... \-\-exec.args
481+
... {"provider": "google", "service": "compute", "resource": "networks"}
482+
... stdout=${CURDIR}${/}tmp${/}MCP-HTTPS-list-methods-canonical.txt
483+
... stderr=${CURDIR}${/}tmp${/}MCP-HTTPS-list-methods-canonical-stderr.txt
484+
${meta_rels_obj}= Parse MCP JSON Output ${meta_rels.stdout}
485+
Dictionary Should Contain Key ${meta_rels_obj} rows
486+
Should Not Be Empty ${meta_rels_obj[rows]}
487+
488+
489+
MCP HTTPS Describe Table Canonical
490+
Pass Execution If "%{IS_SKIP_MCP_TEST=false}" == "true" Some platforms do not have the MCP client available
491+
# Future proofing: raw text format reserved; may gain structured hints later.
492+
${ns_query_text}= Run Process
493+
... ${STACKQL_MCP_CLIENT_EXE}
494+
... exec
495+
... \-\-client\-type\=http
496+
... \-\-url\=https://127.0.0.1:9004
497+
... \-\-client\-cfg
498+
... { "apply_tls_globally": true, "insecure_skip_verify": true, "ca_file": "test/server/mtls/credentials/pg_server_cert.pem", "promote_leaf_to_ca": true }
499+
... \-\-exec.action
500+
... meta.describe_table
501+
... \-\-exec.args
502+
... {"provider": "google", "service": "compute", "resource": "networks"}
503+
... stdout=${CURDIR}${/}tmp${/}MCP-HTTPS-describe-table-canonical.txt
504+
... stderr=${CURDIR}${/}tmp${/}MCP-HTTPS-describe-table-canonical-stderr.txt
505+
${meta_rels_obj}= Parse MCP JSON Output ${meta_rels.stdout}
506+
Dictionary Should Contain Key ${meta_rels_obj} rows
507+
Should Not Be Empty ${meta_rels_obj[rows]}
508+
406509
MCP HTTPS Server Validate Canonical
407510
Pass Execution If "%{IS_SKIP_MCP_TEST=false}" == "true" Some platforms do not have the MCP client available
408511
# Future proofing: raw text format reserved; may gain structured hints later.

0 commit comments

Comments
 (0)