Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Hermoso MCP server and OAuth (not the REST API), or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fhermoso.ai%2Fhermoso" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fhermoso.ai%2Fhermoso" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Hermoso MCP server and OAuth (not the REST API) API.
Research ads running across the Meta, Google, and LinkedIn ad libraries and run competitor teardowns
Generate finished on-brand image and video ad creative
Publish or schedule generated ads to a brand's connected channels
Build and read paid ad campaigns for a brand workspace
GET STARTED
Check the available tools, connected channels, and per-render credit costs before generating
Patterns agents use Hermoso MCP server and OAuth (not the REST API) API for, with concrete tasks.
★ Agent-Run Ad Creative Loop
An AI agent driving brand marketing connects to the Hermoso API through Jentic and runs the full creative loop from one endpoint: it researches the ads a competitor is running, generates on-brand image and video creative, and publishes or schedules the winners to the brand's connected channels. A key is pinned to one brand workspace, so the agent only ever acts for that brand, and any call that arms real ad spend asks for an explicit confirmation first. Credits are checked up front so the agent knows each render's cost.
Research a competitor's active ads, generate three on-brand image variants, and schedule the best one to the brand's connected channel
Competitor Ad Research
A brand team studies the market by pulling the ads competitors are running across the Meta, Google, and LinkedIn ad libraries and organic social search. The Hermoso research surface returns these teardowns plus reads of brand, workspace, and credit status, so an analyst or agent can brief a campaign on real market signal. This runs read-only under the research scope without spending credits.
Pull the active ads for a competitor from the Meta and LinkedIn ad libraries and summarize the common hooks
Paid Campaign Build-Out
Once creative is approved, a team builds and reads paid campaigns on the brand's channels. The Hermoso acting surface creates campaigns and publishes creative under the generate scope, while every call that commits real ad spend requires a per-call confirmation regardless of the token. This keeps an automated workflow from arming budget silently.
Build a paid campaign for a brand, attach an approved creative, and read back the campaign status, confirming before any spend is armed
9 endpoints — the hermoso api gives an ai agent one programmatic entry point into hermoso's ai marketing studio: research the ads running in a market, generate on-brand image and video ad creative, publish or schedule it to a brand's connected channels, and build and read paid campaigns.
METHOD
PATH
DESCRIPTION
/mcp
Send a JSON-RPC request to the agent endpoint and call a tool
/mcp
Open the server-to-client event stream
/mcp
End the agent session
/oauth/token
Exchange an authorization code for an access token
/oauth/register
Register an OAuth client dynamically
/.well-known/oauth-authorization-server
Get OAuth authorization-server metadata
/mcp
Send a JSON-RPC request to the agent endpoint and call a tool
/mcp
Open the server-to-client event stream
/mcp
End the agent session
/oauth/token
Exchange an authorization code for an access token
/oauth/register
Register an OAuth client dynamically
/.well-known/oauth-authorization-server
Get OAuth authorization-server metadata
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the Hermoso API by hand means either minting an `hmk_` agent key or implementing the OAuth 2.1 authorization-code flow with PKCE and dynamic client registration, then connecting to the JSON-RPC endpoint and confirming any call that arms ad spend. Through Jentic you install once, import it from the API Directory, store the credential once, and your agent calls it.
Permission scoping
Hermoso issues tokens with two scopes, hermoso.research for the read-only research surface and hermoso.generate for generating, publishing, and campaigns. A Jentic rule can allow only the operations your agent needs, so you can give it research without granting generation, and any call that arms real ad spend still requires a per-call confirmation.
Credential isolation
Your Hermoso key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'research competitor ads' or 'generate an image ad', and Jentic returns the matching Hermoso operation with its input schema so the agent calls the right tool without reading the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Hermoso MCP server and OAuth (not the REST API) API through Jentic.
What authentication does the Hermoso API use?
The Hermoso API accepts two bearer credentials on the Authorization header, per its OpenAPI spec: an `hmk_` agent key for scripts and headless agents, or an OAuth 2.1 token from the authorization-code flow with PKCE and open dynamic client registration. OAuth tokens carry a hermoso.research or hermoso.generate scope, and a key is pinned to one brand workspace. Through Jentic the credential is stored encrypted by your own Jentic One instance and injected at call time.
Can I generate and publish ads with the Hermoso API?
Yes, under the hermoso.generate scope. You generate on-brand image and video creative, publish or schedule it to the brand's connected channels, and build and read paid campaigns. Researching competitor ads is available separately under the read-only hermoso.research scope, and any call that arms real ad spend requires a per-call confirmation.
What are the rate limits for the Hermoso API?
The OpenAPI spec does not specify rate limits; generation is instead metered in credits with published per-render prices that you can read before rendering. For current limits and the price list, see the Hermoso documentation at https://hermoso.ai/docs/api/.
How do I generate an ad through Jentic?
Search Jentic with a query like 'generate an on-brand image ad', add the Hermoso API from the directory, and store your `hmk_` key once. Your agent connects to the endpoint, checks the available tools and their credit costs, then generates and publishes the creative. To run it on your own infrastructure, install Jentic One from its GitHub repo.
Can I limit what my agent is allowed to do with the Hermoso API?
Yes. Give the agent only the hermoso.research scope so it can study competitor ads but cannot generate, publish, or spend, or write a Jentic rule that allows just the operations you want, with every call logged. Hermoso also requires a per-call confirmation before any call that arms real ad spend, so budget cannot be committed silently.
Is there a Hermoso MCP server?
Yes, Hermoso's public programmatic interface is itself a Model Context Protocol server. You can also connect it through Jentic: your agent reaches the same endpoint and tools, your `hmk_` key or OAuth token is injected at call time by your self-hosted instance instead of living in a config file, and your rules decide which operations the agent may call.
For Agents
Drive Hermoso's AI marketing studio from one endpoint: research competitor ads, generate on-brand image and video creative, and publish or schedule it to a brand's channels. Metered in credits, with per-call confirmation before any real ad spend.
Use for: Research the Meta and Google ads a competitor is running, Generate an on-brand image ad for a product, Create a short video ad from a brief, Publish a generated ad to the brand's connected channel
Not supported: Does not host a general media library API, manage account billing, or place ads outside a brand's connected channels. Use for researching, generating, publishing, and scheduling that brand's ads through Hermoso only.
The Hermoso API gives an AI agent one programmatic entry point into Hermoso's AI marketing studio: research the ads running in a market, generate on-brand image and video ad creative, publish or schedule it to a brand's connected channels, and build and read paid campaigns. The agent connects to a single JSON-RPC endpoint and calls tools after authenticating, with a key pinned to one brand workspace. Generation is metered in credits, and any call that arms real ad spend requires an explicit per-call confirmation.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>