AgentGraph
Give the AI agent you already use a searchable world.
AgentGraph is a local-first, self-hosted CLI and MCP server that turns the sources you choose into a searchable graph for the AI agent you already use. Connect Gmail, Google Drive, Slack, Discord, RSS, and web pages; AgentGraph translates them into local entities, people, relationships, and searchable content.
AgentGraph stores context; your agent reasons over it. It is not an agent, chatbot, hosted graph service, or replacement for the tools you already use.
See the demo · Quickstart · Documentation · Chrome extension
Why AgentGraph
Coding agents work well because their source of truth is already on disk. They can search files, follow references, inspect history, and build a model of the system without the user pasting every relevant detail.
The rest of a person's digital context is fragmented across messages, documents, feeds, and web pages. AgentGraph makes the parts you choose locally searchable and navigable through MCP, so a coding agent can investigate that context instead of starting every conversation blind.
How context enters the graph
AgentGraph builds context in three ways:
- Observe: the Chrome extension recognizes a supported URL, waits until you have kept it focused for the observation threshold, and reports the resource to your local AgentGraph server. The owning connector fetches it through the source API.
- Fetch: your agent or the CLI can request a specific resource. The connector adds or refreshes its entities, people, and edges before returning.
- Refresh: connector polling and ingest keep configured or already-known resources current in the background.
Observation is also an attention signal. Browser observation updates observed_at; direct fetch, polling, ingest, and source changes do not. Observable entities expire after 90 days by default unless they are observed again or bookmarked. See How AgentGraph works and Entity retention.
The extension sends recognized URLs, plus the Gmail thread identifier where required, to the local server. It does not upload arbitrary page content to an AgentGraph-operated service.
Trace a decision across sources
The launch demo asks an existing coding agent:
Before I reply to Maya, reconstruct the Atlas synchronization decision. What did she require, what did engineering agree, does the Drive plan match, and which research supports the decision? Flag contradictions and link every source.
The agent uses the Graph skill and AgentGraph CLI to search a fictional Gmail thread, traverse a Slack discussion and its authors, check a stale Drive plan, and compare two research documents. Everything is included in one deterministic fixture; no provider credentials, browser observation, or MCP setup are required. Run the demo.
What each connector makes perceptible
| Connector | What it contributes | Context paths |
|---|---|---|
| Gmail | Email threads, participants, subjects, bodies, and attachment references | Observe, fetch, poll, ingest |
| Google Drive, Docs, Sheets | Folders, files, content, ownership, authorship, and containment | Observe, fetch, poll |
| Slack | Channels and DMs, messages, replies, authors, mentions, and attachments | Observe, fetch, poll |
| Discord | Channels, DMs, threads, messages, authors, mentions, and attachments | Observe, fetch, poll |
| RSS | Feeds, posts, dates, authors, and publication relationships | Observe, fetch, poll, ingest |
| Web | Configured pages and bookmarks with titles, text, metadata, and URLs | Observe, fetch |
These connectors are proof of the pattern, not the boundary of the product. A connector can translate an API, export, webhook, local database, browser surface, or structured file into AgentGraph's shared model.
Bring any service into your agent's world. Teams can keep private connectors for internal systems, individuals can connect niche tools, and open-source contributors can publish integrations for the wider community. See Connectors and Extending AgentGraph.
Quickstart
AgentGraph requires Python 3.12+, uv, and Chrome for browser observation.
git clone https://github.com/simonexmachina/agent-graph
cd agent-graph
uv sync --extra all
source .venv/bin/activate
agentgraph onboard
agentgraph serve
Install the AgentGraph Chrome extension, browse a supported resource, then verify that context landed:
agentgraph connectors
agentgraph search "project kickoff notes"
agentgraph traverse <entity-id> --depth 2
Connect the agent you already use:
agentgraph mcp-config
Use the printed stdio configuration with Claude Desktop, Claude Code, Codex, or another compatible MCP client. ChatGPT developer mode uses the streamable HTTP /mcp endpoint through HTTPS. The Quickstart covers the complete path and expected result.
What AgentGraph is and is not
| AgentGraph is | AgentGraph is not |
|---|---|
| Local-first infrastructure | An AI agent or autonomous assistant |
| A CLI and MCP server | A replacement for your agent |
| A searchable graph of selected context | A chatbot or LLM |
| An open connector architecture | A hosted integration SaaS |
| Semantic search plus typed entities and edges | Only a vector database |
| Self-hosted and open source | A project-operated store for your graph data |
Local data and privacy
Indexed content is stored in SQLite on your machine. Provider credentials stay in the AgentGraph config directory, and source API calls run directly from your machine under your credentials. AgentGraph does not operate a hosted graph service or send indexed content to a project-controlled backend.
An MCP client you connect can receive content from the local graph, subject to that client's data practices. Read the complete Privacy Policy, Terms of Service, and retention model.
Interfaces
| Surface | Use it for | Entry point |
|---|---|---|
| MCP | Let an existing agent search, traverse, fetch, and manage context | agentgraph mcp-config, agentgraph mcp-serve |
| CLI | Search, fetch, ingest, debug, and operate the graph | agentgraph search, agentgraph fetch, agentgraph serve |
| Browser extension | Turn focused browsing on supported URLs into observations | Chrome Web Store |
| Viewer | Inspect entities, people, relationships, and observation state | http://127.0.0.1:8765/viewer |
Documentation
Contributing
See AGENTS.md for repository-specific development rules. Before opening a change, run:
uv run pytest tests/ -m "not integration" -q
uv run pyright
uv run ruff check agentgraph/ packages/ scripts/ tests/
License
See LICENSE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentgraph_server-0.5.2.tar.gz.
File metadata
- Download URL: agentgraph_server-0.5.2.tar.gz
- Upload date:
- Size: 181.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
951fec26f6ca278a7f665b3b0732cc9d1a57b13a1916c4ab68210e7672b512eb
|
|
| MD5 |
9ee9adebe97264a9caa78bfa68d24d25
|
|
| BLAKE2b-256 |
fddabe23c5725e88e323d776afb25818301030b63b0cae8739fa52162ae78bad
|
Provenance
The following attestation bundles were made for agentgraph_server-0.5.2.tar.gz:
Publisher:
pypi-release.yml on simonexmachina/agent-graph
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agentgraph_server-0.5.2.tar.gz -
Subject digest:
951fec26f6ca278a7f665b3b0732cc9d1a57b13a1916c4ab68210e7672b512eb - Sigstore transparency entry: 2484331910
- Sigstore integration time:
-
Permalink:
simonexmachina/agent-graph@b3ded03cf1a05d60575bc925c18bd4e3a46f9d4d -
Branch / Tag:
refs/tags/v0.5.2 - Owner: https://github.com/simonexmachina
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-release.yml@b3ded03cf1a05d60575bc925c18bd4e3a46f9d4d -
Trigger Event:
push
-
Statement type:
File details
Details for the file agentgraph_server-0.5.2-py3-none-any.whl.
File metadata
- Download URL: agentgraph_server-0.5.2-py3-none-any.whl
- Upload date:
- Size: 119.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e29e478efe4eac4a7982f8a1fb4adb35ffd535e48505ede3abd0d77f7f4c14b
|
|
| MD5 |
1d6dbc989a56095d5ad6c1509296166c
|
|
| BLAKE2b-256 |
1f2aa8facbe1cf468aa9a4713c202440795209e4fa6491ac01db61f5e6883296
|
Provenance
The following attestation bundles were made for agentgraph_server-0.5.2-py3-none-any.whl:
Publisher:
pypi-release.yml on simonexmachina/agent-graph
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agentgraph_server-0.5.2-py3-none-any.whl -
Subject digest:
7e29e478efe4eac4a7982f8a1fb4adb35ffd535e48505ede3abd0d77f7f4c14b - Sigstore transparency entry: 2484331912
- Sigstore integration time:
-
Permalink:
simonexmachina/agent-graph@b3ded03cf1a05d60575bc925c18bd4e3a46f9d4d -
Branch / Tag:
refs/tags/v0.5.2 - Owner: https://github.com/simonexmachina
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-release.yml@b3ded03cf1a05d60575bc925c18bd4e3a46f9d4d -
Trigger Event:
push
-
Statement type: