Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.aigmented.io/llms.txt

Use this file to discover all available pages before exploring further.

The Aigmented MCP server lets you search, navigate, and pull content from your knowledge base directly inside Claude Desktop, Cursor, LibreChat, or any MCP-compatible client. As of this release, the MCP server exposes the same data primitives that Aigmented’s internal auto-wiki uses to build content — so your external agent (Claude, Cursor, etc.) can explore the knowledge graph, pull topic-scoped card sets, and synthesize its own documents, briefs, or training materials.
The MCP package @aigmented/mcp is not yet published to npm. For now, use the source build from the repository.

Setup for Claude Desktop

Add to your claude_desktop_config.json:
{
  "mcpServers": {
    "aigmented": {
      "command": "npx",
      "args": ["@aigmented/mcp"],
      "env": {
        "AIGMENTED_API_KEY": "sk-YOUR_API_KEY",
        "AIGMENTED_COLLECTION_ID": "49"
      }
    }
  }
}

Setup for Cursor

Add to Cursor’s MCP settings:
{
  "aigmented": {
    "command": "npx",
    "args": ["@aigmented/mcp"],
    "env": {
      "AIGMENTED_API_KEY": "sk-YOUR_API_KEY",
      "AIGMENTED_COLLECTION_ID": "49"
    }
  }
}

Environment variables

VariableRequiredDefaultDescription
AIGMENTED_API_KEYYesYour API key (sk-...)
AIGMENTED_API_URLNohttps://aigmented.ioAPI base URL
AIGMENTED_COLLECTION_IDNoDefault collection ID (if omitted, specify per-tool call)

Available tools

Thirteen tools are exposed by the MCP server, split into four groups.

Discovery & Q&A

list_collections

List all available knowledge collections. No parameters.

search_knowledge

Semantic search over the knowledge base.
ParameterRequiredDescription
queryYesSearch query
collection_idNoCollection ID (uses default if omitted)
top_kNoMax results (default 5)

ask_question

Ask a question and get an AI-generated answer with citations.
ParameterRequiredDescription
questionYesYour question
collection_idNoCollection ID (uses default if omitted)

get_card_details

Fetch full contents of a card with complete source provenance. Use this when you need to cite where information came from.
ParameterRequiredDescription
card_idYesCard ID (from search or retrieval results)
Response includes:
  • card_id, title, statement, knowledge_type, importance_score
  • source_documents — array of {id, name} for every document the card was generated from
  • page_numbers — flat array of all source page numbers (across all docs; the schema doesn’t track per-doc page mapping)
  • section_context — section path inside the source document (e.g. "Chapter 3 / Vacations")
  • related_header — nearest header in the source document
  • verbatim_content — exact quote from the source, when applicable (forms, templates, legal text)
  • source_card_ids — Phase 2 intermediate cards (deeper traceability)
  • related_card_ids — up to 5 graph-derived neighbors (empty if no graph)
  • created_at, updated_at
Also kept for backwards compatibility: source_document (the first entry of source_documents plus a page_range like "12-14").

Knowledge graph navigation

These tools require that the collection has a built knowledge graph. Collections without a graph will return a 409 error with a guiding message — use retrieve_for_topic or search_knowledge instead.

describe_collection

Returns collection statistics, graph-built flag, and a preview of top clusters. Call this first to understand what’s available before running more expensive tools.
ParameterRequiredDescription
collection_idNoCollection ID (uses default if omitted)
Returns: { total_cards, has_graph, total_clusters, total_entities, top_clusters }.

list_clusters

Lists all knowledge graph clusters (topics / communities) in a collection. Each cluster contains: id, llm_name, llm_description, card_count, and up to 5 top_entities. Use this to get a structured view of “what topics exist in this collection”.

get_cluster

Full detail of a single cluster: cards (with 200-character previews), entities, and related clusters.
ParameterRequiredDescription
cluster_idYesCluster ID (from list_clusters)
collection_idNoCollection ID (uses default if omitted)

list_entities

Top entities (people, organizations, concepts) in the collection, with card counts.
ParameterRequiredDescription
top_kNoMax results (default 50, max 200)
entity_typeNoFilter by type (e.g., PERSON, ORG, CONCEPT)
collection_idNoCollection ID (uses default if omitted)

get_gaps

Knowledge gaps: isolated entities (appearing in only one card with few relations) and undersized clusters. Useful for identifying coverage problems before generating content.

Content retrieval

retrieve_for_topic

The key tool for content creation. Runs the same retrieval pipeline that Aigmented’s auto-wiki uses internally: embedding search → importance filter → deduplication → Cohere reranking. Returns the most relevant cards for a given topic, ready to feed into your agent’s synthesis step.
ParameterRequiredDescription
topicYesTopic or section title
descriptionNoLonger description of what you’re looking for (improves retrieval)
top_kNoMax cards to return (default 25, max 50)
rerankNoRun Cohere rerank (default true)
min_importanceNoFilter cards below this importance score (default 0.4)
collection_idNoCollection ID (uses default if omitted)
Returns cards as { card_id, title, statement, importance_score, knowledge_type }.

Card-level browsing

Use these when you want to enumerate, bulk-fetch, or explore semantic neighborhoods of individual cards — without going through the retrieval pipeline.

list_collection_cards

Flat paginated browse of all cards in a collection. No query needed. Useful for “show me what’s in this collection” overviews.
ParameterRequiredDescription
offsetNoPagination offset (default 0)
limitNoMax cards per page (default 20, max 100)
knowledge_typeNoFilter by type (e.g. fact, procedure, decision)
cluster_idNoFilter by graph cluster (requires built graph)
collection_idNoCollection ID (uses default if omitted)
Returns: { cards: [{card_id, title, statement, knowledge_type, importance_score}], total_count, offset, limit, has_more }. Statement truncated to 200 chars — call get_card_details for full content.

get_cards_batch

Fetch full details of multiple cards in one call (up to 25 IDs). Use after search_knowledge / retrieve_for_topic when you need full content of several cards — avoids N round-trips.
ParameterRequiredDescription
card_idsYesArray of card IDs, length 1-25
collection_idNoCollection ID (uses default if omitted)
Returns: { cards: [...], not_found: [ids] }. Find cards semantically similar to a given card. Use to build topical clusters around a single card (e.g. for quiz generation: “5 cards most related to card X”).
ParameterRequiredDescription
card_idYesSource card ID
limitNoMax related cards (default 5, max 20)
collection_idNoCollection ID (uses default if omitted)
Returns: { source_card_id, related: [{card_id, title, statement, similarity_score}] }. Does not require a graph.

Building content with MCP — a cookbook

The new tools let your agent replicate what Aigmented’s auto-wiki does internally — navigating the graph and pulling topic-scoped sources — while keeping synthesis in your agent’s hands. Some common patterns:

1. “Summarize what we know about X”

1. retrieve_for_topic(topic="X", top_k=20)
2. Agent reads the cards and writes a summary.
No graph needed. Works on any collection with search enabled.

2. “Generate a training section on onboarding”

1. describe_collection()               # confirm graph is built
2. list_clusters()                     # see all topics
3. get_cluster(cluster_id=<onboarding>)  # cards + entities in that cluster
4. retrieve_for_topic(topic="Onboarding for new hires", description="...", top_k=30)
5. Agent synthesizes using cards from steps 3 and 4 as source material.

3. “What people appear in our knowledge base?“

1. list_entities(entity_type="PERSON", top_k=100)
2. For each person of interest: retrieve_for_topic(topic=<person name>, top_k=10)
3. Agent builds a profile page per person.

4. “Where are our knowledge gaps?“

1. get_gaps()
2. Agent reports isolated entities and undersized topics — feeds back to a human reviewer or drives which documents to ingest next.

5. “Build a quiz around this specific card”

1. get_related_cards(card_id=<seed card>, limit=10)
2. get_cards_batch(card_ids=[...related IDs...])
3. Agent generates 5 questions + answers citing the source cards.

6. “Browse all cards in a collection and pick what’s relevant”

1. describe_collection()                              # orient the agent
2. list_collection_cards(offset=0, limit=50)          # first page of lightweight summaries
3. list_collection_cards(offset=50, limit=50)         # continue
4. Agent picks IDs of interest → get_cards_batch([...])
This is the flow for an admin building a learning program — see what’s available, cherry-pick sources, assemble content.

Tips

  • Always start with describe_collection on a fresh collection. It tells your agent whether graph tools are available and gives an at-a-glance map of topics.
  • Prefer retrieve_for_topic over search_knowledge for content generation — it runs the fuller pipeline (importance filter + dedup + rerank) that produces cleaner source sets.
  • get_card_details is cheap — once your agent has a card_id from any other tool, pulling the full card is lightweight.
  • Cost note: retrieve_for_topic uses Cohere embedding + reranking (paid). Default top_k=25 is a good balance. Setting rerank=false skips the rerank if you’re cost-sensitive.

HTTP mode (LibreChat)

For LibreChat or other HTTP-based MCP clients, run the HTTP server:
AIGMENTED_API_KEY=sk-YOUR_KEY npx @aigmented/mcp --http
This starts an HTTP server on port 3002 (configurable via MCP_PORT) with the MCP Streamable HTTP transport at /mcp.

Errors and degradation

ScenarioWhat happensWhat to do
Collection has no graph builtGraph tools return 409Use retrieve_for_topic / search_knowledge instead, or run build-graphs on the collection
top_k > 50 on retrieve_for_topic400 validation errorLower top_k
limit > 100 on list_collection_cards400Lower limit
card_ids > 25 on get_cards_batch400Split into multiple batches
get_related_cards with missing card_id404Verify the ID exists in the collection
Invalid / cross-team collection_id404Check the ID and that the API key belongs to the right team
Token quota exceeded429Wait for quota reset or request a higher limit