Integrate OpenCode with Live Sage 300 Data via CData Connect AI
OpenCode is an open source AI coding agent that connects to a wide range of LLM providers. It supports the model context protocol (MCP), allowing you to configure local or remote MCP servers in its configuration files to add external tools and data sources and give the agent access to live data.
By integrating OpenCode with CData Connect AI through the built-in MCP Server, OpenCode gains governed, real-time access to live Sage 300 data. You can list catalogs, explore schemas, and query records from Sage 300 data using natural language prompts, with all data access running securely against authorized sources.
This article explains how to configure Sage 300 connectivity in Connect AI, generate the required personal access token, install OpenCode, add the Connect AI MCP Server in the project configuration file, configure an LLM provider, and verify the integration by querying live Sage 300 data from OpenCode.
Step 1: Configure Sage 300 connectivity for OpenCode
Connectivity to Sage 300 from OpenCode is made possible through Connect AI's Remote MCP Server. To interact with Sage 300 data from OpenCode, start by creating and configuring a Sage 300 connection in Connect AI.
- Log into Connect AI, click Sources, and then click Add Connection
- Select Sage 300 from the Add Connection panel
-
Enter the necessary authentication properties to connect to Sage 300.
Sage 300 requires some initial setup in order to communicate over the Sage 300 Web API.
- Set up the security groups for the Sage 300 user. Give the Sage 300 user access to the
option under Security Groups (per each module required). - Edit both web.config files in the /Online/Web and /Online/WebApi folders; change the key AllowWebApiAccessForAdmin to true. Restart the webAPI app-pool for the settings to take.
- Once the user access is configured, click https://server/Sage300WebApi/ to ensure access to the web API.
Authenticate to Sage 300 using Basic authentication.
Connect Using Basic Authentication
You must provide values for the following properties to successfully authenticate to Sage 300. Note that the provider reuses the session opened by Sage 300 using cookies. This means that your credentials are used only on the first request to open the session. After that, cookies returned from Sage 300 are used for authentication.
- Url: Set this to the url of the server hosting Sage 300. Construct a URL for the Sage 300 Web API as follows: {protocol}://{host-application-path}/v{version}/{tenant}/ For example, http://localhost/Sage300WebApi/v1.0/-/.
- User: Set this to the username of your account.
- Password: Set this to the password of your account.
- Set up the security groups for the Sage 300 user. Give the Sage 300 user access to the
- Click Save & Test
- Navigate to the Permissions tab and update user-based permissions
Add a Personal Access Token
A Personal Access Token (PAT) is used to authenticate the connection to Connect AI from OpenCode. It is best practice to create a separate PAT for each integration to maintain granular access control.
- Click the gear icon () at the top right of the Connect AI app to open Settings
- On the Settings page, go to the Access Tokens section and click Create PAT
- Give the PAT a descriptive name and click Create
- Copy the token when displayed and store it securely. It will not be shown again
With the Sage 300 connection configured and a PAT generated, OpenCode can now connect to Sage 300 data through Connect AI.
Step 2: Install OpenCode and configure the Connect AI MCP Server
Next, install OpenCode, add the Connect AI Remote MCP Server in your project configuration file, and configure an LLM provider so the agent can discover and call live data tools through Connect AI.
- Download and install OpenCode by following the official installation guide
- Create a new folder for your project, or open an existing project directory
-
In the root of that directory, create a file named opencode.json and paste the following configuration:
{ "$schema": "https://opencode.ai/config.json", "mcp": { "cdata-connect-ai": { "type": "remote", "url": "https://mcp.cloud.cdata.com/mcp", "enabled": true, "oauth": false, "headers": { "Authorization": "Basic your_base64_encoded_email_PAT" }, "timeout": 30000 } } }Note: OpenCode will use Basic authentication with Connect AI. Combine your Connect AI user email and the PAT you created earlier in the format email:PAT, base64 encode the combined string, and prefix it with Basic. For example, given [email protected]:ABC123...XYZ789, the Authorization header value becomes something like: Basic dXNlckBkb21haW4uY29tOkFCQzEyMy4uLlhZWjc4OQ==
-
Open the project directory in OpenCode. Select the project from the project dropdown, or click Add project to point OpenCode at the folder that contains opencode.json
-
Configure an LLM provider so the agent can interpret prompts and call MCP tools. Open the model selector (Ctrl + '), choose a provider such as OpenAI, Anthropic, or Google, and enter your API key
With the MCP server added in opencode.json and an LLM provider configured, OpenCode is ready to query live Sage 300 data through Connect AI.
Step 3: Query live Sage 300 data from OpenCode
With the integration complete, use OpenCode to interact with live Sage 300 data through natural language prompts handled by the configured LLM.
-
In a new session, type a prompt in the chat input, for example:
- Use the cdata-connect-ai tools to list all available catalogs
- Show the available schemas and tables for Sage 300
- Query the top 5 records from a table in Sage 300
-
OpenCode calls the Connect AI MCP Server and returns live results from Sage 300 data
At this point, OpenCode communicates with the Connect AI MCP Server and retrieves live Sage 300 data through remote MCP tools directly from your AI coding agent.
Get CData Connect AI
To access hundreds of SaaS, big data, and NoSQL sources directly from your cloud applications, try CData Connect AI today. Download a free 14-day trial of CData Connect AI, and our Support Team is available to help with any questions you have.