Context7
Up-to-date docs for AI agents
作者による説明(英語の原文)
Agent reasoning, memory, and token-optimized context for AI applications.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
NOCTURNUSAI_URL, NOCTURNUSAI_API_KEY, NOCTURNUSAI_DATABASE, NOCTURNUSAI_TENANT「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"logic": {
"command": "npx",
"args": [
"-y",
"nocturnusai-mcp"
],
"env": {
"NOCTURNUSAI_URL": "your-value",
"NOCTURNUSAI_API_KEY": "your-value",
"NOCTURNUSAI_DATABASE": "your-value",
"NOCTURNUSAI_TENANT": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add logic --env NOCTURNUSAI_URL=your-value --env NOCTURNUSAI_API_KEY=your-value --env NOCTURNUSAI_DATABASE=your-value --env NOCTURNUSAI_TENANT=your-value -- npx -y nocturnusai-mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"logic": {
"command": "npx",
"args": [
"-y",
"nocturnusai-mcp"
],
"env": {
"NOCTURNUSAI_URL": "your-value",
"NOCTURNUSAI_API_KEY": "your-value",
"NOCTURNUSAI_DATABASE": "your-value",
"NOCTURNUSAI_TENANT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"logic": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"nocturnusai-mcp"
],
"env": {
"NOCTURNUSAI_URL": "your-value",
"NOCTURNUSAI_API_KEY": "your-value",
"NOCTURNUSAI_DATABASE": "your-value",
"NOCTURNUSAI_TENANT": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
NOCTURNUSAI_URL envNOCTURNUSAI_DATABASE envNOCTURNUSAI_TENANT envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名はドメイン nocturnus.ai で確認済みです(レジストリがドメインの所有を確認しています)
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:NOCTURNUSAI_API_KEY
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.3.11)がレジストリに届いたのは7 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Context7, Codebase Memory, Exa
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
The context engineering engine for AI agents: send only what changed.
# ❌ Without NocturnusAI — replay everything, every turn
messages = system_prompt + full_history + tool_outputs # ~1,259 tokens/turn response = llm(messages) # $13,600/mo at scale
ctx = nocturnus.process_turns(raw_turns) # extract → infer → delta messages = system_prompt + ctx.briefing_delta # ~221 tokens/turn response = llm(messages) # $2,400/mo. Same accuracy.
Measured on live APIs. 15-turn product support conversation. Real usage.input_tokens counts. Run it yourself.
| Naive replay | RAG-optimized | NocturnusAI | |
|---|---|---|---|
| Tokens per turn | ~1,259 | ~800 | ~221 |
| Cost per month (1K req/hr, Opus 4, $15/1M) | $13,600 | $12,000 | $2,400 |
| Latency | high | medium | low |
| Truth-preserving | no | no | yes |
Claude Opus 4: 5.7× reduction. Gemini 2.0 Flash: 10.0×. Full calculations.
pip install nocturnusai # Python
npm install nocturnusai-sdk # TypeScript docker run -p 9300:9300 ghcr.io/auctalis/nocturnusai:latest # Docker
Or use the setup wizard:
curl -fsSL https://raw.githubusercontent.com/Auctalis/nocturnusai/main/install.sh | bash
| Framework | Integration | Link |
|---|---|---|
| LangChain / LangGraph | Drop-in NocturnusContextProvider, LangSmith trace pass-through | Docs |
| CrewAI | Task-scoped context per agent role | Docs |
| AutoGen | Context server callable by any agent | Docs |
| MCP | Spec-compliant server for Claude Desktop, Cursor, Continue | Config |
| OpenAI Agents SDK | Context middleware, no tool modifications | Docs |
| Vercel AI SDK | Edge-compatible adapter for Next.js, Nuxt, SvelteKit | Docs |
| Python SDK | pip install nocturnusai | Docs |
| TypeScript SDK | npm install nocturnusai-sdk | Docs |
Three steps. Every turn.
briefingDelta containing only what changed since the last turnThis is not vector search. It is not summarization. It is deterministic inference on a logic engine — Hexastore indexing, backward chaining, and truth maintenance.
LLM required for natural-language turns. The examples below send raw text turns through an LLM to extract structured facts. If you start the server without an LLM provider, natural-language turns will return zero facts. See Quick Start for setup options, or use predicate syntax (e.g.,
"customer_tier(acme_corp, enterprise)") which works without any LLM.
POST /contextcurl -X POST http://localhost:9300/context \
-H 'Content-Type: application/json' \ -H 'X-Tenant-ID: default' \ -d '{ "turns": [ "user: Customer says they are enterprise and blocked on SLA credits.", "tool: CRM says account is Acme Corp with a 2M ARR contract.", "agent: Last week support promised to review SLA eligibility.", "tool: Billing note says renewal is due next month." ], "maxFacts": 12 }'
POST /memory/contextcurl -X POST http://localhost:9300/memory/context \
-H 'Content-Type: application/json' \ -H 'X-Tenant-ID: default' \ -d '{ "goals": [{"predicate":"eligible_for_sla","args":["acme_corp"]}], "maxFacts": 12, "sessionId": "ticket-42" }'
POST /context/diffcurl -X POST http://localhost:9300/context/diff \
-H 'Content-Type: application/json' \ -H 'X-Tenant-ID: default' \ -d '{"sessionId": "ticket-42", "maxFacts": 12}'
Returns only added and removed entries between snapshots.
POST /context/session/clearcurl -X POST http://localhost:9300/context/session/clear \
-H 'Content-Type: application/json' \ -H 'X-Tenant-ID: default' \ -d '{"sessionId":"ticket-42"}'
Python SDK
from nocturnusai import SyncNocturnusAIClient
with SyncNocturnusAIClient("http://localhost:9300") as client: ctx = client.process_turns( turns=[ "user: Customer says they are enterprise and blocked on SLA credits.", "tool: CRM says account is Acme Corp with a 2M ARR contract.", ], scope="ticket-42", session_id="ticket-42", )
diff = client.diff_context(session_id="ticket-42", max_facts=12) client.clear_context_session("ticket-42")
print(ctx.briefing_delta)
TypeScript SDK
import { NocturnusAIClient } from 'nocturnusai-sdk';
const client = new NocturnusAIClient({ baseUrl: 'http://localhost:9300', tenantId: 'default', });
const ctx = await client.processTurns({ turns: [ 'user: Customer says they are enterprise and blocked on SLA credits.', 'tool: CRM says account is Acme Corp with a 2M ARR contract.', ], scope: 'ticket-42', sessionId: 'ticket-42', });
const diff = await client.diffContext({ sessionId: 'ticket-42', maxFacts: 12 }); await client.clearContextSession('ticket-42'); console.log(ctx.briefingDelta);
MCP
{
"mcpServers": { "nocturnus": { "url": "http://localhost:9300/mcp/sse", "transport": "sse" } } }
Use the context tool each turn for a salience-ranked working set. Pair MCP with the HTTP context endpoints when you need goal-driven assembly and diffs.
When you do need backend mechanics, NocturnusAI provides them:
ttl, validFrom, and validUntilX-Database and X-Tenant-IDdocker run -d --name nocturnusai -p 9300:9300 \
--restart unless-stopped \ -v nocturnusai-data:/data \ ghcr.io/auctalis/nocturnusai:latest
curl http://localhost:9300/health # Verify it's running
docker run -d --name nocturnusai -p 9300:9300 \
--add-host=host.docker.internal:host-gateway \ -e LLM_PROVIDER=ollama \ -e LLM_MODEL=granite3.3:8b \ -e LLM_BASE_URL=http://host.docker.internal:11434/v1 \ -e EXTRACTION_ENABLED=true \ ghcr.io/auctalis/nocturnusai:latest
make up-ollama && make smoke
nocturnusai # Interactive REPL
nocturnusai -e "context 10" # Salience-ranked working set nocturnusai -e "compress" # POST /memory/compress nocturnusai -e "cleanup 0.05" # POST /memory/cleanup
Full docs: [nocturnus.ai](https://nocturnus.ai)
| Start Here | The turn-reduction workflow |
| Context Workflow | Raw turns → optimize → diff → clear |
| API Reference | REST endpoints and response shapes |
| SDKs | Python and TypeScript client methods |
| Integrations | LangChain, CrewAI, AutoGen, MCP, and more |
| Benchmark | Measured token reduction on live APIs |
| Calculations | Every number, derived |
| How It Works | The extraction → inference → delta pipeline |
git clone https://github.com/Auctalis/nocturnusai.git && cd nocturnusai
make up # Server using .env.example defaults make up-ollama # + Ollama (reuses host or starts bundled) make up-monitoring # + Prometheus + Grafana make smoke # Verify health + context endpoint
Requires JDK 17+.
./gradlew :nocturnusai-server:run # HTTP server on :9300
./gradlew :nocturnusai-cli:run # Interactive REPL (JVM) ./gradlew :nocturnusai-cli:nativeCompile # Build native binary ./gradlew test # Full test suite
See CONTRIBUTING.md. Issues labelled good first issue are good entry points.
Report vulnerabilities privately via GitHub Security Advisories. See SECURITY.md.
Business Source License 1.1 (SPDX: BUSL-1.1). Free for internal use — including internal production — inside your own organization. Offering NocturnusAI or substantial functionality as a product/hosted service to third parties requires a commercial license (licensing@nocturnus.ai). Converts to Apache 2.0 on 2030-02-19. See LICENSE and DISCLAIMER.md.
冒頭だけを表示しています。続きはリポジトリで読めます