Notra MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Notra MCP or direct API to create content, manage AI agents, run feedback workflows, and organize generative engine optimization data through natural language.

Notra logoNotra
Api Key

Notra is a platform for creating content, AI agents, feedback workflows, and GEO data. It brings these workflows together so teams can manage and improve AI-driven content operations.

110 Tools

Try Notra now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
Notra
Try asking
TOOLS

Supported Tools

Every Notra action and event your agent gets out of the box.

Approve GEO Content Brief

Irreversibly approve a draft or failed brief and queue the paid Notra writer.

Cancel Post Schedule

Destructively cancel every post destination that has not started and clear failed destinations.

Create Agent Session

Starts a durable paid AI agent session with an initial user message and returns its session ID.

Create Chat

Create a paid Notra chat, persist the first message, and wait for the full assistant stream.

Create Event Trigger

Creates a persistent GitHub event automation that generates the selected content type for matching releases or pushes and can publish the result automatically.

Create GEO Project

Create a persistent GEO project linked to a brand identity.

Create GEO Prompt

Persist a custom prompt for future GEO scans.

Create GEO Scan

Irreversibly queue a paid GEO scan that records checks against configured answer engines.

Create GEO Sequence

Persist a one-to-five-turn GEO prompt sequence for tracked runs.

Create GitHub Integration

Connect a GitHub repository to Notra, enabling changelog generation and creating a webhook secret.

Create Post

Create a draft or published Notra post directly from supplied content without invoking AI generation.

Create Schedule

Creates a recurring schedule that generates one content type from the selected GitHub integrations.

Create Skill

Creates a custom skill.

Create Webhook

Create a paid outbound webhook subscription that causes persistent external deliveries.

Delete Brand Identity

Permanently delete a non-default brand identity and disable every schedule or event trigger that references it.

Delete Event Trigger

Delete an event trigger.

Delete GEO Competitor

Permanently stop tracking a competitor and return the remaining competitor list.

Delete GEO Project

Permanently delete a GEO project and cascade-delete its settings, prompts, sequences, competitors, scans, checks, and reports, while cancelling pending scans.

Delete GEO Prompt

Permanently stop tracking a GEO prompt.

Delete GEO Sequence

Permanently delete a tracked GEO prompt sequence so it can no longer be run.

Delete Integration

Permanently delete a Notra GitHub or Linear integration and disable every schedule or event trigger that targets it.

Delete Post

Permanently delete one Notra post by ID.

Delete Schedule

Deletes the schedule and stops future runs.

Delete Skill

Deletes a custom skill.

Delete Webhook

Permanently remove a Notra webhook subscription and cancel all deliveries that have not yet been sent.

Generate Brand Identity

Create a brand identity immediately and queue a paid, irreversible website-analysis job that fills its company, tone, and audience fields.

Generate Post

Queue a paid, irreversible AI post-generation job.

Get Brand Identity

Get one Notra brand identity by ID.

Get Brand Identity Generation

Get a brand identity analysis job.

Get Chat

Get one Notra chat and its complete message history by chat ID.

Get Chat By External Channel

Find the Notra chat linked to a Discord or Slack channel ID.

Get Event Trigger

Returns one GitHub event trigger with its event filters, monitored repositories, generated content type, and publishing settings.

Get Feedback

Returns one feedback entry with its classification, triage status, submission context, and timestamps.

Get GEO Agent Readiness

Get the latest stored agent-readiness report, any newer run state, score history, and comparison for a GEO project's website without starting a scan.

Get GEO Competitor Share

Read paid-plan competitor share-of-voice metrics without starting a scan.

Get GEO Competitor Visibility

Read one competitor's paid-plan mention history without starting a scan.

Get GEO Content Brief

Read one stored paid-plan GEO content brief without approving or starting writer work.

Get GEO Ingest Setup

Read paid-plan traffic installation snippets and endpoints.

Get GEO Language Share

Read paid-plan GEO visibility by language without starting a scan.

Get GEO Project

Get one GEO project.

Get GEO Prompt History

Read stored paid-plan checks for a tracked prompt without starting a scan.

Get GEO Prompt Result Detail

Read one stored paid-plan prompt result without starting a scan.

Get GEO Prompt Results

Read stored paid-plan prompt answers and grounding data without starting or billing a scan.

Get GEO Scan

Get one GEO scan's status, progress and mentions by engine, including safe failure metadata.

Get GEO Sentiment

Read current and previous paid-plan GEO sentiment metrics without starting billed analysis.

Get GEO Sentiment Analysis

Read cached paid-plan thematic sentiment analysis.

Get GEO Settings

Get the complete GEO configuration and current scan state for a project.

Get GEO Traffic Journey

Read the paid-plan events in one AI traffic journey without changing tracking setup.

Get GEO Traffic Log

Read a bounded set of recent paid-plan AI traffic events without changing tracking setup.

Get GEO Traffic Overview

Get AI crawler, citation, referral, and conversion traffic totals, source breakdowns, and daily points for a GEO project.

Get GEO Visibility Overview

Get mention rates, checks, citations, visibility, and average positions by answer engine for a GEO project and date window.

Get GEO Visibility Timeseries

Read paid-plan daily GEO visibility metrics.

Get Post

Get one Notra post by ID, including its rendered content, markdown source, metadata, and publication status.

Get Post Generation

Get a post generation job and event log.

Get Post Schedule

Get a post's current publishing schedule and the state of every destination, or null when no schedule exists.

Get Public API Status

Check whether Notra's public API is reachable and discover its authentication metadata without a connected credential.

Get Skill

Returns a skill by name, including its full instructions and whether it is built into Notra.

Get Webhook Delivery

Get one Notra webhook delivery, including its serialized payload and complete attempt history.

Get Workspace Context

Return the workspace and authentication context bound to the connected Notra credential, optionally including pending workspace invitations.

Import GEO Competitors

Bulk create or update a project's persistent competitor list from up to 2,000 rows or CSV.

Import GEO Prompts

Bulk-persist up to 500 tracked prompts from rows or CSV.

Issue Geo Ingest Token

Returns the current tracking token together with the install snippets.

List Agent Sessions

Returns recent agent sessions and their linked chat IDs, origin surfaces, statuses, and timestamps.

List Brand Identities

List the workspace's brand identities, with the default first, for selecting brand context in content and GEO workflows.

List Chats

List the workspace's Notra chat sessions without loading message histories.

List Event Triggers

Returns the organization's GitHub event triggers, optionally filtered to triggers monitoring any of the supplied repository IDs.

List Feedback

List workspace feedback with optional triage-status, kind, and project filters.

List GEO Changes

Compare the two latest stored paid-plan GEO scans without starting a new scan.

List GEO Competitors

List competitors tracked for a GEO project.

List GEO Content Briefs

List stored paid-plan GEO briefs.

List GEO Content Gaps

Read paid-plan content opportunities and linked briefs.

List GEO Projects

List the connected workspace's paid GEO projects and their brand associations.

List GEO Prompt Result Summaries

Return one bounded page of stored paid-plan prompt result summaries; no scan is started.

List GEO Prompts

List custom and automatically derived prompts tracked for a GEO project.

List GEO Scans

List paginated GEO scans with planned, completed, mentioned, and failed check totals by engine plus safe failure metadata.

List GEO Sentiment Evidence

Return one bounded page of stored paid-plan sentiment evidence without starting analysis.

List GEO Sequences

List tracked multi-turn GEO prompt sequences.

List GEO Shelf Sources

Return one bounded page of paid-plan cited and tracked GEO sources without starting a scan.

List GEO Traffic Journeys

List a bounded set of paid-plan AI traffic journeys without changing tracking setup.

List GEO Traffic Pages

List a bounded paid-plan ranking of pages visited by AI traffic without changing tracking setup.

List Integrations

List enabled GitHub and Linear integrations and their IDs for use as Notra content-generation sources.

List Post Authors

List Notra post authors and their IDs for assigning authors to blog posts and changelogs.

List Posts

List the connected workspace's posts, with filters for publication status, content type, and brand identity.

List Schedules

Returns the organization's cron schedules, newest first.

List Skills

Returns the organization's skills sorted by name, including built-in system skills (isSystem: true).

List Webhook Deliveries

List Notra webhook delivery history at a specific offset, optionally filtered by delivery status.

List Webhooks

List Notra outbound webhook subscriptions without exposing their signing secrets.

Plan GEO Content Brief

Plan and save a GEO content brief.

Post Chat Message

Persist a message or tool-approval decisions in an existing paid Notra chat and wait for the full assistant stream.

Retry Webhook Delivery

Queue a paid redelivery of a failed webhook while retaining its prior attempt history.

Rotate Geo Ingest Token

Invalidates every tracking token previously issued for this organization and returns a fresh one.

Run GEO Sequence

Irreversibly execute every turn of a tracked sequence against every available answer engine and record checks, consuming paid Notra model capacity.

Schedule Post

Schedule a paid future publication that marks the saved post published in Notra and can create and merge a GitHub pull request or post to X or LinkedIn.

Send Agent Session Message

Sends the next turn of an agent session.

Start GEO Agent Readiness Scan

Queue a paid readiness scan of the project's linked website.

Stream Agent Session Events

Fetch and parse the durable NDJSON event response for an agent session after Notra closes the response, including input.

Submit Feedback

Record feedback for the organization that owns the credential.

Submit Organization Feedback

Record feedback from an AI agent or integration by posting to the organization's feedback URL, as shown on the Feedback page in the dashboard.

Suggest GEO Competitors

Use Notra's paid discovery operation to suggest competitors for a domain.

Update Brand Identity

Update selected fields of a Notra brand identity.

Update Event Trigger

Replaces an existing GitHub event trigger's filters, monitored repositories, generated content type, and publishing settings.

Update Feedback

Changes a feedback entry's triage status and returns the updated entry.

Update GEO Project

Rename a GEO project or relink its brand identity.

Update GEO Prompt

Enable or disable a tracked prompt, or replace labels on a custom prompt.

Update GEO Sequence

Change a tracked sequence's name, turns, or enabled state.

Replace GEO Settings

Replace the project's GEO settings and re-arm its recurring scan.

Update Post

Update selected fields of an existing Notra post.

Update Schedule

Replaces the schedule.

Update Skill

Updates the name, description, or content of a skill.

Upsert GEO Competitor

Create, update, or rename a persistent tracked competitor, matching names case-insensitively, and return the full list.

SETUP GUIDE

Connect Notra MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["notra"],
  mcp: true,
});
Create a session scoped to Notra and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "Create a content item in Notra about how AI agents can improve customer feedback workflows",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a Notra request
SETUP GUIDE

Connect Notra API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["notra"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to Notra
3

Run Notra tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "Create a content item in Notra about how AI agents can improve customer feedback workflows" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the Notra tool calls through the session, and print the final answer

Why Use Composio?

AI Native Notra Integration

  • Supports both Notra MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable content and workflow actions
  • Rich coverage for creating, managing, and querying your Notra data

Managed Auth

  • Securely connect Notra with API key authentication
  • Central place to manage, scope, and revoke Notra access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Notra
  • Scoped, least privilege access to Notra resources
  • Full audit trail of agent actions to support review and compliance

Rolling this out across your team?

Give your team centralized access control across every framework with Composio’s MCP Gateway.

EXPLORE MCP GATEWAY
FAQ

Frequently asked questions

Yes, Notra requires you to configure your own API key credentials. Once set up, Composio handles secure credential storage and API request handling for you.

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Yes. Composio is SOC 2 Type II compliant and is built to keep your Notra connection and credentials secure. OAuth tokens and API keys are encrypted, and sensitive customer data is protected at rest and in transit.

Composio also undergoes independent security testing and continuously monitors its systems for security threats. You can review the latest reports and policies in the Composio Trust Center.

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

Create the key in your Notra account settings, then paste it once on Composio's connection page. Composio stores it encrypted and uses it only for the Notra actions your agent runs. Nobody else in your workspace can read it, and you can revoke it inside Notra at any time.

When you connect a Notra account through Composio, every action runs under that account, so anything the agent creates, sends, or changes shows up in Notra as done by you. Keep an approval step in your prompt for actions with side effects, such as sending or deleting, and have the agent draft first.

Whatever the credentials you connect allow inside Notra. If Notra lets you scope a key to specific permissions, create a scoped one so the agent can only do what you intend. You can revoke the key inside Notra at any time.

Yes. Composio supports multiple connected accounts for the same app, and that works in Claude, ChatGPT, or any other assistant you connect through Composio. Give each Notra connection a name such as work or personal, and the assistant uses the one you mention in the request. Each account keeps its own credentials and nothing is merged.

The connection stops working the moment Notra rejects the old key. Create a new key in Notra and reconnect the account from the Composio dashboard or by asking your agent to reconnect Notra. Nothing else changes.

Composio's free Hobby plan includes 100,000 tool calls per month with no credit card, which covers most personal Notra use. Paid plans add higher limits and team features. Your Notra plan and its API limits still apply as usual.

Built-in connectors usually give one AI access to a limited set of apps. Many people use Composio because it lets their AI connect to more apps than it normally supports, or connect to multiple accounts for the same app (e.g. connect Claude to multiple Notra accounts).

With Composio, you connect Notra once and then use it across different AI assistants without setting it up separately in each one. Connect your apps to Composio once, then connect Composio to whichever AI you use, whether that's Claude, ChatGPT, Hermes, or your own custom assistant.

Start with Notra.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Notra tool your agent needs.Free to start.

Start building