{"$schema":"https://github.com/modelcontextprotocol/modelcontextprotocol/raw/main/schemas/2025-11-25/server-card.schema.json","serverInfo":{"name":"henneth-mcp","title":"Henneth for Claude and ChatGPT","version":"1.0.0","description":"Model Context Protocol server for Henneth: read your brands' visibility in AI answers, competitor comparisons, tracked prompts, alerts and catalog issues, and create a task.","websiteUrl":"https://henneth.ai"},"transports":[{"type":"streamable-http","url":"https://mcp.henneth.ai/mcp","auth":{"type":"oauth2","flow":"authorization_code","pkce":"S256","dynamic_client_registration":true,"authorization_server":"https://clerk.henneth.ai","protected_resource_metadata":"https://mcp.henneth.ai/.well-known/oauth-protected-resource","description":"Sign in with your app.henneth.ai account; the token only reads brands you are a member of."}}],"capabilities":{"tools":{"listChanged":false}},"tools":[{"name":"list_brands","title":"List accessible brands","description":"Lists the brands in Henneth that the signed-in user is a member of, with their role on each.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"list_scope","title":"List topics, personas and platforms","description":"Lists the topics, tags, personas and monitored AI engines set up for a brand.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_quota","title":"Get quota","description":"Shows a brand's monthly playbook run usage, what is left, the limit and the current period.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_brand_context","title":"Get brand context","description":"Reads the company, audience, offerings, competitor, voice and strategy notes the brand's team has written down, or says plainly that the feature is not enabled.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_visibility_summary","title":"Get brand visibility summary","description":"Returns how often a brand appears in answers from each AI engine over a date range, with its change, rank and the top brands alongside it.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_visibility","title":"Get visibility","description":"Returns a brand's headline visibility score for a date range, its change against the previous range and the daily trend, optionally for one topic, tag, persona or engine.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_overview","title":"Get overview","description":"Returns the headline visibility score, its change and the daily trend for a date range.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_platforms","title":"Get platforms","description":"Compares and ranks all monitored AI engines by visibility and number of analyzed answers.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_competitor_comparison","title":"Get competitor comparison","description":"Ranks a brand against its tracked competitors by visibility over one date range, with each one's change against the range before.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"compare_competitors","title":"Compare brand with competitors","description":"Compares a brand with its competitors in AI answers, overall or for one tracked topic.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_topic_comparison","title":"Get topic comparison","description":"Compares a brand with its tracked competitors topic by topic, with one visibility figure per brand per topic.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_persona_comparison","title":"Get persona comparison","description":"Compares the personas set up for a brand by their headline visibility over a date range.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_absence_competitors","title":"Get absence competitors","description":"Names the tracked competitors that appear in the answers where the brand was not mentioned at all, and how many such answers each one fills.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_branded","title":"Get branded answers","description":"Lists the prompts that name brands, such as a brand against a rival, with how often the answers name the brand, its sentiment and which competitors appear.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"list_tracked_prompts","title":"List tracked prompts","description":"Lists the prompts Henneth tracks for a brand, with the share of answers that mention the brand.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"list_prompts","title":"List prompts","description":"Lists every tracked prompt with its topic, tags, whether it is active or paused, when it was added and whether results exist yet.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_prompts","title":"Get prompts","description":"Shows how tracked prompts perform, with topic, visibility over the date range and average mention position, for prompts that already have results.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_prompt_detail","title":"Get prompt detail","description":"Reads one tracked prompt in depth, with the domains and pages its answers cite, how many answers name the brand and the newest answers.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_prompt_answers","title":"Get latest answers for a prompt","description":"Returns the latest answer from each AI engine to one tracked prompt, with whether the brand and its competitors were mentioned and the sources cited.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_answer","title":"Get answer","description":"Reads one stored AI answer in full, with the engine, date, whether it names the brand, its sentiment, the competitors it names and the sources it cites.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_query_fanouts","title":"Get query fan-outs","description":"Lists the web searches AI engines ran while answering the tracked prompts, how often each ran and on which engines.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_sentiment","title":"Get sentiment","description":"Returns the positive, neutral and negative shares of the answers and the daily trend of the positive share.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_sentiment_answers","title":"Get sentiment answers","description":"Lists the stored answers behind one sentiment group, most extreme first, each with its engine, prompt, date and an excerpt.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_citations","title":"Get citations","description":"Lists the websites AI answers cite, with each one's share of citations, its change and its category, such as owned, competitor or earned media.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_citation_domain","title":"Get citation domain","description":"Reads one cited domain in depth, with its share of citations, the pages that get cited and which engines cite it.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_citation_losses","title":"Get citation losses","description":"Names the individual websites that decide the category, how often each is cited and whether it mentions the brand.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_topic_citation_gaps","title":"Get topic citation gaps","description":"Names, for each topic the brand is losing, the websites cited in the answers it lost.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_answer_ads","title":"Get answer ads","description":"Names the brands whose ads were served in AI answers to the brand's prompts, as a share of answers on each platform, against the same number of days before.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_ads_connection","title":"Get ads connection","description":"Checks whether the brand's OpenAI Ads account is connected to Henneth and shows its name, currency and review status.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}},{"name":"get_ads_campaigns","title":"Get ads campaigns","description":"Lists the brand's ChatGPT ads campaigns for a period, with status, budget, impressions, clicks, click-through rate, cost per click and spend.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_ads_performance","title":"Get ads performance","description":"Shows how the brand's ChatGPT ads performed over a period, with the daily series, the worst campaign and the sessions its own analytics recorded from the same ads.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_ads_history","title":"Get ads history","description":"Lists the changes made to the brand's ChatGPT ads in the last days, newest first, with who made each one and the outcome.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_ads_gaps","title":"Get ads gaps","description":"Lists the tracked questions whose answers named a competitor and never the brand, most lost first, which are the gaps an ads campaign can answer.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_ads_landing_pages","title":"Get ads landing pages","description":"Lists pages of the brand's own site, read from its sitemap, that an ads campaign on a topic could send people to.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}},{"name":"get_ga4_paid","title":"Get GA4 paid traffic","description":"Shows the sessions, engaged sessions and key events the brand's own Google Analytics recorded from its ChatGPT ads, split by ad.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_audit","title":"Get audit","description":"Returns the latest site readiness audit, with the score, the six dimension scores, findings by severity and the priorities, against the run before.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_audit_history","title":"Get audit history","description":"Lists the completed readiness audits, newest first, with each score, its change and its open and critical findings.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_audit_finding","title":"Get audit finding","description":"Reads one finding of the latest readiness audit, with why it matters, the projected score lift, the effort and when it counts as done.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_agent_analytics_overview","title":"Get agent traffic overview","description":"Shows which AI agents read the brand's own website, with visits, unique bots, pages crawled, the top pages and crawl health.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_agent_analytics_pages","title":"Get agent traffic by page","description":"Ranks the pages of the brand's own website that AI agents read, by visits, with which platforms read each one.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_agent_analytics_bots","title":"Get agent traffic by bot","description":"Lists every bot that visited the brand's own website, with its platform, what its traffic is for, its visits and the pages it read most.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"list_playbook_alerts","title":"List alerts and playbook findings","description":"Lists recent alerts for a brand and the latest Stock Guard findings for products that AI answers recommend.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_catalog_issues","title":"Get product catalog issues","description":"Lists sync failures, stale syncs and product data gaps found in a brand's connected product catalogs.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_actions","title":"Get actions","description":"Lists the recommended and tracked actions for a brand, including quick wins and their stored impact scores.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"derive_difference","title":"Subtract two stored figures","description":"Subtracts one stored figure from another and returns a signed difference that can be cited.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"derive_gap","title":"Measure a gap between stored figures","description":"Returns how far apart two stored figures are, with the direction from the brand's point of view.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"rank_results","title":"Rank rows from a stored result","description":"Orders the rows of a stored result by a chosen field and returns the top rows.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"ask_ai_engine","title":"Ask an AI engine live","description":"Sends a question to the chosen AI engine live, returns that engine's answer and the sources it cited, spends paid credits and is limited to 20 calls per workspace per day.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}},{"name":"create_playbook_task","title":"Create a task in Henneth","description":"Creates one task in the brand's Action Center only after the user chooses a priority and explicitly confirms; a first call returns a proposal and writes nothing.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}}],"documentation":"https://henneth.ai/docs/connectors"}