跳到正文
FunCoding

搜索

搜索文档、Skill 和 MCP

cortex

Cortex - Generates interactive API documentation, typed SDKs, and MCP servers from OpenAPI, AsyncAPI, GraphQL, gRPC, OpenRPC, and Markdown.

README

Cortex

Every developer. Every agent.

Cortex turns API specifications and Markdown into typed SDKs, interactive documentation, and an MCP server from one project configuration.

OpenAPI · AsyncAPI · GraphQL · gRPC · OpenRPC · Markdown

CI npm version MIT license GitHub stars

Documentation · Live demo · Website · Changelog

Cortex - Turn API specs into docs, SDKs, and MCP servers | Product Hunt


Run cortex generate with a configured OpenAPI file, then explore Getting Started, API Reference, SDKs, and MCP in the live demo. Click to try it.

Cortex combines OpenAPI, AsyncAPI, GraphQL, Protocol Buffer, OpenRPC, and Markdown sources. Developers get interactive documentation, applications get typed SDKs, and AI agents get an MCP server with project context.

If Cortex helps your team, star this repository to support its development.

Try Cortex in 60 seconds

Start a local demo:

mkdir petstore
cd petstore
npm install --global @cortex-docs/cli
cortex init petstore
cortex docs serve

Open http://localhost:3012. Press Ctrl+C to stop the server.

We love open source

Keep your Markdown in Git. Add cortex.config.yml to the default branch of your public GitHub repository, then run:

npx -y @cortex-docs/cli deploy https://github.com/OWNER/REPO
npx -y @cortex-docs/cli mcp-serve https://github.com/OWNER/REPO

The first command publishes a free documentation site at PROJECT.cortexdocs.dev. The second connects AI clients to current documentation through local MCP.

Deploy requires repository write access. MCP works with public read access and checks for changes before each request.

See the open source hosting guide for configuration, custom domains, automatic updates, and limits.

Features

  • Generate SDKs for TypeScript, Python, Go, Java, Kotlin, Ruby, PHP, C#, Rust, C++, and C.
  • Combine multiple specification files in one generated SDK.
  • Generate HTTP, WebSocket, GraphQL, gRPC, and JSON-RPC clients.
  • Build static HTML documentation with interactive API reference pages.
  • Generate an MCP server with typed tools, embedded specifications, SDK guides, and project documentation for AI agents.
  • Add Markdown pages, SDK guides, and all API specifications to the MCP server.
  • Customize generated output with sparse Eta template overrides.
  • Publish generated packages and MCP servers to language registries and GitHub repositories.

Unlimited specs. Multiple ways to use it.

Generate interactive docs for exploration, typed SDKs for integration, and MCP servers for AI agents.

TaskSplit toolchainCortex Docs
ConfigurationConfigure SDK, documentation, and MCP generatorsDeclare all API sources in one project configuration
GenerationCoordinate separate commands and output directoriesGenerate all configured outputs with one command
CustomizationMaintain templates for each generatorOverride only the required Eta templates
PublishingMaintain a release process for each packageReview one publish plan for registries and GitHub
Developer interfaceKeep guides separate from API referencesCombine Markdown, API references, and SDK guides
Agent interfaceMaintain MCP servers and context separatelyGenerate MCP servers with specifications, SDK guides, and project documentation

Requirements

  • Node.js 20 or later
  • npm 10 or later

Some generated SDKs require the normal compiler or package manager for their target language.

Configuration

cortex init creates cortex.config.yml. Relative paths start from the directory that contains this file.

project: my-api
title: My API Docs
logo: ./assets/logo.svg
theme: system
primaryColor: '#ffffff'
custom_head_html: |-
  <meta name="theme-color" content="#ffffff">
  <link rel="stylesheet" href="/assets/custom.css">

sources:
  - title: REST API
    type: openapi-spec
    spec: ./specs/openapi.yaml
    intro: ./docs/rest.md
    languages:
      - language: typescript
        package_name: '@my-org/my-api'
      - language: python
        package_name: my-api

  - title: Realtime API
    type: asyncapi-spec
    spec: ./specs/asyncapi.yaml
    languages:
      - language: typescript
        package_name: '@my-org/my-api'

  - title: GraphQL API
    type: graphql-spec
    spec: ./specs/schema.graphql
    endpoint: https://api.example.com/graphql
    languages:
      - language: typescript
        package_name: '@my-org/my-api'

output:
  base_dir: ./generated

docs:
  - section: Get started
    sources:
      - title: Quickstart
        document: ./docs/quickstart.md

mcp:
  package_name: '@my-org/my-api-mcp'

primaryColor sets the documentation accent color as a six-digit hex value.

custom_head_html adds trusted HTML to every documentation page. This field supports metadata, stylesheets, and analytics scripts.

Store local head resources in the project assets directory. Cortex serves these files from /assets/*.

Cortex does not sanitize this value. Add only HTML that you trust.

Add ?appearance=dark or ?appearance=light to any documentation URL to select its initial appearance. The parameter takes priority over the project theme and the visitor's stored preference.

For example, /docs/quickstart?appearance=dark opens the quickstart in dark mode. The theme button can change the appearance after the page loads.

Sources that use the same language and package_name are merged into one SDK. Cortex rejects duplicate operation and type names that would make a merge ambiguous.

See the configuration reference for all fields.

Commands

CommandResult
cortex init <name>Create a project and sample files.
cortex validateValidate the config and every API source.
cortex generateGenerate configured SDKs and the MCP server.
cortex generate --language typescriptGenerate one configured language.
cortex generate --dry-runShow planned output without writing files.
cortex docs serveStart the development server and watch project files.
cortex docs build --output .cortex/docsBuild static HTML documentation.
cortex mcp generateGenerate only the MCP server.
cortex publish --dry-runCheck package publication without uploading.
cortex publishPublish enabled generated packages.

Protocol support

SourceGenerated SDKDocumentationGenerated MCP server
OpenAPIREST clientsInteractive API referenceCallable tools and embedded specs
AsyncAPIWebSocket clientsChannel and message referencePayload-preparation tools and specs
GraphQL SDLQuery, mutation, and subscription clientsOperation and type referenceCallable tools and embedded schema
Protocol BufferUnary and streaming gRPC clientsService and message referenceEmbedded .proto resources
OpenRPCJSON-RPC clientsMethod and schema referenceCallable tools and embedded specs

The generated MCP server does not call gRPC methods. It exposes Protocol Buffer files as MCP resources so an agent can inspect the service contract.

Production documentation

The build command exports the documentation as static HTML, CSS, JavaScript, and data files.

cortex docs build --output .cortex/docs

Deploy the output directory to a static web host. Configure the host to resolve page URLs such as /docs/quickstart to /docs/quickstart.html.

The deployed site needs no Node.js server or access to the original configuration and specifications. Rebuild the site after source changes. Use cortex docs serve for a local preview with file watching.

MCP output

cortex mcp generate --output .cortex/mcp-server
cd .cortex/mcp-server
npm install
npm run build
npm start

The generated package contains local copies of every configured specification. It also embeds configured Markdown and generated SDK README files as tools.

Packages

The release workflow publishes @cortex-docs/cli and @cortex-docs/mcp. The CLI tarball includes the internal runtime workspaces.

PackageDistributionPurpose
@cortex-docs/clinpmCommand-line interface and project workflow
@cortex-docs/mcpnpmMCP server for the Cortex documentation
@cortex-docs/coreIncluded in CLIConfiguration loader and specification parsers
@cortex-docs/codegenIncluded in CLISDK generation engine and language templates
@cortex-docs/mcp-genIncluded in CLIMCP server generator
@cortex-docs/docs-uiIncluded in CLIDocumentation runtime used by the CLI

Documentation

Contributing and security

Read CONTRIBUTING.md and DEVELOPMENT.md before you open a pull request.

Report vulnerabilities through the private process in SECURITY.md.

License

Cortex Docs is available under the MIT License.

If Cortex saves you time, give the repository a star. It helps more developers find the project.

同类 MCP Server

taylorwilsdon/google_workspace_mcp3.3k

google_workspace_mcp

Control Gmail, Google Calendar, Docs, Sheets, Slides, Chat, Forms, Tasks, Search & Drive with AI - Comprehensive Google Workspace MCP Server & CLI Tool

文档与办公

zcaceres/markdownify-mcp3k

markdownify-mcp

A Model Context Protocol server for converting almost anything to Markdown

文档与办公

caol64/wenyan-mcp1.3k

wenyan-mcp

文颜 MCP Server 可以让 AI 自动将 Markdown 文章排版后发布至微信公众号。

文档与办公

SylphxAI/anymd1k

anymd

Any file → clean Markdown for AI agents: PDF, Word, PowerPoint, Excel, EPUB, HTML and web pages, images (OCR), audio and video (metadata, subtitles, transcripts). A fast Rust MCP server and CLI that runs on your machine. No API key.

文档与办公

xing5/mcp-google-sheets1k

mcp-google-sheets

This MCP server integrates with your Google Drive and Google Sheets, to enable creating and modifying spreadsheets.

文档与办公

20000419/fauxnix812

fauxnix

Run Linux-style commands on Windows via deterministic bash→PowerShell translation. No VM, no WSL. MCP server + CLI built for AI agents (Claude Code, Codex, OpenCode...). GNU-style output, bash-style errors, UTF-8/GBK handled.

文档与办公