## Sources Sources are the connections between your external APIs and services and your Agen for SaaS MCP server. Each source provides the API definitions from which tools are automatically generated, allowing AI agents to discover and invoke your product's capabilities. ![sources](/assets/tools-and-sources.48b87d2bd8d8df6c51621daeac1ad4f458f9e785745101164af94f882618d8a3.212f8da4.png) ### Sources overview The Sources screen displays all connected sources with the following information: | Column | Description | | --- | --- | | **Source name** | The display name for the source (e.g., "Frontegg", "default"). | | **Type** | The source type: `REST`, `GRAPHQL`, `FRONTEGG`, or `MCP`. | | **Connected tools** | The tools generated from this source, shown as badges. | | **Enabled** | A toggle to enable or disable the source. | Each source also has a delete button for permanent removal. ### Source types Agen for SaaS supports three source types, each designed for a different API paradigm. #### REST source A REST source connects to a REST API using an OpenAPI (Swagger) specification. When you add a REST source, Agen for SaaS parses the specification and extracts all endpoints as individual tools. To add a REST source: 1. Click **Add source** and select **REST**. 2. Enter a **Source name** (required). 3. Enter the **API base URL** (required) — this is where tool requests are forwarded (e.g., `https://api.yourdomain.com`). 4. Provide your OpenAPI specification using one of two methods: - **Upload file** — Upload a JSON or YAML file containing your OpenAPI spec. - **Paste code** — Paste the OpenAPI JSON directly into the code editor. 5. Click **Generate tools** to extract endpoints and parameters from the specification. 6. Click **Save** to finalize the source. The code editor displays the OpenAPI specification with syntax highlighting. A minimal OpenAPI 3.0 template is provided by default: ```json { "openapi": "3.0.0", "info": { "title": "API", "version": "1.0.0" }, "paths": { "/": { "get": { "summary": "Get API", "responses": { "200": { "description": "OK" } } } } } } ``` #### GraphQL source A GraphQL source connects to a GraphQL API using a schema definition. Agen for SaaS parses the schema and extracts queries, mutations, and types as tools. To add a GraphQL source: 1. Click **Add source** and select **GraphQL**. 2. Enter a **Source name** (required). 3. Enter the **API base URL** (required). 4. Provide your GraphQL schema using one of two methods: - **Upload file** — Upload a `.graphql` or `.gql` schema file. - **Paste code** — Paste the GraphQL SDL directly into the code editor. 5. Click **Generate tools** to extract queries and mutations from the schema. 6. Click **Save** to finalize the source. The code editor includes a commented-out schema template: ```graphql # type Query { # hello: String # } ``` #### MCP server source An MCP server source connects to a remote MCP-compatible server. Tools are discovered dynamically through the MCP protocol rather than parsed from a static specification. Adding an MCP source follows a three-step wizard: **Step 1: Configuration** - Enter a **Source name** (required). - Enter the **MCP URL** (required) — the remote MCP server endpoint (e.g., `https://example.com`). - Set the **API timeout** — the maximum time (in milliseconds) to wait for a response from the remote server. Default: `5000` ms. Adjustable with +/- controls. **Step 2: Link** - Generates the connection link between your Agen for SaaS MCP gateway and the remote MCP server. **Step 3: Tools** - Displays the tools discovered from the remote MCP server. Click **Create source** to finalize, or **Discard** to cancel. ### Frontegg source When your Agen for SaaS instance is configured, a **Frontegg** source is automatically available. This built-in source exposes Frontegg's own API capabilities (such as approval flow controllers, geo-fence controllers, and IP restriction controllers) as tools. The Frontegg source type appears as `FRONTEGG` in the Type column. ### Managing sources #### Enable or disable a source Use the toggle in the **Enabled** column to activate or deactivate a source. Disabling a source prevents all its connected tools from being discoverable by AI agents. #### Delete a source Click the trash icon next to a source to permanently remove it. This also removes all tools generated from that source. ### Related topics - [Tools → About tools](/agen-for-saas/tools/about-tools) - [Tools → Managing tools](/agen-for-saas/tools/managing-tools) - [Configuration](/agen-for-saas/configuration/overview)