diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index 0d464e0..64d03bc 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -15,7 +15,7 @@ interface Props { const { title, - description = "Barbacane - The spec-driven API gateway built in Rust. Your OpenAPI and AsyncAPI specs become your gateway configuration.", + description = "Barbacane is the open-source AI gateway that turns any OpenAPI spec into an MCP tool server, with built-in prompt guarding, token limits, cost tracking, and response guarding. Rust-native and spec-first.", type = 'website', article, ogImage: customOgImage, diff --git a/src/pages/index.astro b/src/pages/index.astro index b56581a..8375ebd 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -2,7 +2,7 @@ import Layout from '../layouts/Layout.astro'; --- - +
@@ -10,22 +10,24 @@ import Layout from '../layouts/Layout.astro';
- Open Source · AGPLv3 + Open source · MCP native · AGPLv3

- Your spec is your - gateway + Turn any OpenAPI spec into an + MCP tool server

- Stop maintaining two sources of truth. Barbacane uses your OpenAPI and AsyncAPI - specifications as the single source of truth for routing, validation, authentication, authorization, and event bridging. + Barbacane is the open-source AI gateway for Model Context Protocol. + Expose your existing APIs to AI agents as typed, governed, auditable tools. + Prompt guarding, token limits, cost tracking, and response guarding are built in. + One Rust-native artifact, spec-first.

+ +
+
+
+
+

+ Your OpenAPI becomes an MCP server +

+

+ Enable MCP once at the spec root and your existing API is agent-callable. + Authentication, rate limits, validation, and audit logging all apply to tool + calls, because they are just HTTP requests in disguise. +

+
+ +
+
+
# Enable MCP for the whole API
+x-barbacane-mcp:
+  enabled: true
+  server_name: Orders API
+  server_version: 1.0.0
+
+paths:
+  /orders/{id}:
+    get:
+      operationId: getOrder
+      summary: Fetch an order by id
+      security:
+        - bearerAuth: []
+      parameters:
+        - name: id
+          in: path
+          required: true
+          schema: { type: string }
+      responses:
+        '200':
+          description: Order
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/Order'
+
+  /admin/orders/purge:
+    delete:
+      operationId: purgeOrders
+      summary: Purge archived orders
+      # Hide this one from agents
+      x-barbacane-mcp:
+        enabled: false
+
+ +
+
+

Agents discover your tools

+

+ Barbacane exposes a JSON-RPC 2.0 MCP endpoint at + /__barbacane/mcp. Each operation becomes a + typed tool, with the name taken from operationId, + the description from summary, and input and + output schemas merged from your parameters, body, and responses. +

+
+
+

Calls run through your middleware

+

+ Tool calls are HTTP requests. They pass through authentication, authorization, + rate limits, validation, transformations, and observability like any other + request. No shadow stack, no drift. +

+
+
+

Opt out what agents should not see

+

+ By default every operation is a tool. Add + x-barbacane-mcp: { enabled: false } + to any operation you want to hide, such as admin endpoints or destructive + actions. +

+
+
+
+
+
+
+ + +
+
+
+
+

+ AI governance, built in +

+

+ Four middlewares compose like any other Barbacane plugin. Named profiles, + CEL expressions, fail-closed on misconfiguration. +

+
+ +
+
+
+ + + +
+

Prompt guard

+

+ PII redaction, regex allow and deny lists, shape constraints on inbound prompts. + Shift-left validation at lint time. +

+
+ +
+
+ + + +
+

Token limits

+

+ Token-based sliding windows per consumer, per operation, per tenant. + Stop runaway agents before they cost you money. +

+
+ +
+
+ + + +
+

Cost tracking

+

+ Per-operation spend observability as Prometheus metrics. Budget alerts and + cost attribution across tenants and agents. +

+
+ +
+
+ + + +
+

Response guard

+

+ Output scrubbing, schema re-validation, and policy checks before responses + reach the agent. Fail closed on misconfiguration. +

+
+
+
+
+
+
@@ -134,14 +293,28 @@ import Layout from '../layouts/Layout.astro';

- Everything you need in an API gateway + One gateway for your APIs and your agents

- Built in Rust for speed and safety. Extended with WebAssembly for flexibility. + AI-native features on top of a production-grade, spec-first gateway. + Rust for speed and safety, WebAssembly plugins for extensibility.

+
+
+ + + +
+

MCP server for AI agents

+

+ Expose your API operations as AI-callable tools via the Model Context Protocol. + AI agents discover and call endpoints through JSON-RPC 2.0, one extension to enable. +

+
+
@@ -324,19 +497,6 @@ import Layout from '../layouts/Layout.astro';

-
-
- - - -
-

MCP Server for AI Agents

-

- Expose your API operations as AI-callable tools via the Model Context Protocol. - AI agents discover and call endpoints through JSON-RPC 2.0 — one extension to enable. -

-
-