@contextstore/sdk
v0.1.0
Published
TypeScript client SDK for the ContextStore company brain — compiled memory + agent team, accessed via a typed MCP JSON-RPC client.
Maintainers
Readme
ContextStore TypeScript SDK
Talk to your ContextStore company brain — compiled memory + agent team — from
TypeScript or JavaScript. The SDK is a typed client over the backend's MCP
JSON-RPC layer, with zero runtime dependencies (uses the native fetch).
Install
npm install @contextstore/sdkRequires Node 18+ (global fetch).
Quickstart
import { ContextStore } from "@contextstore/sdk";
const contextstore = new ContextStore({ apiKey: process.env.CONTEXTSTORE_KEY });
// Remember something
await contextstore.memory.add({
content: "Board approved usage-based pricing on Sep 12",
metadata: { project: "pricing", owner: "maya" },
});
// Ask the company brain — with sources
const res = await contextstore.memory.query("What did we decide about pricing?");
console.log(res.answer, res.sources);Local / self-hosted
Point at your own backend (default is the hosted one):
const contextstore = new ContextStore({
apiKey: process.env.CONTEXTSTORE_KEY,
baseUrl: "https://contextstore.onrender.com",
});For local development you can pass a JWT instead of an apiKey:
const contextstore = new ContextStore({ token: "<jwt>" });Namespaces
| API | Backend MCP tool | Scope |
|---|---|---|
| memory.add(...) | memory_store | memory:rw |
| memory.query(...) | memory_recall | memory:rw |
| memory.logTurn(...) | log_conversation_turn | memory:rw |
| context.snapshot() | get_context_snapshot | context:read |
| context.checkin(...) | smart_checkin | context:read |
| company.learn(...) | company_learn | company:write |
| company.map() | company_map (read) | company:read |
| company.setMap(...) | company_map (write) | company:write |
| company.review(...) | company_review | company:read |
| company.approve(...) / reject(...) | review_propagation | company:write |
| company.pending(...) | list_propagation_queue | company:read |
| permissions.grant/revoke/list(...) | permission admin tools | admin |
| permissions.checkAuthority(...) | check_action_authority | admin |
A key with admin scope satisfies every tool. Requests authenticated with a user
JWT (instead of an API key) are not scope-limited.
Errors
AuthenticationError— bad/expired/scoped-out API keyApiError— the MCP tool returned an errorContextStoreError— network / transport issues
Build
npm install
npm run build # tsc → dist/
npm run smoke # node smoke_test.mjs (needs CONTEXTSTORE_KEY / CONTEXTSTORE_TOKEN)