Skip to content

FeelingSurf

by feelingsurf.fr · remote · no sign-in to list tools · v1.1.0 · published by fr.feelingsurf

Manage your FeelingSurf traffic exchange account: sites, targeting, templates, sources and proxies.

Deletes · 11Changes · 6

34 tools: 11 can delete or cancel things, 6 change things and 17 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http feelingsurf https://api.feelingsurf.fr/mcp --header 'Authorization: <your-authorization>'

Findings

Matches of fixed checks, with the text they matched.

1 info
  • The description mentions "credentials".

    Matched text

    description: "...er failing. To change the host, port or credentials, delete the proxy and add it again."

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

34 tools

Deletes or cancels 11Claude Code: deny
  • delete_labelDelete a label.No findings

    Why it is in this group

    • The name "delete_label" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a label.

    Annotations the server declares

    • title: Delete a label
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • delete_proxyRemove a proxy.No findings

    Why it is in this group

    • The name "delete_proxy" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Remove a proxy.

    Annotations the server declares

    • title: Remove a proxy
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • delete_siteDelete a site.No findings

    Why it is in this group

    • The name "delete_site" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a site.

    Annotations the server declares

    • title: Delete a site
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • delete_site_templateDelete a site template.No findings

    Why it is in this group

    • The name "delete_site_template" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a site template.

    Annotations the server declares

    • title: Delete a site template
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • delete_traffic_sourceDelete a traffic source.No findings

    Why it is in this group

    • The name "delete_traffic_source" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete a traffic source.

    Annotations the server declares

    • title: Delete a traffic source
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • update_accountUpdate account settings.No findings

    Why it is in this group

    • The name "update_account" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update account settings. Update non-sensitive account settings (e.g. `visit_own_sites`, `timezone`). Writable account settings. Provide at least one. Email, password and billing are intentionally not editable via the API.

    Annotations the server declares

    • title: Update account settings
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • update_labelUpdate a label.No findings

    Why it is in this group

    • The name "update_label" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update a label. Provide at least one field.

    Annotations the server declares

    • title: Update a label
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • update_proxyPause or resume a proxy.1 finding

    Why it is in this group

    • The name "update_proxy" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    Findings

    • Info

      The description mentions "credentials".

      Matched text

      description: "...er failing. To change the host, port or credentials, delete the proxy and add it again."

      What this check looks for
    Description, as the server wrote it
    Pause or resume a proxy. Only `enabled` can change. Pausing or resuming clears `last_error` and its error history, and a resumed proxy is checked again at once, so this also brings back a proxy that was switched off after failing. To change the host, port or credentials, delete the proxy and add it again.

    Annotations the server declares

    • title: Pause or resume a proxy
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • update_siteUpdate a site.No findings

    Why it is in this group

    • The name "update_site" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update a site. Writable fields of a site. For PATCH, provide at least one; only the fields present are changed.

    Annotations the server declares

    • title: Update a site
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • update_site_templateUpdate a site template.No findings

    Why it is in this group

    • The name "update_site_template" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update a site template. Writable fields of a site template. For PATCH, provide at least one; only the fields present are changed.

    Annotations the server declares

    • title: Update a site template
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • update_traffic_sourceUpdate a traffic source.No findings

    Why it is in this group

    • The name "update_traffic_source" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update a traffic source. Provide at least one field.

    Annotations the server declares

    • title: Update a traffic source
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
Changes things 6Claude Code: ask
  • create_labelCreate a label.No findings

    Why it is in this group

    • The name "create_label" says "create": a word for a change.
    Description, as the server wrote it
    Create a label. Exceeding the per-account label cap returns 403 `limit_reached`.

    Annotations the server declares

    • title: Create a label
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • create_proxyAdd a proxy.No findings

    Why it is in this group

    • The name "create_proxy" says "create": a word for a change.
    Description, as the server wrote it
    Add a proxy. Registers a static proxy. FeelingSurfViewer checks it before any session goes through it, so a new proxy starts with `proven` false. Exceeding the per-account proxy cap returns 403 `proxy_limit_reached`; a host and port already on your account returns 422 `validation_error`.

    Annotations the server declares

    • title: Add a proxy
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • create_siteCreate a site.No findings

    Why it is in this group

    • The name "create_site" says "create": a word for a change.
    Description, as the server wrote it
    Create a site. Only `url` is required; every other field defaults to a new-site configuration. Exceeding the account's slot count returns 403 `site_limit_reached`. Fields for creating a site. Only `url` is required; all others default to a new-site configuration. When `template_id` is given, that template's settings seed the defaults and any field set explicitly here overrides them (shallow, per top-level key).

    Annotations the server declares

    • title: Create a site
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • create_site_templateCreate a site template.No findings

    Why it is in this group

    • The name "create_site_template" says "create": a word for a change.
    Description, as the server wrote it
    Create a site template. A template is a reusable bundle of site settings (no url/paused/labels). Only `name` is required; every other field defaults to a new-template configuration. Exceeding the per-account cap returns 403 `template_limit_reached`. Fields for creating a site template. Only `name` is required; all others default to a new-template configuration.

    Annotations the server declares

    • title: Create a site template
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • create_traffic_sourceCreate a traffic source.No findings

    Why it is in this group

    • The name "create_traffic_source" says "create": a word for a change.
    Description, as the server wrote it
    Create a traffic source. Exceeding the per-account source cap returns 403 `limit_reached`.

    Annotations the server declares

    • title: Create a traffic source
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • restore_siteRestore a deleted site.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Restore a deleted site. Brings back a site you deleted, with the settings it had. Geo targeting, blocked domains and actions your plan cannot use stay suspended and come back empty. Returns 404 once the retention window has passed, and 403 `site_limit_reached` when you have no free slot.

    Annotations the server declares

    • title: Restore a deleted site
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
Only reads 17Claude Code: allow
  • get_accountGet the authenticated account.No findings

    Why it is in this group

    • The name "get_account" says "get": a word for reading.
    Description, as the server wrote it
    Get the authenticated account. Account summary plus the earn-side rollup (credits earned today / last 7 days), active FeelingSurfViewer session count, and site-slot usage.

    Annotations the server declares

    • title: Get the authenticated account
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_labelGet one label.No findings

    Why it is in this group

    • The name "get_label" says "get": a word for reading.
    Description, as the server wrote it
    Get one label.

    Annotations the server declares

    • title: Get one label
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_proxyGet one proxy.No findings

    Why it is in this group

    • The name "get_proxy" says "get": a word for reading.
    Description, as the server wrote it
    Get one proxy.

    Annotations the server declares

    • title: Get one proxy
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_referralsGet your referral program.No findings

    Why it is in this group

    • The name "get_referrals" says "get": a word for reading.
    Description, as the server wrote it
    Get your referral program. Your shareable referral link, how many users you've referred, your commission rate, and commission credits earned.

    Annotations the server declares

    • title: Get your referral program
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_screenshotGet a screenshot image.No findings

    Why it is in this group

    • The name "get_screenshot" says "get": a word for reading.
    Description, as the server wrote it
    Get a screenshot image. Returns the image FeelingSurfViewer captured. The uid is the last path segment of an `images[].url` from list_site_screenshots.

    Annotations the server declares

    • title: Get a screenshot image
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_siteGet one site.No findings

    Why it is in this group

    • The name "get_site" says "get": a word for reading.
    Description, as the server wrote it
    Get one site.

    Annotations the server declares

    • title: Get one site
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_site_templateGet one site template.No findings

    Why it is in this group

    • The name "get_site_template" says "get": a word for reading.
    Description, as the server wrote it
    Get one site template.

    Annotations the server declares

    • title: Get one site template
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_traffic_availabilityTraffic availability by country.No findings

    Why it is in this group

    • The name "get_traffic_availability" says "get": a word for reading.
    Description, as the server wrote it
    Traffic availability by country. Surfer-traffic availability per country, to guide a site's or template's location targeting. A country with `availability: none` has no surfers delivering visits, so targeting it yields nothing. A fixed reference dataset (~250 countries), returned in full — not paginated.

    Annotations the server declares

    • title: Traffic availability by country
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_traffic_sourceGet one traffic source.No findings

    Why it is in this group

    • The name "get_traffic_source" says "get": a word for reading.
    Description, as the server wrote it
    Get one traffic source. Works for your own sources and for the shared defaults (e.g. id 1, "Direct visits").

    Annotations the server declares

    • title: Get one traffic source
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_deleted_sitesList sites you can still restore.No findings

    Why it is in this group

    • The name "list_deleted_sites" says "list": a word for reading.
    Description, as the server wrote it
    List sites you can still restore. Sites you deleted within the retention window, most recently deleted first. Sites removed because a plan downgrade reduced your slot count are not listed: those come back on their own when you upgrade again.

    Annotations the server declares

    • title: List sites you can still restore
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_labelsList your labels.No findings

    Why it is in this group

    • The name "list_labels" says "list": a word for reading.
    Description, as the server wrote it
    List your labels. Referenced by id from a site's `labels`.

    Annotations the server declares

    • title: List your labels
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_proxiesList your proxies.No findings

    Why it is in this group

    • The name "list_proxies" says "list": a word for reading.
    Description, as the server wrote it
    List your proxies. Every proxy on your account, oldest first.

    Annotations the server declares

    • title: List your proxies
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_site_screenshotsList a site's FeelingSurfViewer screenshots.No findings

    Why it is in this group

    • The name "list_site_screenshots" says "list": a word for reading.
    Description, as the server wrote it
    List a site's FeelingSurfViewer screenshots. Screenshots captured while the app surfed the site. Returns the most recent (up to 24); this list is not paginated.

    Annotations the server declares

    • title: List a site's FeelingSurfViewer screenshots
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_site_templatesList your site templates.No findings

    Why it is in this group

    • The name "list_site_templates" says "list": a word for reading.
    Description, as the server wrote it
    List your site templates.

    Annotations the server declares

    • title: List your site templates
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_sitesList your sites.No findings

    Why it is in this group

    • The name "list_sites" says "list": a word for reading.
    Description, as the server wrote it
    List your sites.

    Annotations the server declares

    • title: List your sites
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_surf_sessionsList your FeelingSurfViewer sessions.No findings

    Why it is in this group

    • The name "list_surf_sessions" says "list": a word for reading.
    Description, as the server wrote it
    List your FeelingSurfViewer sessions. Recent FeelingSurfViewer sessions on your account (the earning side), most recent first. These are your own FeelingSurfViewer instances and their IPs.

    Annotations the server declares

    • title: List your FeelingSurfViewer sessions
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_traffic_sourcesList your traffic sources.No findings

    Why it is in this group

    • The name "list_traffic_sources" says "list": a word for reading.
    Description, as the server wrote it
    List your traffic sources. Your own sources plus the shared/built-in ones, referenced by id from a site's `traffic_sources`.

    Annotations the server declares

    • title: List your traffic sources
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.1.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http feelingsurf https://api.feelingsurf.fr/mcp --header 'Authorization: <your-authorization>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__feelingsurf__get_account",
      "mcp__feelingsurf__list_surf_sessions",
      "mcp__feelingsurf__get_referrals",
      "mcp__feelingsurf__get_traffic_availability",
      "mcp__feelingsurf__list_sites",
      "mcp__feelingsurf__get_site",
      "mcp__feelingsurf__list_deleted_sites",
      "mcp__feelingsurf__list_site_screenshots",
      "mcp__feelingsurf__get_screenshot",
      "mcp__feelingsurf__list_site_templates",
      "mcp__feelingsurf__get_site_template",
      "mcp__feelingsurf__list_traffic_sources",
      "mcp__feelingsurf__get_traffic_source",
      "mcp__feelingsurf__list_proxies",
      "mcp__feelingsurf__get_proxy",
      "mcp__feelingsurf__list_labels",
      "mcp__feelingsurf__get_label"
    ],
    "ask": [
      "mcp__feelingsurf__create_site",
      "mcp__feelingsurf__restore_site",
      "mcp__feelingsurf__create_site_template",
      "mcp__feelingsurf__create_traffic_source",
      "mcp__feelingsurf__create_proxy",
      "mcp__feelingsurf__create_label"
    ],
    "deny": [
      "mcp__feelingsurf__update_account",
      "mcp__feelingsurf__update_site",
      "mcp__feelingsurf__delete_site",
      "mcp__feelingsurf__update_site_template",
      "mcp__feelingsurf__delete_site_template",
      "mcp__feelingsurf__update_traffic_source",
      "mcp__feelingsurf__delete_traffic_source",
      "mcp__feelingsurf__update_proxy",
      "mcp__feelingsurf__delete_proxy",
      "mcp__feelingsurf__update_label",
      "mcp__feelingsurf__delete_label"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as feelingsurf. Review it before you use it.