Oakferry Agents

Search and compare Oakferry's apps with dated, sourced facts: platforms, prices, ratings, limits.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
74%
Naming quality
95%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~571Tokens (tool definitions)
~813 BTypical response size
Minimal attention impact (0.45% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "agents": {
      "url": "https://agents.oakferry.com/mcp"
    }
  }
}

Remote endpoints

https://agents.oakferry.com/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_products(query, category, platform, max_price, free, ...)

Find products matching a person's constraints. Put hard requirements in the filters (platform, max_price, free, no_subscription, attributes) and the rest in query. Each result says why it matched. Call list_attributes to see filterable keys.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "What the person wants, in their words"
    },
    "category": {
      "type": "string"
    },
    "platform": {
      "type": "string",
      "description": "iOS, Android, Web, ..."
    },
    "max_price": {
      "type": "number",
      "description": "Most the cheapest way in may cost; 0 = free to start"
    },
    "free": {
      "type": "boolean",
      "description": "Only products with a free offer"
    },
    "no_subscription": {
      "type": "boolean",
      "description": "Only products usable without a subscription"
    },
    "attributes": {
      "type": "object",
      "description": "Exact attribute matches, e.g. {\"offline\": true}",
      "additionalProperties": true
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢get_product(id)

Full facts for one product: where to get it, every price, ratings with dates, features, attributes, when not to recommend it, third-party coverage and sources.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Product id from search_products"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢compare_products(id, product_id)

Comparison tables of products and their alternatives on shared attributes, each row sourced. Pass an id to get one table, or a product id to get every table it appears in, or nothing to list them.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Comparison id"
    },
    "product_id": {
      "type": "string"
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢list_attributes

Filterable attribute keys, the values products use for each, and how many products set it. Use these keys in search_products attributes.

Input Schema

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools