CompanyGraph MCP Server
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CompanyGraph MCP ServerWhat evidence exists for the Rust skill?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
CompanyGraph — MCP Server
A read-only MCP server for any CompanyGraph instance. An agent connects to it and asks about the company the way a person would read the model: which types it declares, what one entity says, what evidence a profile gives for a skill. Every answer is what the model says at one commit, verbatim, and the server adds nothing of its own.
It serves a snapshot parsed at build time with the meta-model's own parser, so a new type in
core appears here with no change to this package, and it knows no instance-specific type, name
or fact. The reference instance runs it at mcp.blust.ch; the deployment is
robertblust/mcp-blust-ch.
Tools
Tool | Returns |
| every type the instance's schemas declare, with its tagline |
| the schema's frontmatter, sections, purpose and writing rules |
| the canonical names and taglines of one type |
| one entity with every reference it makes and receives |
| each profile's claim on the skill with its level, each evidence row under it with the experience it came from, and every experience that lists it; entries are told apart by |
| matching entities across types |
| one entity by the id |
A name resolves within a type, and a name of an owned type, an experience or a phase, within its
owner, so two owners may each hold one name. A lookup that finds a name more than once, under two
types or in two owners, refuses and names every id, which fetch then takes. Every answer carries the model commit, the core version and
the parser's tag.
Related MCP server: Kivgraph
Running it
From an instance's root, over stdio:
npx --package github:companygraph/mcp-server companygraph-mcp ./model ./meta/coreA snapshot for a deployment, then the HTTP server on it:
npx --package github:companygraph/mcp-server companygraph-mcp-snapshot --github owner/name@<sha> --out snapshot.json
npx --package github:companygraph/mcp-server companygraph-mcp-http --snapshot snapshot.jsonThe HTTP server is stateless Streamable HTTP with JSON responses on POST /mcp, no-store,
and a /health. GET / is a page for whoever types the host into a browser: the model's own
taglines, the endpoint at the address the request arrived under, every tool with what it returns,
and the commit the snapshot was built from. It is rendered from the snapshot, so it says nothing
this package knows about any particular instance and cannot fall out of step with what the tools
answer. --page-css file hands the whole stylesheet to a deployment that has a design of its
own, --page-jsonld file a structured-data block for the head, --robots file the rule served
at /robots.txt, and --page-icon file its mark, an .svg, .png or .ico inlined as a data URI so the
page stays one response; unset, the page carries the plain stylesheet this package ships and no
icon at all, because a mark belongs to whoever deploys. Unset likewise, the page describes itself
to a crawler with its ordinary tags and nothing more, and /robots.txt is a 404: what a crawler
may read and what a subject claims to be are publishing decisions, and schema.org's vocabulary is
not this package's to choose on anyone's behalf. A supplied block is parsed before it is served,
so a file that is not JSON fails at startup rather than reaching a crawler. What the page guarantees in
exchange is its markup — main.shell around the whole page, .title with .r70 and .rcl,
.tagline, header > .bar > a.brand linking the identity's own
url, .note around what the model says about itself, .lede on the prose, and ul.ops of
li > .head rows carrying .m, .p and .s for the paths and again, as ul.ops.tools, for
the tools, and .mono on anything set in the monospace face — and changing one
of those names breaks whoever styled it. PORT and MCP_ALLOWED_HOSTS come from the environment.
A host in front of the service should send every path here rather than only /mcp, so that
/ and /health are reachable and an unknown path gets this server's own 404.
The page and the sheet it ships with are held to each other by test/page-contract.test.mjs —
every class the markup emits has a rule, every rule names a class the markup emits, and the
list above says both. test/page-render.test.mjs opens the page in a browser and measures it,
because a rule that is present and wrong is invisible to the other one: the sheet parses, the
class is styled, and the page still scrolls sideways. Those two are why playwright is a
development dependency, and the workflow installs chromium for them.
Tests
npm test fetches companygraph/meta-model at the tag package.json pins and
robertblust/mental-model at a named commit into test/fixtures/, and runs every tool against
the worked example and the reference instance.
License
Apache 2.0. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only AgentiScript concept search, catalog, authenticity, license, and approved asset discovery.
Query Klaaro datasets, documents, and extracted records from any agent.
Company brain for AI agents — temporal knowledge graph search, exploration, and durable memory.
Query OneLens cloud-cost data in natural language: breakdowns, trends, cost centers. Read-only.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to query a project's unified graph (code, documents, decisions) with token-budgeted, ranked context, including focus, impact, and find operations.1MIT
- AlicenseAqualityAmaintenanceEnables AI coding agents to query a semantic cross-repository code graph for symbols, references, callers, dependencies, and change impact across registered repositories.111221Apache 2.0
- FlicenseNot gradedqualityBmaintenanceEnables traceable, version-aware question answering over product documentation, combining vector and graph retrieval to return cited evidence and support agentic workflows.-
- AlicenseNot gradedqualityBmaintenanceEnables Agents to retrieve structured evidence with spans, versions, and content hashes from a self-hosted knowledge base, and optionally delegate single-shot questions. Exposes read-only search, evidence lookup, and answer tools over Streamable HTTP with Bearer authentication.MIT