Outmano

AI competitive intelligence: competitor pricing, features, reviews and news for B2B SaaS.

我該用這個嗎

品質與安全性

B
說明品質
93%
結構描述完整度
91%
命名品質
68%
汙染風險
80%
權限相符程度
100%
協定合規性
100%

發現項目(9)

  • HIGHTool poisoning patterns detected
  • LOWTool 'outmano_list_competitor_pricing_changes' name length outside 3-30 range在 outmano_list_competitor_pricing_changes 中
  • LOWTool 'outmano_list_competitor_blog_posts' name length outside 3-30 range在 outmano_list_competitor_blog_posts 中
  • LOWTool 'outmano_list_competitor_roadmap_changes' name length outside 3-30 range在 outmano_list_competitor_roadmap_changes 中
  • LOWTool 'outmano_list_competitor_reviews' name length outside 3-30 range在 outmano_list_competitor_reviews 中
  • LOWTool 'outmano_list_competitor_news_mentions' name length outside 3-30 range在 outmano_list_competitor_news_mentions 中
  • LOWTool 'outmano_list_competitor_mentions' name length outside 3-30 range在 outmano_list_competitor_mentions 中
  • LOWTool 'outmano_get_competitor_battlecard' name length outside 3-30 range在 outmano_get_competitor_battlecard 中
  • INFOTool description contains placeholder or incomplete text在 outmano_list_competitor_mentions 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~6,612Token(工具定義)
~5.9 KB典型回應大小
顯著的注意力影響(128k 上下文的 5.17%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "outmano": {
      "url": "https://outmano.com/mcp"
    }
  }
}

遠端端點

https://outmano.com/mcpstreamable-http

它能做什麼

工具清單

工具(12)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢outmano_list_competitor_pricing_changes(significance, limit, offset)

List recently detected pricing changes for the competitors you track, newest first, paginated, with an AI summary and before/after details.

輸入結構描述

{
  "type": "object",
  "properties": {
    "significance": {
      "type": "string",
      "minLength": 1,
      "description": "Filter: one of minor, moderate, major"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 25, max 100)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "changes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "id": {
            "type": "integer",
            "description": "Activity event id"
          },
          "change_type": {
            "type": "string",
            "description": "e.g. price_increase, price_decrease, tier_added, tier_removed"
          },
          "significance": {
            "type": "string",
            "description": "minor, moderate or major"
          },
          "detected_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601"
          },
          "summary": {
            "type": [
              "string",
              "null"
            ],
            "description": "AI summary of the change"
          },
          "details": {
            "type": "object",
            "description": "Before/after values; keys vary by change_type",
            "additionalProperties": true
          },
          "evidence": {
            "type": [
              "object",
              "null"
            ],
            "description": "Page-level proof; null when none was captured",
            "properties": {
              "visibility": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "html_changed": {
                "type": [
                  "boolean",
                  "null"
                ]
              },
              "screenshot_changed": {
                "type": [
                  "boolean",
                  "null"
                ]
              },
              "excerpts": {
                "description": "Before/after page excerpts"
              }
            },
            "additionalProperties": true
          }
        },
        "required": [
          "competitor",
          "domain",
          "id",
          "change_type",
          "significance",
          "details"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "changes"
  ],
  "additionalProperties": true
}
🟢outmano_get_competitor_seo(include_keywords, include_moves)

Get the latest SEO snapshot for your product and each competitor you track: domain rating, organic keyword count, estimated monthly organic traffic, backlinks, referring domains, and top-3/top-10 keyword counts. Optionally include each one's top organic keywords and its latest ranking moves scored against you (keywords that matter: your brand, keywords you both rank for, real gaps).

輸入結構描述

{
  "type": "object",
  "properties": {
    "include_keywords": {
      "type": "boolean",
      "not": {
        "type": "null"
      },
      "description": "Also return each competitor's top 10 organic keywords by traffic (default false)"
    },
    "include_moves": {
      "type": "boolean",
      "not": {
        "type": "null"
      },
      "description": "Also return each rival's latest keyword ranking moves scored against your product: headline, significance, suggested action, per-keyword positions and your own position (default false)"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer",
      "description": "Tracked products, your own included"
    },
    "competitors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "is_own": {
            "type": "boolean",
            "description": "True for your own product"
          },
          "seo": {
            "type": [
              "object",
              "null"
            ],
            "description": "Latest reading; null until the first SEO fetch",
            "properties": {
              "fetched_at": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "ISO 8601"
              },
              "domain_rating": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "organic_keywords": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "estimated_monthly_organic_traffic": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "backlinks": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "referring_domains": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "keywords_in_top_3": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "keywords_in_top_10": {
                "type": [
                  "integer",
                  "null"
                ]
              }
            },
            "additionalProperties": true
          },
          "top_keywords": {
            "type": [
              "array",
              "null"
            ],
            "description": "Only with include_keywords; null until a keyword snapshot exists",
            "items": {
              "type": "object",
              "properties": {
                "keyword": {
                  "type": "string"
                },
                "position": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "etv": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "description": "Estimated monthly traffic"
                },
                "url": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "additionalProperties": true
            }
          },
          "recent_moves": {
            "type": [
              "object",
              "null"
            ],
            "description": "Only with include_moves, rivals only; null until two snapshots exist",
            "properties": {
              "observed_at": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "ISO 8601"
              },
              "relevant": {
                "type": "boolean",
                "description": "True when the moves matter to you"
              },
              "significance": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "headline": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "suggested_action": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "moves": {
                "type": "array",
                "items": {
                  "type": "object",
                  "description": "keyword, kind, bucket, position, previous_position, your_position, vs_you, search_volume, url",
                  "additionalProperties": true
                }
              },
              "filtered": {
                "description": "Counts of moves the scorer set aside, by reason"
              }
            },
            "additionalProperties": true
          }
        },
        "required": [
          "competitor",
          "domain",
          "is_own",
          "seo"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "count",
    "competitors"
  ],
  "additionalProperties": true
}
🟢outmano_get_feature_matrix(category, differences_only)

Get the feature matrix for your competitive set: every canonical feature in your workspace's catalog, grouped by category, with which competitors market it and whether you do. Coverage comes from each product's public site, so a feature you're missing means you don't MARKET it — you may still have it unannounced. Use differences_only to hide rows where everyone (or no one) has it.

輸入結構描述

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "minLength": 1,
      "description": "Filter to one category: core_workflow, collaboration, integrations, automation, analytics_reporting, ai_capabilities, security_compliance, administration, developer_api, mobile_platform, other"
    },
    "differences_only": {
      "type": "boolean",
      "not": {
        "type": "null"
      },
      "description": "Only return features where coverage differs across the set (default false)"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "note": {
      "type": "string"
    },
    "you": {
      "type": [
        "string",
        "null"
      ],
      "description": "Your own product's name"
    },
    "competitors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          }
        },
        "required": [
          "competitor",
          "domain"
        ],
        "additionalProperties": true
      }
    },
    "aligned_rival_count": {
      "type": "integer",
      "description": "Rivals whose features are mapped onto the catalog"
    },
    "feature_count": {
      "type": "integer",
      "description": "Features in the catalog before filtering"
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string"
          },
          "label": {
            "type": "string",
            "description": "Human label for the category"
          },
          "features": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "description": "Canonical feature id"
                },
                "name": {
                  "type": "string"
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "you_market_it": {
                  "type": "boolean",
                  "description": "Absent when you have no own product tracked"
                },
                "marketed_by": {
                  "type": "array",
                  "description": "Rival names that market this feature",
                  "items": {
                    "type": "string"
                  }
                },
                "gap": {
                  "type": "boolean",
                  "description": "True when rivals market it and you do not"
                }
              },
              "required": [
                "id",
                "name",
                "marketed_by",
                "gap"
              ],
              "additionalProperties": true
            }
          }
        },
        "required": [
          "category",
          "label",
          "features"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "note",
    "competitors",
    "aligned_rival_count",
    "feature_count",
    "categories"
  ],
  "additionalProperties": true
}
🟢outmano_get_feature_gaps(category)

List the features your tracked competitors market on their sites that YOUR site doesn't mention, ranked by how many rivals have each one. For every gap you get each rival's own label and description for the capability. Two uses: (1) find missing features worth building — majority_of_rivals: true flags table stakes; (2) find features you already have but under-market — a gap you know you ship means your site isn't selling it, and the rival descriptions show how others position it.

輸入結構描述

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "minLength": 1,
      "description": "Filter to one category: core_workflow, collaboration, integrations, automation, analytics_reporting, ai_capabilities, security_compliance, administration, developer_api, mobile_platform, other"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "note": {
      "type": "string"
    },
    "you": {
      "type": "string",
      "description": "Your own product's name"
    },
    "aligned_rival_count": {
      "type": "integer",
      "description": "Rivals whose features are mapped onto the catalog"
    },
    "gap_count": {
      "type": "integer"
    },
    "gaps": {
      "type": "array",
      "description": "Sorted by rivals_with_count, then name",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "description": "Canonical feature id"
          },
          "name": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "rivals_with_count": {
            "type": "integer",
            "description": "How many aligned rivals market it"
          },
          "majority_of_rivals": {
            "type": "boolean",
            "description": "True when at least half of the aligned rivals market it"
          },
          "how_rivals_market_it": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "competitor": {
                  "type": "string"
                },
                "labels": {
                  "type": "array",
                  "description": "The rival's own names for the capability",
                  "items": {
                    "type": "string"
                  }
                },
                "descriptions": {
                  "type": "array",
                  "description": "The rival's own descriptions",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "competitor",
                "labels",
                "descriptions"
              ],
              "additionalProperties": true
            }
          }
        },
        "required": [
          "id",
          "name",
          "category",
          "rivals_with_count",
          "majority_of_rivals",
          "how_rivals_market_it"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "note",
    "you",
    "aligned_rival_count",
    "gap_count",
    "gaps"
  ],
  "additionalProperties": true
}
🟢outmano_list_competitor_blog_posts(competitor, limit, offset)

List recent blog posts published by the competitors you track, newest first, paginated. Filter to one competitor by domain.

輸入結構描述

{
  "type": "object",
  "properties": {
    "competitor": {
      "type": "string",
      "minLength": 1,
      "description": "Only posts from this tracked competitor's domain, e.g. 'rival.com'"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 25, max 100)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "posts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "url": {
            "type": [
              "string",
              "null"
            ]
          },
          "published_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601 date"
          }
        },
        "required": [
          "competitor",
          "domain"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "posts"
  ],
  "additionalProperties": true
}
🟢outmano_list_competitor_roadmap_changes(significance, change_type, limit, offset)

List recently detected roadmap changes for the competitors you track (features added, shipped, renamed, or removed), newest first, paginated, with an AI summary and details.

輸入結構描述

{
  "type": "object",
  "properties": {
    "significance": {
      "type": "string",
      "minLength": 1,
      "description": "Filter: one of minor, moderate, major"
    },
    "change_type": {
      "type": "string",
      "minLength": 1,
      "description": "Filter: one of item_added, item_status_changed, item_shipped, item_removed, item_renamed"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 25, max 100)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "changes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "change_type": {
            "type": "string",
            "description": "e.g. item_added, item_shipped, item_status_changed, item_removed"
          },
          "significance": {
            "type": "string",
            "description": "minor, moderate or major"
          },
          "detected_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601"
          },
          "summary": {
            "type": [
              "string",
              "null"
            ],
            "description": "AI summary of the change"
          },
          "details": {
            "type": "object",
            "description": "Item and status fields; keys vary by change_type",
            "additionalProperties": true
          }
        },
        "required": [
          "competitor",
          "domain",
          "change_type",
          "significance",
          "details"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "changes"
  ],
  "additionalProperties": true
}
🟢outmano_list_competitor_reviews(competitor, source, negative_only, limit, offset)

List recent public reviews of the competitors you track, newest first, paginated, plus a per-competitor rating summary (average rating, review count). Filter by competitor domain, source, or negative-only.

輸入結構描述

{
  "type": "object",
  "properties": {
    "competitor": {
      "type": "string",
      "minLength": 1,
      "description": "Only reviews of this tracked competitor's domain, e.g. 'rival.com'"
    },
    "source": {
      "type": "string",
      "minLength": 1,
      "description": "Filter: one of trustpilot, g2 (G2 needs a trial or paid plan)"
    },
    "negative_only": {
      "type": "boolean",
      "not": {
        "type": "null"
      },
      "description": "Only reviews rated 2 stars or below"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 25, max 100)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "summary": {
      "type": "array",
      "description": "Latest rating per rival and source",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "source": {
            "type": "string",
            "description": "trustpilot or g2"
          },
          "average_rating": {
            "type": [
              "number",
              "null"
            ]
          },
          "review_count": {
            "type": [
              "integer",
              "null"
            ]
          },
          "rating_distribution": {
            "type": "object",
            "description": "Review counts keyed by star rating",
            "additionalProperties": true
          },
          "fetched_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601"
          }
        },
        "required": [
          "competitor",
          "domain",
          "source"
        ],
        "additionalProperties": true
      }
    },
    "reviews": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "source": {
            "type": "string",
            "description": "trustpilot or g2"
          },
          "rating": {
            "type": [
              "number",
              "null"
            ]
          },
          "negative": {
            "type": "boolean",
            "description": "Rated at or below the negative threshold"
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "body": {
            "type": [
              "string",
              "null"
            ],
            "description": "Truncated to 300 characters"
          },
          "author": {
            "type": [
              "string",
              "null"
            ]
          },
          "sentiment": {
            "type": [
              "string",
              "null"
            ]
          },
          "reviewed_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601 date"
          },
          "url": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "competitor",
          "domain",
          "source",
          "negative"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "summary",
    "reviews"
  ],
  "additionalProperties": true
}
🟢outmano_list_competitor_news_mentions(competitor, category, limit, offset)

List recent press mentions of the competitors you track (funding, acquisitions, layoffs, general coverage), newest first, paginated. Filter to one competitor by domain or to one category.

輸入結構描述

{
  "type": "object",
  "properties": {
    "competitor": {
      "type": "string",
      "minLength": 1,
      "description": "Only mentions of this tracked competitor's domain, e.g. 'rival.com'"
    },
    "category": {
      "type": "string",
      "minLength": 1,
      "description": "Only this category: funding, acquisition, layoffs, or general"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 25, max 100)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "mentions": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "url": {
            "type": [
              "string",
              "null"
            ]
          },
          "source": {
            "type": [
              "string",
              "null"
            ],
            "description": "Publication"
          },
          "category": {
            "type": [
              "string",
              "null"
            ],
            "description": "funding, acquisition, layoffs or general"
          },
          "published_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601 date"
          }
        },
        "required": [
          "competitor",
          "domain"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "mentions"
  ],
  "additionalProperties": true
}
🟢outmano_list_competitor_mentions(competitor, channel, sentiment, intent, limit, ...)

List recent public mentions of the competitors you track and of your own product (Hacker News and Reddit), newest first, paginated. Each mention carries sentiment and intent (praise, complaint, question, comparison, alternative_seeking, news). Filter by competitor domain, channel, sentiment or intent.

輸入結構描述

{
  "type": "object",
  "properties": {
    "competitor": {
      "type": "string",
      "minLength": 1,
      "description": "Only mentions of this tracked competitor's domain, e.g. 'rival.com' (your own product's domain works too)"
    },
    "channel": {
      "type": "string",
      "minLength": 1,
      "description": "Only this channel: hacker_news, reddit, or web"
    },
    "sentiment": {
      "type": "string",
      "minLength": 1,
      "description": "Only this sentiment: positive, negative, or neutral"
    },
    "intent": {
      "type": "string",
      "minLength": 1,
      "description": "Only this intent: praise, complaint, question, comparison, alternative_seeking, news, or other"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 25, max 100)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "mentions": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "url": {
            "type": [
              "string",
              "null"
            ]
          },
          "channel": {
            "type": "string",
            "description": "hacker_news, reddit or web"
          },
          "source": {
            "type": [
              "string",
              "null"
            ],
            "description": "Source domain"
          },
          "author": {
            "type": [
              "string",
              "null"
            ]
          },
          "excerpt": {
            "type": [
              "string",
              "null"
            ],
            "description": "Up to 300 characters"
          },
          "sentiment": {
            "type": [
              "string",
              "null"
            ],
            "description": "positive, negative or neutral"
          },
          "intent": {
            "type": [
              "string",
              "null"
            ],
            "description": "praise, complaint, question, comparison, alternative_seeking, news or other"
          },
          "mentions_competitors": {
            "type": "array",
            "description": "Other tracked names in the same mention",
            "items": {
              "type": "string"
            }
          },
          "score": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Hacker News points; absent elsewhere"
          },
          "comments": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Hacker News comment count; absent elsewhere"
          },
          "published_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601"
          }
        },
        "required": [
          "competitor",
          "domain"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "mentions"
  ],
  "additionalProperties": true
}
🟢outmano_list_activity_events(angle, significance, limit, offset)

List the latest detected activity across everything you track — pricing, SEO, content, roadmap, and review events — newest first, paginated. This is the same feed as the in-app dashboard.

輸入結構描述

{
  "type": "object",
  "properties": {
    "angle": {
      "type": "string",
      "minLength": 1,
      "description": "Filter: one of seo, pricing, content, features, roadmap, reviews, hiring, news, mentions, ads"
    },
    "significance": {
      "type": "string",
      "minLength": 1,
      "description": "Filter: one of normal, important, critical"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 25, max 100)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "events": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "competitor": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor name"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Competitor domain"
          },
          "event_type": {
            "type": "string",
            "description": "e.g. pricing_price_increase, seo_ranking_shift, blog_new_post"
          },
          "angle": {
            "type": [
              "string",
              "null"
            ],
            "description": "pricing, seo, content, roadmap, reviews, ..."
          },
          "significance": {
            "type": "string",
            "description": "normal, important or critical"
          },
          "title": {
            "type": "string"
          },
          "occurred_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601"
          },
          "details": {
            "type": [
              "object",
              "null"
            ],
            "description": "Event payload; keys vary by event_type",
            "additionalProperties": true
          }
        },
        "required": [
          "competitor",
          "domain",
          "event_type",
          "significance",
          "title"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "events"
  ],
  "additionalProperties": true
}
🟢outmano_list_action_plans(since, limit, offset)

List your weekly AI action plans — suggested action items generated from your competitors' latest moves, each with angle, urgency, confidence, the evidence behind it, and a ~30-minute first step. Each item carries status (active/completed); items you ignored are omitted. Newest first, paginated; use limit 1 for just the current plan.

輸入結構描述

{
  "type": "object",
  "properties": {
    "since": {
      "type": "string",
      "minLength": 1,
      "description": "Only plans generated on/after this date (ISO 8601, e.g. 2026-06-01)"
    },
    "limit": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Max results per page (default 5, max 50)"
    },
    "offset": {
      "type": "integer",
      "not": {
        "type": "null"
      },
      "description": "Skip this many results (default 0); use next_offset from the previous page"
    }
  },
  "required": []
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer",
      "description": "Total matching items"
    },
    "count": {
      "type": "integer",
      "description": "Items on this page"
    },
    "offset": {
      "type": "integer",
      "description": "Items skipped before this page"
    },
    "has_more": {
      "type": "boolean",
      "description": "True when another page follows"
    },
    "next_offset": {
      "type": "integer",
      "description": "Pass as offset to fetch the next page; absent on the last page"
    },
    "plans": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "generated_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "ISO 8601"
          },
          "summary": {
            "type": [
              "string",
              "null"
            ],
            "description": "The week in one paragraph"
          },
          "action_items": {
            "type": "array",
            "description": "Sorted by urgency; items you ignored are omitted",
            "items": {
              "type": "object",
              "properties": {
                "angle": {
                  "type": "string"
                },
                "title": {
                  "type": "string"
                },
                "why_it_matters": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "evidence": {
                  "type": "array",
                  "description": "The competitor moves behind the item",
                  "items": {
                    "type": "string"
                  }
                },
                "urgency": {
                  "type": "string",
                  "description": "high, medium or low"
                },
                "confidence": {
                  "type": "string",
                  "description": "high, medium or low"
                },
                "next_step_30_min": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "A first step that fits in about 30 minutes"
                },
                "is_new": {
                  "type": [
                    "boolean",
                    "null"
                  ],
                  "description": "First appearance of this item"
                },
                "status": {
                  "type": "string",
                  "description": "active or completed"
                }
              },
              "required": [
                "angle",
                "title",
                "status"
              ],
              "additionalProperties": true
            }
          },
          "no_action_angles": {
            "type": [
              "array",
              "null"
            ],
            "description": "Angles with nothing to do this week",
            "items": {
              "type": "object",
              "properties": {
                "angle": {
                  "type": "string"
                },
                "reason": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "additionalProperties": true
            }
          }
        },
        "required": [
          "generated_at",
          "summary",
          "action_items"
        ],
        "additionalProperties": true
      }
    }
  },
  "required": [
    "total",
    "count",
    "offset",
    "has_more",
    "plans"
  ],
  "additionalProperties": true
}
🟢outmano_get_competitor_battlecard(domain)

Get the AI-generated sales battlecard for one tracked competitor — overview, quick stats, strengths, weaknesses, how you win, objection handling (they say X / you say Y), pricing talk track, and landmine questions to plant. Generate or refresh cards from the competitor's Battlecard tab in the app.

輸入結構描述

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "minLength": 1,
      "description": "Competitor domain, e.g. acme.com"
    }
  },
  "required": [
    "domain"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "competitor": {
      "type": [
        "string",
        "null"
      ],
      "description": "Competitor name"
    },
    "domain": {
      "type": [
        "string",
        "null"
      ],
      "description": "Competitor domain"
    },
    "generated_at": {
      "type": "string",
      "description": "ISO 8601"
    },
    "built_from": {
      "description": "Angle name to timestamp of the data the card was built from"
    },
    "stale_angles": {
      "type": "array",
      "description": "Angles with newer data than the card",
      "items": {
        "type": "string"
      }
    },
    "battlecard": {
      "type": "object",
      "properties": {
        "overview": {
          "type": [
            "string",
            "null"
          ]
        },
        "quick_stats": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "label": {
                "type": "string"
              },
              "value": {}
            },
            "additionalProperties": true
          }
        },
        "strengths": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "point": {
                "type": "string"
              },
              "evidence": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "additionalProperties": true
          }
        },
        "weaknesses": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "point": {
                "type": "string"
              },
              "evidence": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "additionalProperties": true
          }
        },
        "how_we_win": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "differentiator": {
                "type": "string"
              },
              "talk_track": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "additionalProperties": true
          }
        },
        "objection_handling": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "objection": {
                "type": "string",
                "description": "They say ..."
              },
              "response": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "You say ..."
              }
            },
            "additionalProperties": true
          }
        },
        "pricing_talk_track": {
          "type": "object",
          "properties": {
            "their_pricing": {
              "type": [
                "string",
                "null"
              ]
            },
            "our_position": {
              "type": [
                "string",
                "null"
              ]
            },
            "guidance": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "additionalProperties": true
        },
        "landmines": {
          "type": "array",
          "description": "Questions to plant with the buyer",
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": true
    }
  },
  "required": [
    "competitor",
    "domain",
    "generated_at",
    "battlecard"
  ],
  "additionalProperties": true
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本12 個工具