You can configure AI-powered code editing tools like Copilot and Windsurf to use SOAtest as a Model Context Protocol (MCP) server. Once configured, those tools can use SOAtest directly. This works with both the SOAVirt WAR and desktop server. This feature requires a license that has "LLM Integration" enabled.
Configuring the SOAtest MCP Server
You need to configure your tool to access SOAtest as an MCP server by providing it the endpoint <INSTALL_DIR>/soavirt/mcp/sse
. You can do this a couple ways.
Adding it to Your Configuration
You can add the endpoint to your configuration. For example:
{ "servers": { "soatest": { "url": "http://localhost:9080/soavirt/mcp/sse" } } }
Adding it with VS Code
You can add the SOAtest MCP server endpoint using the VS Code CLI. For example:
Linux
code --add-mcp '{"name":"soatest","url":"http://localhost:9080/soavirt/mcp/sse"}'
Windows
"C:\Program Files\Microsoft VS Code\bin\code" --add-mcp {\"name\":\"soatest\",\"url\":\"http://localhost:9080/soavirt/mcp/sse\"}
Example Prompts
The following examples (using the public ParaBank site) demonstrate the kinds of things you can do with your AI-powered code editing tool once you have configured it to use SOAtest as an MCP server. Sample responses are included for each one to give you an idea of the kind of feedback you can get.
- GET https://parabank.parasoft.com/parabank/services/bank/customers/12212/accounts with SOAtestSample response
Ran runRestClient - soatest (MCP server)
The GET request to `https://parabank.parasoft.com/parabank/services/bank/customers/12212/accounts` was successful. The response contains a list of accounts for customer 12212 in XML format, including account IDs, types (CHECKING/SAVINGS), and balances.
- Assert that none of the accounts have a negative balance.Sample response
Ran runAiAssertor - soatest (MCP server)
The assertion failed: there are accounts with negative balances in the response. Specifically, account IDs 12345 and 12678 have balances of -2400.00 and -100.00, respectively. This violates the requirement that none of the accounts have a negative balance.
Note the use of the word "assert" in the second prompt. It can be useful choose terms that direct the LLM to specific tools (in this case, the AI Assertor) so that it understands what you want the first time.