How to integrate Dnsfilter MCP with LangChain

This guide walks you through connecting Dnsfilter to LangChain 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 LangChain 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 LangChain 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 LangChain 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
  • Connect your Dnsfilter project to Composio
  • Create a Tool Router MCP session for Dnsfilter
  • Initialize an MCP client and retrieve Dnsfilter tools
  • Build a LangChain agent that can interact with Dnsfilter
  • Set up an interactive chat interface for testing

What is LangChain?

LangChain is a framework for developing applications powered by language models. It provides tools and abstractions for building agents that can reason, use tools, and maintain conversation context.

Key features include:

  • Agent Framework: Build agents that can use tools and make decisions
  • MCP Integration: Connect to external services through Model Context Protocol adapters
  • Memory Management: Maintain conversation history across interactions
  • Multi-Provider Support: Works with OpenAI, Anthropic, and other LLM providers

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 step10 STEPS
1

Prerequisites

Before starting this tutorial, make sure you have:
  • Python 3.10 or higher installed on your system
  • A Composio account with an API key
  • An OpenAI API key
  • Basic familiarity with Python and async programming
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
  • Log in to the Composio dashboard.
  • Navigate to your API settings and generate a new API key.
  • Store this key securely as you'll need it for authentication.
3

Install dependencies

npm install @composio/langchain @langchain/core @langchain/openai @langchain/mcp-adapters dotenv

Install the required packages for LangChain with MCP support.

What's happening:

  • @composio/langchain provides Composio integration for LangChain
  • @langchain/mcp-adapters enables MCP client connections
  • @langchain/core is the core agent framework
  • dotenv/config loads environment variables
4

Set up environment variables

bash
COMPOSIO_API_KEY=your_composio_api_key_here
COMPOSIO_USER_ID=your_composio_user_id_here
OPENAI_API_KEY=your_openai_api_key_here

Create a .env file in your project root.

What's happening:

  • COMPOSIO_API_KEY authenticates your requests to Composio's API
  • COMPOSIO_USER_ID identifies the user for session management
  • OPENAI_API_KEY enables access to OpenAI's language models
5

Import dependencies

import { Composio } from '@composio/core';
import { LangchainProvider } from '@composio/langchain';
import { MultiServerMCPClient } from "@langchain/mcp-adapters";
import { createAgent } from "langchain";
import * as readline from 'readline';
import 'dotenv/config';

dotenv.config();
What's happening:
  • We're importing LangChain's MCP adapter and Composio SDK
  • The dotenv/config import loads environment variables from your .env file
  • This setup prepares the foundation for connecting LangChain with Dnsfilter functionality through MCP
6

Initialize Composio client

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

if (!composioApiKey) throw new Error('COMPOSIO_API_KEY is not set');
if (!userId) throw new Error('COMPOSIO_USER_ID is not set');

async function main() {
    const composio = new Composio({
        apiKey: composioApiKey as string,
        provider: new LangchainProvider()
    });
What's happening:
  • We're loading the COMPOSIO_API_KEY from environment variables and validating it exists
  • Creating a Composio instance that will manage our connection to Dnsfilter tools
  • Validating that COMPOSIO_USER_ID is also set before proceeding
7

Create a Tool Router session

const session = await composio.create(
    userId as string,
    {
        toolkits: ['dnsfilter']
    }
);

const url = session.mcp.url;
What's happening:
  • We're creating a Tool Router session that gives your agent access to Dnsfilter tools
  • The create method takes the user ID and specifies which toolkits should be available
  • The returned session.mcp.url is the MCP server URL that your agent will use
  • This approach allows the agent to dynamically load and use Dnsfilter tools as needed
8

Configure the agent with the MCP URL

const client = new MultiServerMCPClient({
    "dnsfilter-agent": {
        transport: "http",
        url: url,
        headers: {
            "x-api-key": process.env.COMPOSIO_API_KEY
        }
    }
});

const tools = await client.getTools();

const agent = createAgent({ model: "gpt-5", tools });
What's happening:
  • We're creating a MultiServerMCPClient that connects to our Dnsfilter MCP server via HTTP
  • The client is configured with a name and the URL from our Tool Router session
  • getTools() retrieves all available Dnsfilter tools that the agent can use
  • We're creating a LangChain agent using the GPT-5 model
9

Set up interactive chat interface

let conversationHistory: any[] = [];

console.log("Chat started! Type 'exit' or 'quit' to end the conversation.\n");
console.log("Ask any Dnsfilter related question or task to the agent.\n");

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

rl.prompt();

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

    if (['exit', 'quit', 'bye'].includes(trimmedInput.toLowerCase())) {
        console.log("\nGoodbye!");
        rl.close();
        process.exit(0);
    }

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

    conversationHistory.push({ role: "user", content: trimmedInput });
    console.log("\nAgent is thinking...\n");

    const response = await agent.invoke({ messages: conversationHistory });
    conversationHistory = response.messages;

    const finalResponse = response.messages[response.messages.length - 1]?.content;
    console.log(`Agent: ${finalResponse}\n`);
        
        rl.prompt();
    });

    rl.on('close', () => {
        console.log('\n👋 Session ended.');
        process.exit(0);
    });
What's happening:
  • We initialize an empty conversationHistory list to maintain context across interactions
  • A readline interface is used to continuously accept user input from the command line
  • When a user types a message, it's added to the conversation history and sent to the agent
  • The agent processes the request using the invoke() method with the full conversation history
  • Users can type 'exit', 'quit', or 'bye' to end the chat session gracefully
10

Run the application

main().catch((err) => {
    console.error('Fatal error:', err);
    process.exit(1);
});
What's happening:
  • We call the main() function to start the application

Complete Code

Here's the complete code to get you started with Dnsfilter and LangChain:

import { Composio } from '@composio/core';
import { LangchainProvider } from '@composio/langchain';
import { MultiServerMCPClient } from "@langchain/mcp-adapters";  
import { createAgent } from "langchain";
import * as readline from 'readline';
import 'dotenv/config';

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

if (!composioApiKey) throw new Error('COMPOSIO_API_KEY is not set');
if (!userId) throw new Error('COMPOSIO_USER_ID is not set');

async function main() {
    const composio = new Composio({
        apiKey: composioApiKey as string,
        provider: new LangchainProvider()
    });

    const session = await composio.create(
        userId as string,
        {
            toolkits: ['dnsfilter']
        }
    );

    const url = session.mcp.url;
    
    const client = new MultiServerMCPClient({
        "dnsfilter-agent": {
            transport: "http",
            url: url,
            headers: {
                "x-api-key": process.env.COMPOSIO_API_KEY
            }
        }
    });
    
    const tools = await client.getTools();
  
    const agent = createAgent({ model: "gpt-5", tools });
    
    let conversationHistory: any[] = [];
    
    console.log("Chat started! Type 'exit' or 'quit' to end the conversation.\n");
    console.log("Ask any Dnsfilter related question or task to the agent.\n");
    
    const rl = readline.createInterface({
        input: process.stdin,
        output: process.stdout,
        prompt: 'You: '
    });

    rl.prompt();

    rl.on('line', async (userInput: string) => {
        const trimmedInput = userInput.trim();
        
        if (['exit', 'quit', 'bye'].includes(trimmedInput.toLowerCase())) {
            console.log("\nGoodbye!");
            rl.close();
            process.exit(0);
        }
        
        if (!trimmedInput) {
            rl.prompt();
            return;
        }
        
        conversationHistory.push({ role: "user", content: trimmedInput });
        console.log("\nAgent is thinking...\n");
        
        const response = await agent.invoke({ messages: conversationHistory });
        conversationHistory = response.messages;
        
        const finalResponse = response.messages[response.messages.length - 1]?.content;
        console.log(`Agent: ${finalResponse}\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

You've successfully built a LangChain agent that can interact with Dnsfilter through Composio's Tool Router.

Key features of this implementation:

  • Dynamic tool loading through Composio's Tool Router
  • Conversation history maintenance for context-aware responses
  • Async Python provides clean, efficient execution of agent workflows
You can extend this further by adding error handling, implementing specific business logic, or integrating additional Composio toolkits to create multi-app workflows.
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. LangChain 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