How to integrate Dnsfilter MCP with OpenAI Agents SDK

This guide walks you through connecting Dnsfilter to the OpenAI Agents SDK using the Composio tool router. By the end, you'll have a working Dnsfilter agent that can list all ip addresses in your network, retrieve billing information for your organization, get details for a specific filtering category through natural language commands. This guide will help you understand how to give your OpenAI Agents SDK agent real control over a Dnsfilter account through Composio's Dnsfilter MCP server. Before we dive in, let's take a quick look at the key ideas and tools involved.

Dnsfilter logoDnsfilter
Api Key

Dnsfilter is a cloud-based DNS security and content filtering solution. It helps organizations block online threats and manage safe internet access with ease.

170 Tools

Introduction

This guide walks you through connecting Dnsfilter to the OpenAI Agents SDK using the Composio tool router. By the end, you'll have a working Dnsfilter agent that can list all ip addresses in your network, retrieve billing information for your organization, get details for a specific filtering category through natural language commands.

This guide will help you understand how to give your OpenAI Agents SDK agent real control over a Dnsfilter account through Composio's Dnsfilter MCP server.

Before we dive in, let's take a quick look at the key ideas and tools involved.

Also integrate Dnsfilter with

TL;DR

Here's what you'll learn:
  • Get and set up your OpenAI and Composio API keys
  • Install the necessary dependencies
  • Initialize Composio and create a Tool Router session for Dnsfilter
  • Configure an AI agent that can use Dnsfilter as a tool
  • Run a live chat session where you can ask the agent to perform Dnsfilter operations

What is OpenAI Agents SDK?

The OpenAI Agents SDK is a lightweight framework for building AI agents that can use tools and maintain conversation state. It provides a simple interface for creating agents with hosted MCP tool support.

Key features include:

  • Hosted MCP Tools: Connect to external services through hosted MCP endpoints
  • SQLite Sessions: Persist conversation history across interactions
  • Simple API: Clean interface with Agent, Runner, and tool configuration
  • Streaming Support: Real-time response streaming for interactive applications

What is the Dnsfilter MCP server, and what's possible with it?

The Dnsfilter MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Dnsfilter account. It provides structured and secure access to your DNSFilter environment, so your agent can perform actions like listing IPs, retrieving categories, managing network devices, and accessing billing information on your behalf.

  • Comprehensive IP address management: Direct your agent to list, fetch, or create IP address entries for your networks, streamlining network administration.
  • Efficient category and content filtering: Have your agent retrieve details for specific filtering categories or list all available content categories to fine-tune organizational policies.
  • Network device inventory automation: Ask your agent to list all MAC addresses and applications in your environment, making it easy to keep track of connected devices and services.
  • Application category insight: Instantly access information about application categories or retrieve all application categories to stay updated on your filtering options.
  • Billing information access: Let your agent pull detailed billing information for your organization, supporting audits and automated reporting workflows.

What is the Composio tool router, and how does it fit here?

What is Composio SDK?

Composio's Composio SDK helps agents find the right tools for a task at runtime. You can plug in multiple toolkits (like Gmail, HubSpot, and GitHub), and the agent will identify the relevant app and action to complete multi-step workflows. This can reduce token usage and improve the reliability of tool calls. Read more here: Getting started with Composio SDK

The tool router generates a secure MCP URL that your agents can access to perform actions.

How the Composio SDK works

The Composio SDK follows a three-phase workflow:

  1. Discovery: Searches for tools matching your task and returns relevant toolkits with their details.
  2. Authentication: Checks for active connections. If missing, creates an auth config and returns a connection URL via Auth Link.
  3. Execution: Executes the action using the authenticated connection.

Step-by-step Guide

Step by step09 STEPS
1

Prerequisites

Before starting, make sure you have:
  • Composio API Key and OpenAI API Key
  • Primary know-how of OpenAI Agents SDK
  • A live Dnsfilter project
  • Some knowledge of Python or Typescript
2

Getting API Keys for OpenAI and Composio

OpenAI API Key
  • Go to the OpenAI dashboard and create an API key. You'll need credits to use the models, or you can connect to another model provider.
  • Keep the API key safe.
Composio API Key
3

Install dependencies

npm install @composio/openai-agents @openai/agents dotenv

Install the Composio SDK and the OpenAI Agents SDK.

4

Set up environment variables

bash
OPENAI_API_KEY=sk-...your-api-key
COMPOSIO_API_KEY=your-api-key
USER_ID=composio_user@gmail.com

Create a .env file and add your OpenAI and Composio API keys.

5

Import dependencies

import 'dotenv/config';
import { Composio } from '@composio/core';
import { OpenAIAgentsProvider } from '@composio/openai-agents';
import { Agent, hostedMcpTool, run, OpenAIConversationsSession } from '@openai/agents';
import * as readline from 'readline';
What's happening:
  • You're importing all necessary libraries.
  • The Composio and OpenAIAgentsProvider classes are imported to connect your OpenAI agent to Composio tools like Dnsfilter.
6

Set up the Composio instance

dotenv.config();

const composioApiKey = process.env.COMPOSIO_API_KEY;
const userId = process.env.USER_ID;

if (!composioApiKey) {
  throw new Error('COMPOSIO_API_KEY is not set. Create a .env file with COMPOSIO_API_KEY=your_key');
}
if (!userId) {
  throw new Error('USER_ID is not set');
}

// Initialize Composio
const composio = new Composio({
  apiKey: composioApiKey,
  provider: new OpenAIAgentsProvider(),
});
What's happening:
  • dotenv.config() loads your .env file so COMPOSIO_API_KEY and USER_ID are available as environment variables.
  • Creating a Composio instance using the API Key and OpenAIAgentsProvider class.
7

Create a Tool Router session

// Create Tool Router session for Dnsfilter
const session = await composio.create(userId as string, {
  toolkits: ['dnsfilter'],
});
const mcpUrl = session.mcp.url;

What is happening:

  • You give the Tool Router the user id and the toolkits you want available. Here, it is only dnsfilter.
  • The router checks the user's Dnsfilter connection and prepares the MCP endpoint.
  • The returned session.mcp.url is the MCP URL that your agent will use to access Dnsfilter.
  • This approach keeps things lightweight and lets the agent request Dnsfilter tools only when needed during the conversation.
8

Configure the agent

// Configure agent with MCP tool
const agent = new Agent({
  name: 'Assistant',
  model: 'gpt-5',
  instructions:
    'You are a helpful assistant that can access Dnsfilter. Help users perform Dnsfilter operations through natural language.',
  tools: [
    hostedMcpTool({
      serverLabel: 'tool_router',
      serverUrl: mcpUrl,
      headers: { 'x-api-key': composioApiKey },
      requireApproval: 'never',
    }),
  ],
});
What's happening:
  • We're creating an Agent instance with a name, model (gpt-5), and clear instructions about its purpose.
  • The agent's instructions tell it that it can access Dnsfilter and help with queries, inserts, updates, authentication, and fetching database information.
  • The tools array includes a hostedMcpTool that connects to the MCP server URL we created earlier.
  • The headers object includes the Composio API key for secure authentication with the MCP server.
  • requireApproval: 'never' means the agent can execute Dnsfilter operations without asking for permission each time, making interactions smoother.
9

Start chat loop and handle conversation

// Keep conversation state across turns
const conversationSession = new OpenAIConversationsSession();

// Simple CLI
const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
  prompt: 'You: ',
});

console.log('\nComposio Tool Router session created.');
console.log('\nChat started. Type your requests below.');
console.log("Commands: 'exit', 'quit', or 'q' to end\n");

try {
  const first = await run(agent, 'What can you help me with?', { session: conversationSession });
  console.log(`Assistant: ${first.finalOutput}\n`);
} catch (e) {
  console.error('Error:', e instanceof Error ? e.message : e, '\n');
}

rl.prompt();

rl.on('line', async (userInput) => {
  const text = userInput.trim();

  if (['exit', 'quit', 'q'].includes(text.toLowerCase())) {
    console.log('Goodbye!');
    rl.close();
    process.exit(0);
  }

  if (!text) {
    rl.prompt();
    return;
  }

  try {
    const result = await run(agent, text, { session: conversationSession });
    console.log(`\nAssistant: ${result.finalOutput}\n`);
  } catch (e) {
    console.error('Error:', e instanceof Error ? e.message : e, '\n');
  }

  rl.prompt();
});

rl.on('close', () => {
  console.log('\n👋 Session ended.');
  process.exit(0);
});
What's happening:
  • The program prints a session URL that you visit to authorize Dnsfilter.
  • After authorization, the chat begins.
  • Each message you type is processed by the agent using run().
  • The responses are printed to the console.
  • Typing exit, quit, or q cleanly ends the chat.

Complete Code

Here's the complete code to get you started with Dnsfilter and OpenAI Agents SDK:

import 'dotenv/config';
import { Composio } from '@composio/core';
import { OpenAIAgentsProvider } from '@composio/openai-agents';
import { Agent, hostedMcpTool, run, OpenAIConversationsSession } from '@openai/agents';
import * as readline from 'readline';

const composioApiKey = process.env.COMPOSIO_API_KEY;
const userId = process.env.USER_ID;

if (!composioApiKey) {
  throw new Error('COMPOSIO_API_KEY is not set. Create a .env file with COMPOSIO_API_KEY=your_key');
}
if (!userId) {
  throw new Error('USER_ID is not set');
}

// Initialize Composio
const composio = new Composio({
  apiKey: composioApiKey,
  provider: new OpenAIAgentsProvider(),
});

async function main() {
  // Create Tool Router session
  const session = await composio.create(userId as string, {
    toolkits: ['dnsfilter'],
  });
  const mcpUrl = session.mcp.url;

  // Configure agent with MCP tool
  const agent = new Agent({
    name: 'Assistant',
    model: 'gpt-5',
    instructions:
      'You are a helpful assistant that can access Dnsfilter. Help users perform Dnsfilter operations through natural language.',
    tools: [
      hostedMcpTool({
        serverLabel: 'tool_router',
        serverUrl: mcpUrl,
        headers: { 'x-api-key': composioApiKey },
        requireApproval: 'never',
      }),
    ],
  });

  // Keep conversation state across turns
  const conversationSession = new OpenAIConversationsSession();

  // Simple CLI
  const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
    prompt: 'You: ',
  });

  console.log('\nComposio Tool Router session created.');
  console.log('\nChat started. Type your requests below.');
  console.log("Commands: 'exit', 'quit', or 'q' to end\n");

  try {
    const first = await run(agent, 'What can you help me with?', { session: conversationSession });
    console.log(`Assistant: ${first.finalOutput}\n`);
  } catch (e) {
    console.error('Error:', e instanceof Error ? e.message : e, '\n');
  }

  rl.prompt();

  rl.on('line', async (userInput) => {
    const text = userInput.trim();

    if (['exit', 'quit', 'q'].includes(text.toLowerCase())) {
      console.log('Goodbye!');
      rl.close();
      process.exit(0);
    }

    if (!text) {
      rl.prompt();
      return;
    }

    try {
      const result = await run(agent, text, { session: conversationSession });
      console.log(`\nAssistant: ${result.finalOutput}\n`);
    } catch (e) {
      console.error('Error:', e instanceof Error ? e.message : e, '\n');
    }

    rl.prompt();
  });

  rl.on('close', () => {
    console.log('\nSession ended.');
    process.exit(0);
  });
}

main().catch((err) => {
  console.error('Fatal error:', err);
  process.exit(1);
});

Conclusion

This was a starter code for integrating Dnsfilter MCP with OpenAI Agents SDK to build a functional AI agent that can interact with Dnsfilter.

Key features:

  • Hosted MCP tool integration through Composio's Tool Router
  • SQLite session persistence for conversation history
  • Simple async chat loop for interactive testing
You can extend this by adding more toolkits, implementing custom business logic, or building a web interface around the agent.
TOOLS

Supported Tools

Every Dnsfilter action and event your agent gets out of the box.

Add Allowed Application

Adds a single application to the allow list of a policy in DNSFilter.

Add Allowlist Domains to Policies

Tool to bulk add one or more domains to one or more policies' allow lists.

Add Blacklist Category To Policy

Tool to add a single category to a policy's blocklist.

Add Blacklist Domain To Policy

Tool to add a single domain to a policy's blocklist.

Add Blocked Application

Adds a single application to the block list of a policy in DNSFilter.

Add Blocklist Domains To Policies

Tool to add one or more domains to the blocklist of multiple policies at once.

Add Whitelist Domain

Tool to add a single domain to a policy's allowlist.

Cancel Organization

Sets an organization as 'Canceled' in DNSFilter by its unique ID.

Check User Agent Bulk Updates Has Mixed

Check if user agent attributes are mixed in a bulk selection.

Create API Keys

Creates a new API key in DNSFilter for authentication and API access.

Create CyberSight CSV Export

Creates a CyberSight CSV export record to track export of CyberSight report information.

Create IP Address

Creates a new IP address entry in DNSFilter for network filtering and policy enforcement.

Create MAC Address

Creates a new MAC address entry in DNSFilter with the specified data.

Create Networks

Creates a new network with the specified configuration in DNSFilter.

Bulk Create Networks

Bulk create multiple networks in DNSFilter with a single API call.

Create Organization User

Adds a new or existing user with the specified email to an organization in DNSFilter.

Create Policies

Creates a new DNS filtering policy with the specified configuration in DNSFilter.

Create Scheduled Policy

Creates a new scheduled (time-based) policy in DNSFilter.

Create Scheduled Report Previews

Creates a scheduled report preview for an organization, triggering background generation of the report.

Create Scheduled Report

Creates a scheduled report in DNSFilter to automate regular delivery of network activity and security summaries.

Create User Agent Bulk Deletes

Create a user agent bulk delete operation in DNSFilter.

Create User Agent Cleanup

Creates a user agent cleanup to track bulk deletion of inactive user agents in DNSFilter.

Delete API Key

Tool to remove an API key by its ID.

Delete IP Address

Removes an IP address from DNSFilter by its unique ID.

Delete MAC Address

Deletes a MAC address entry from DNSFilter by its ID.

Delete Networks (Bulk)

Bulk destroy multiple networks in DNSFilter.

Delete Policies

Deletes a DNS filtering policy from DNSFilter by its unique ID.

Delete Scheduled Policies

Removes a scheduled policy from the DNSFilter database by its unique ID.

Delete Scheduled Report

Tool to delete a scheduled report by its ID.

Get API Key

Tool to retrieve detailed information about a specific API key by its ID.

Get Application Category

Retrieves detailed information about a specific DNSFilter application category by its ID.

Get Billing Address

Retrieves the billing address for a specific DNSFilter organization.

Get Billing Information

Retrieves billing records for a specific DNSFilter organization.

Get Category

Tool to get basic information of a specific category.

Get IP Address

Retrieves detailed information for a specific IP address record by its ID.

Get MAC Address

Retrieves detailed information for a specific MAC address record by its ID.

Get Organization Usage Metrics

Retrieves usage metrics for a DNSFilter organization over a specified date range.

Get Organization Usage Detailed Metrics

Retrieves detailed usage metrics for a specific DNSFilter organization.

Get My IP Address

Tool to retrieve the requester's IP address as reported by DNSFilter API.

Get Networks Bulk Create Status

Tool to check the status of a bulk network creation job.

Get Networks Bulk Destroy Status

Check the status of a bulk network destroy operation.

Get Networks Bulk Update Status

Check the status of a bulk network update job.

Get Networks CSV Export

Retrieves a networks CSV export by its ID.

Get Notes

Tool to retrieve notes associated with a specific resource (policy, MSP, or organization) and domain.

Get Organization

Tool to get basic information of a specific organization by ID.

Get Organization User

Tool to retrieve user details and permissions for a specific organization.

Get Policy

Tool to get basic information of the specified policy.

Get Policy Permissive Mode

Tool to retrieve the permissive mode setting for a specific policy.

Get Policy IP

Retrieves basic information for a specific Policy IP by its ID.

Get Scheduled Report Preview

Tool to retrieve a specific scheduled report preview by its ID.

Get User

Tool to get basic information of a specified user by ID.

Get User Agent Cleanup

Tool to get the specific user agent cleanup by ID.

Get User Agent CSV Export

Tool to retrieve a specific user agent CSV export by its ID.

Get User Agents Uninstall PIN

Tool to get the uninstall PIN for an organization's user agents.

List All Agent Local Users

Get all agent local users associated with a user organization.

List All Block Pages

Retrieves all block pages associated with the current user.

List All IP Addresses

Retrieves one page of IP addresses across all networks in your organization.

List API Keys

Retrieves the list of API keys associated with the authenticated user.

List Application Categories

Retrieves all available application categories from DNSFilter.

List All Applications

Tool to list all applications basic information including deleted ones.

List Billing

Retrieve payment method information from Stripe for a DNSFilter organization.

List All Categories (Including Internal)

Tool to list all categories including internal categories from DNSFilter.

List Current User

Tool to fetch information about the currently authenticated user.

List CyberSight Activity Types

Tool to retrieve all available CyberSight activity types.

List Domains Bulk Lookup

Retrieves domain information and category classifications for multiple FQDNs in a single request.

List Domains User Lookup

Tool to look up all domains associated with a particular FQDN.

List Enterprise Connections

List all enterprise connections for a DNSFilter organization.

List Invoices

Retrieves billing invoices for a DNSFilter organization with pagination and sorting support.

List All IP Addresses (All Endpoint)

Tool to retrieve all user-associated IP addresses with basic information.

List MAC Addresses

Tool to list MAC addresses associated with an organization.

List All Networks

Tool to retrieve ALL networks associated with the user with basic information.

List Networks Geo

Tool to retrieve networks with geographical information only.

List All MSP Networks

Tool to retrieve ALL networks associated with the MSP user with basic information.

List Network Subnets

Tool to retrieve subnets associated with a specific network.

List All Organizations

Tool to get all organizations with optional filtering by type, MSP relationships, or name.

List Organizations Settings

Tool to get basic information and settings of the specified organization.

List Organization Users

Tool to get the users for a specified organization.

List Policies

Tool to retrieve basic information about user-associated policies.

List All Policies

Tool to retrieve ALL user-associated policies with basic information.

List Policies for Application

Tool to retrieve policies information for a specific application.

List Policy IPs

List policy IPs in your DNSFilter organization.

List QP Methods

Tool to list all QP (Query Protection) methods available in DNSFilter.

List All Scheduled Policies

Tool to retrieve ALL scheduled policies associated with the current user.

List Traffic Reports QPS

Get queries per second (QPS) metrics for DNS traffic over a specified time period.

List Traffic Reports QPS Active Agents

Get queries per second (QPS) statistics for roaming clients over a time period.

List Traffic Reports QPS Active Collections

Tool to retrieve queries per second (QPS) metrics for active collections over a specified time period.

List Traffic Reports QPS Active Organizations

Retrieves the total number of queries per second (QPS) over a time period for active organizations.

List Traffic Reports QPS Active Users

Get the total number of queries per second (QPS) in a time period (maximum 20 minutes) for active users.

List Traffic Reports Query Logs

Get query raw logs from DNSFilter traffic reports in a specified period of time.

List Traffic Reports Top Agents

Get the top user agents by DNS traffic volume in a specified time period.

List Traffic Reports Top Application Categories

Get the top application categories domains in a period of time.

List Traffic Reports Top Categories

Get the top domain categories accessed during a specified time period.

List Traffic Reports Top Collections

Tool to retrieve the top collections by traffic volume over a specified time period.

List Traffic Reports Top Domains

Get the top requested domains over a specified time period.

List Traffic Reports Top Networks

Get the top networks ranked by DNS traffic volume over a specified time period.

List Traffic Reports Top Organizations

Gets the top organizations by DNS traffic volume over a specified time period.

List Top Organizations by Requests

Get the top organizations ranked by total number of DNS requests over a specified time period.

List Traffic Reports Top Users

Get the top users by DNS query volume over a specified time period.

List Traffic Reports Total Applications Stats

Get statistics of number of requests by application in a time period.

List Traffic Reports Total Applications Agents Stats

Get statistics of number of requests for roaming clients by application in a period of time.

List Traffic Reports Total Applications Collections Stats

Get statistics of number of requests for collections by application over a specified time period.

List Traffic Reports Total Applications Networks Stats

Get statistics showing the number of requests for sites by application across networks over a specified time period.

List Traffic Reports Total Applications Organizations

Tool to get statistics of number of requests for organizations by application in a period of time.

List Traffic Reports Total Applications Users Stats

Get statistics of the number of requests for users by application within a specified time period.

List Traffic Reports Total Categories

Get the total number of requests by category for sites in a period of time.

List Traffic Reports Total Categories for Agents

Get the total number of requests by category for roaming clients (user agents) during a specified time period.

List Traffic Reports Total Categories Collections

Get the total number of DNS requests by category for collections over a specified time period.

List Total Categories by Organizations

Get the total number of DNS requests by category for organizations over a specified time period.

List Traffic Reports by Category for Users

Gets the total number of DNS requests by category for users in a specified time period.

List Traffic Reports Total Category Stats

Tool to get the total number of stats for a category in a period of time.

List Traffic Reports Total Client Stats

Gets the organization network, users and client stats from traffic reports.

List Traffic Reports Total Collections

Get the total number of DNS requests by collection for sites over a specified time period.

List Traffic Reports Total Collections Agents

Get the total number of requests by collection for roaming clients over a specified time period.

List Traffic Reports Total Collections Organizations

Get the total number of DNS requests by collection for organizations over a specified time period.

List Traffic Reports Total Collections Users

Get the total number of DNS requests by collection for users over a specified time period.

List Traffic Reports Total Deployments

Gets the organization deployments information including collections, relays, sync tools, user agents, and users.

List Traffic Reports Total Domain Requests

Get the total number of requests for a domain over a specified time period.

List Traffic Reports Total Domains

Get the total number of requests by domain for sites in a period of time.

List Traffic Reports Total Domains Collections

Tool to retrieve the total number of DNS requests by domain for collections within a specified time period.

List Total Domains by Organizations

Get the total number of DNS requests by domain for organizations over a specified time period.

List Traffic Reports Total Domain Stats

Tool to get the total number of stats for a domain in a period of time.

List Traffic Reports Total Domains Users

Gets the total number of DNS requests by domain for users in a period of time.

List Total Organizations Requests

Get the total number of DNS requests for organizations in a specified time period.

List Traffic Reports Total Organizations Stats

Retrieves aggregated DNS traffic statistics across organizations for a specified time period.

List Traffic Reports Total Requests

Get the total number of DNS requests over a specified time period.

List Traffic Reports Total Requests for Agents

Get the total number of requests for roaming clients (user agents) during a specified time period.

List Traffic Reports Total Requests Collections

Get the total number of requests for collections over a specified time period.

List Traffic Reports Total Requests Geo

Gets the total number of DNS requests by geographic location for organizations in a specified time period.

List Total Requests Organizations

Get the total number of DNS requests for organizations in a specified time period.

List Traffic Reports Total Requests Users

Gets the total number of requests for users in a period of time.

List Traffic Reports Total Roaming Clients

Gets the roaming clients information for the specified organization.

List Traffic Reports Total Threats

Get the total number of threats detected over a specified time period.

List Traffic Reports Total Threats Agents

Get the total number of threats for roaming clients in a period of time.

List Total Threats by Collections

Tool to retrieve the total number of threats for collections over a specified time period.

List Total Threats by Organizations

Get the total number of threats detected for organizations over a specified time period.

List Traffic Reports Total Threats Users

Get the total number of threats for users in a period of time.

List User Agent Bulk Deletes Counts

Tool to get user agent bulk delete counts by filtering criteria.

List User Agent Bulk Updates Counts

Tool to get user agent bulk delete counts by filters.

List User Agent Releases

Gets a list of latest user agent releases for each unique combination of agent_type, architecture, release_channels, and white label.

List User Agent Releases Relay

Tool to get a list of latest relay releases for each unique combination of architecture, release channels, and white label.

List All User Agents

Tool to retrieve ALL user agents with basic information.

List User Agents Counts

Tool to get counts of user agents for each status.

List User Agents CSV

Tool to export user agents as CSV data for a specific organization.

List User Agent Tags

Retrieves all tags used by user agents on a network or organization.

List All Users

Tool to get all users basic information with optional pagination.

Lookup Network By IP

Tool to get basic network information based on an IP address lookup.

Remove Allowed Application

Removes a single application from the allow list of a policy in DNSFilter.

Remove Allowlist Domains from Policies

Tool to remove one or more domains from one or more policies' allow lists.

Remove Blacklist Category

Tool to remove a single category from a policy's blocklist.

Remove Blacklist Domain From Policy

Tool to remove a single domain from a policy's blocklist.

Remove Blocked Application

Removes a single application from the block list of a policy in DNSFilter.

Remove Blocklist Domains

Tool to remove one or more domains from one or more policy block lists in bulk.

Remove Whitelist Domain from Policy

Tool to remove a single domain from a policy's whitelist/allowlist.

Resend User Invite

Tool to resend an invitation email to a user in a DNSFilter organization.

Suggest Domain Threat

Submit a domain threat report to DNSFilter for review and potential threat categorization.

Update Billing Address

Updates the billing address for a DNSFilter organization.

Update Current User

Updates profile attributes for the currently authenticated DNSFilter user.

Update Enterprise Connection

Updates an existing enterprise connection for SSO authentication in DNSFilter.

Update IP Address

Updates an existing IP address record in DNSFilter with new data.

Update MAC Address

Updates an existing MAC address entry in DNSFilter with new configuration.

Bulk Update Networks

Tool to bulk update multiple networks with specified configuration changes.

Update Organizations

Updates an existing organization with the specified data in DNSFilter.

Update Organization User

Updates a user or permissions within an organization in DNSFilter.

Update Policies

Updates an existing DNS filtering policy with the specified configuration in DNSFilter.

Update Policies Application

Updates a policy with the specified application data, configuring which policies allow or block access to an application.

Update Policy Permissive Mode

Tool to update the permissive mode setting for a specific policy.

Update Scheduled Policies

Updates an existing scheduled policy in DNSFilter with the specified data.

Update Scheduled Reports

Updates an existing scheduled report configuration in DNSFilter.

Update User Agent Cleanups

Updates a user agent cleanup operation in DNSFilter.

Validate Auth0 JWT

Tool to validate a JWT with Auth0.

FAQ

Frequently asked questions

With a standalone Dnsfilter MCP server, the agents and LLMs can only access a fixed set of Dnsfilter tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Dnsfilter and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. OpenAI Agents SDK fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Dnsfilter tools.

Yes, absolutely. You can configure which Dnsfilter scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Dnsfilter data and credentials are handled as safely as possible.

Start with Dnsfilter.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Dnsfilter tool your agent needs.Free to start.

Start building