Skip to main content
Glama
sai4447

agentfuse-mcp

by sai4447

agentfuse-mcp

MCP server for AgentFuse -- the affiliate API middleware for AI agents.

Lets any MCP-compatible AI agent (Claude Code, Cowork, custom agents) browse affiliate programs, generate tracked links, and record conversions without writing HTTP code.


Tools

Tool

Description

list_affiliate_programs

Browse all programs in the catalog (filterable by category)

get_affiliate_program

Get full details for one program by slug

generate_tracked_link

Create an attribution-tagged short link for a user

get_stats

Dashboard summary: clicks, signups, commissions

record_signup

Log a conversion event when a user signs up

list_tracked_links

List all tracked links generated for your users

record_commission

Log a commission event (purchase or renewal)


Related MCP server: admitad-mcp

Requirements

  • Node.js >= 18

  • An AgentFuse API key -- get one at agentfuse.io


Usage

Add to your project's .claude/mcp.json (or your global ~/.claude/mcp.json):

{
  "mcpServers": {
    "agentfuse": {
      "command": "npx",
      "args": ["-y", "agentfuse-mcp"],
      "env": {
        "AGENTFUSE_API_KEY": "af_live_your_key_here"
      }
    }
  }
}

Or, if you've cloned this repo locally:

{
  "mcpServers": {
    "agentfuse": {
      "command": "node",
      "args": ["/path/to/agentfuse-mcp/src/index.js"],
      "env": {
        "AGENTFUSE_API_KEY": "af_live_your_key_here"
      }
    }
  }
}

Option 2 -- Run directly

npm install
AGENTFUSE_API_KEY=af_live_... node src/index.js

Option 3 -- Test the tool list (no API key needed)

node src/index.js --test

Example agent interactions

Browse programs:

"List all affiliate programs in the AI tools category" -> calls list_affiliate_programs({ category: "ai-voice" })

Generate a link:

"Create a tracked Webflow affiliate link for user alice@example.com" -> calls generate_tracked_link({ program_slug: "webflow", end_user_id: "alice@example.com" })

Check stats:

"How many clicks and signups have we had this month?" -> calls get_stats()


Environment variables

Variable

Required

Default

Description

AGENTFUSE_API_KEY

Yes

--

Your AgentFuse API key (af_live_...)

AGENTFUSE_API_URL

No

https://api.agentfuse.io

Override the API base URL


License

MIT (c) AgentFuse / GSK AIOrch LLC

Available Tools

7 tools
get_affiliate_programA

Get full details for a single affiliate program by its slug. Returns the program's UUID (needed for generate_tracked_link), commission structure, payout terms, description, and network info.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe program slug (e.g. 'webflow', 'elevenlabs', 'notion', 'zapier'). Use list_affiliate_programs to discover available slugs.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description adequately conveys this is a read-only lookup (no mention of side effects). It explains the output includes commission structure, payout terms, etc. The description is transparent about what the tool does, though it could mention if there are any rate limits or authentication requirements, but for a simple read operation this is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with front-loaded key information. Every sentence adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description fully explains the purpose, parameter, return contents, and links to related tools. Nothing is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage and the description adds meaningful context: it gives example slugs ('webflow', 'elevenlabs') and tells the user to use list_affiliate_programs to find more slugs. This goes beyond the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves full details for a single affiliate program by slug. It lists specific return fields (UUID, commission, payout terms, etc.) and distinguishes from sibling tools like list_affiliate_programs (listing all) and generate_tracked_link (which requires the UUID from this tool).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly notes that the slug parameter can be discovered using list_affiliate_programs, and that the returned UUID is needed for generate_tracked_link. While it doesn't state explicit when-not-to-use scenarios, the context is clear and provides helpful direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_statsA

Retrieve AgentFuse dashboard summary stats: total clicks, signups, commissions, and top-performing programs. Useful for reporting to users or surfacing revenue data.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states the tool retrieves stats but does not disclose behavioral traits such as data freshness, caching, or whether it requires specific permissions. The simplicity of a zero-parameter tool partially mitigates this.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is concise and front-loaded with the tool's purpose. Every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and no output schema, the description is fairly complete. It specifies what stats are retrieved and a use case. It could mention if the stats are aggregate over all time or filtered, but not necessary for a simple endpoint.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters, and schema description coverage is 100%. Baseline for zero parameters is 4, and the description adds no extra parameter info (none needed).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves dashboard summary stats and lists specific metrics (total clicks, signups, commissions, top-performing programs). It distinguishes from sibling tools like generate_tracked_link or record_commission, which focus on individual operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions it is useful for reporting to users or surfacing revenue data, providing clear context. However, it does not explicitly exclude cases where other tools like list_affiliate_programs might be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_affiliate_programsA

Browse available affiliate programs in the AgentFuse catalog. Returns each program's name, slug, category, commission rate, and network. Use this to discover programs before generating tracked links.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoFilter by category slug. Examples: productivity, marketing, ai-voice, ai-writing, email-marketing, newsletter, automation, marketing-automation, seo-analytics, design, developer-tools. Omit to return all categories.
limitNoNumber of programs to return (default: 50, max: 100).
cursorNoPagination cursor returned from a previous call. Pass this to get the next page.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description lists the returned fields (name, slug, category, commission rate, network), which is helpful, but it does not disclose pagination behavior, rate limits, or authentication needs. Since no annotations are provided, the description carries full burden but falls short of giving rich behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two sentences that efficiently communicate purpose, return values, and usage context without extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the description covers the basic return fields and usage context, it lacks details on pagination (despite a cursor parameter), ordering, error handling, and performance characteristics. The absence of an output schema makes this gap more significant, so completeness is only moderate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have descriptions in the input schema (100% coverage), so the description adds minimal additional meaning. It does not elaborate on parameter details beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the verb 'Browse' and identifies the resource 'available affiliate programs in the AgentFuse catalog', making the action and scope clear. It also hints at its role relative to siblings by stating 'before generating tracked links', distinguishing it from generate_tracked_link and get_affiliate_program.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly advises using this tool 'to discover programs before generating tracked links', providing clear context for when to use it. However, it does not explicitly state when not to use it or mention alternative sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

record_commissionA

Record an affiliate commission event (e.g. when a referred user makes a purchase or renews a subscription). Requires the tracking_code from the original affiliate link. Idempotent -- safe to call multiple times with the same network + network_event_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
tracking_codeYesThe tracking code from the affiliate link (returned by generate_tracked_link).
networkYesThe affiliate network that reported this event. One of: 'partnerstack', 'impact', 'direct'.
network_event_idYesUnique commission event ID from the affiliate network. Used for idempotency.
amountYesCommission amount in dollars (e.g. 29.99).
currencyNoISO 4217 currency code (default: 'USD').USD
commission_typeNoType of commission. One of: 'initial', 'recurring', 'one_time'. Defaults to 'recurring'.
period_startNoBilling period start date in ISO 8601 format (optional).
period_endNoBilling period end date in ISO 8601 format (optional).
metadataNoOptional extra data (e.g. order ID, plan name).

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must compensate. It discloses idempotency (safe to call multiple times with same network+network_event_id), which is key. However, it does not describe what happens on failure (e.g., invalid tracking_code), whether the endpoint is read-only or not, or any side effects. Some behavioral context is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences: purpose with example, prerequisite, and idempotency note. No unnecessary words, front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 parameters and no output schema, the description covers the essential usage context but lacks explanation of return values or error handling. It adequately complements the detailed schema but could be more comprehensive (e.g., what the response looks like, permissions needed).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Since schema description coverage is 100%, baseline is 3. The description adds minimal extra meaning: it emphasizes that tracking_code comes from generate_tracked_link (already in schema) and that network_event_id is used for idempotency (also in schema). No significant new parameter information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Record an affiliate commission event') and provides a concrete example (purchase or renewal). It distinguishes from sibling tools like record_signup and generate_tracked_link by specifying the trigger (referred user purchase/renewal) and the required tracking_code from generate_tracked_link.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use (upon purchase or subscription renewal) and notes the prerequisite of having a tracking_code from generate_tracked_link. It also mentions idempotency, suggesting safe retries. However, it does not explicitly state when not to use or provide alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

record_signupA

Record an affiliate signup conversion event. Call this when one of your end users successfully signs up for a referred product. Requires the tracking_code returned by generate_tracked_link. Idempotent -- safe to call multiple times with the same network + network_event_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
tracking_codeYesThe tracking code from the affiliate link (returned by generate_tracked_link). This ties the signup back to the original referral.
networkYesThe affiliate network that reported this event. One of: 'partnerstack', 'impact', 'direct'.
network_event_idYesUnique event ID from the affiliate network (or any unique string for 'direct'). Used for idempotency -- duplicate calls with the same ID are ignored.
signup_emailNoEmail address the user signed up with (optional but recommended).
metadataNoOptional extra data to attach to this event.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses idempotency and safety of multiple calls. Without annotations, description provides essential behavioral context about side effects and dependency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, no waste. Purpose first, then condition, prerequisite, and idempotency. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, trigger, prerequisite, and idempotency. Lacks return value or error handling, but no output schema expected. Adequate for a simple recording tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so description adds limited value. It reinforces tracking_code's role and network_event_id's idempotency use, but doesn't go beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb ('Record'), resource ('affiliate signup conversion event'), and condition ('when user signs up'). Distinguishes from siblings like generate_tracked_link (prerequisite) and get_stats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to call (signup success) and prerequisite (tracking_code). Mentions idempotency but doesn't explicitly exclude alternatives; however, siblings don't overlap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updatesv1.1.3
    • First observedgenerate_tracked_link
    • First observedget_affiliate_program
    • First observedget_stats
    • First observedlist_affiliate_programs
    • First observedlist_tracked_links
    • First observedrecord_commission
    • First observedrecord_signup

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clear, unique purpose: generating links, retrieving program details, listing resources, recording different event types, and fetching stats. No two tools overlap in functionality; even record_commission and record_signup are distinctly about different events.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., generate_tracked_link, list_affiliate_programs, record_commission). The naming is predictable and easy to understand.

Tool Count5/5

With 7 tools, the server is well-scoped for an affiliate link tracking service. Each tool serves a necessary function without being overwhelming or too sparse.

Completeness4/5

The tool surface covers core use cases: browsing programs, creating tracked links, listing links, recording signups and commissions, and viewing stats. Minor gaps like updating or deleting links exist but are not critical for the primary workflow.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Enables users to manage affiliate marketing directly within Claude by connecting to the Affilync platform. Affiliates can search campaigns and track earnings, while brands can create campaigns, monitor performance, and manage affiliate applications through natural language.
    20
    1
    -
  • F
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to browse Admitad affiliate programs, discover product feeds, and search products directly from chat.
    8
    2
    -
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to search products and generate affiliate links across European and global affiliate networks, automating product discovery and link creation for monetization.
    2
    5
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sai4447/agentfuse-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server