check_connectionLABSCO SUMMARY
The instruction manual lives in the database, so it can be edited without touching the agent.
Action templates like FIX and REFACTOR are graph nodes the agent reads before it starts, which means changing how your team wants bugs handled is a Cypher write rather than a prompt rewrite. Incarnations are the other structural idea: switching mode changes which tools are on the table, so a research session does not carry a code-analysis toolbox around with it.
What it is
A Neo4j-backed workflow and knowledge system. The graph holds action templates the agent follows, a project memory, and code-analysis results — and an incarnation mechanism swaps the active tool set between coding, knowledge graph, research, decision support and data analysis modes.
What you get
- check_connection, get_guidance_hub, list_incarnations, switch_incarnation, get_current_incarnation — verify the database and change the active mode
- list_action_templates, get_action_template, get_best_practices — the workflow templates the agent follows, including FIX, REFACTOR, FEATURE, DEPLOY and CODE_ANALYZE
- log_workflow_execution and get_workflow_history — record a completed workflow and read back what has been done
- list_projects, get_project, suggest_tool — project listings and a tool suggestion from a task description
- run_custom_query and write_neo4j_cypher — read-only and write Cypher against the graph
- list_cypher_snippets, search_cypher_snippets, get_cypher_snippet, create_cypher_snippet, update_cypher_snippet, delete_cypher_snippet, get_cypher_tags — a reusable Cypher library
- propose_tool, request_tool, get_tool_proposal, get_tool_request, list_tool_proposals, list_tool_requests — propose or request a tool the system lacks, and track those proposals
- analyze_codebase, analyze_file, compare_versions, find_code_smells, generate_documentation, explore_code_structure, search_code_constructs — added when you switch to the code analysis incarnation
- create_entities, create_relations, add_observations, delete_entities, delete_observations, delete_relations, read_graph, search_nodes, open_nodes — the knowledge graph incarnation
- get_cleanup_status — resource and background-task state for the running server
Requirements
A running Neo4j instance, and Qdrant for the semantic half. Python 3.10+ with uv. Connection details go in the client config as NEO4J_URL, NEO4J_USERNAME, NEO4J_PASSWORD and NEO4J_DATABASE; the password must match the database. Launched with uv from the cloned directory.
Setup effort
Build from source — git clone https://github.com/angrysky56/NeoCoder-neo4j-ai-workflow.git
USE CASES
Following your team's process for a bug fix
Fetch the FIX template from the graph, work through its steps, and log the execution when it passes.
Switching the agent to a different job
List the available incarnations and switch to the one that carries the tools you need.
Analysing an unfamiliar codebase
Parse files into an AST, explore the structure, and surface the code smells worth acting on.
Building up project knowledge
Create entities and relations as you learn them, and search the graph rather than re-reading the code.
Reusing a Cypher pattern that worked
Search the snippet library, read the one you want, and save new ones as you write them.
Checking the server is healthy
Verify the Neo4j connection and read the resource and background-task status.
39 tools
Listed in project docs. Your client may show a different list.
get_guidance_hubget_action_templatelist_action_templatesget_best_practicesget_projectlist_projectslog_workflow_executionget_workflow_historyadd_template_feedbackrun_custom_querywrite_neo4j_cypherget_current_incarnationlist_incarnationsswitch_incarnationsuggest_toolget_cleanup_statuscreate_entitiescreate_relationsadd_observationsdelete_entitiesdelete_observationsdelete_relationsread_graphsearch_nodesopen_nodeslist_cypher_snippetsget_cypher_snippetsearch_cypher_snippetscreate_cypher_snippetupdate_cypher_snippetdelete_cypher_snippetget_cypher_tagspropose_toolrequest_toolget_tool_proposalget_tool_requestlist_tool_proposalslist_tool_requestsBEFORE YOU INSTALL
What to know first
Tools you get
39 tools named in the project's documentation.
Requires
- Python 3.10+
- NEO4J_PASSWORD in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
git clone https://github.com/angrysky56/NeoCoder-neo4j-ai-workflow.git
cd NeoCoder-neo4j-ai-workflow
pyenv install 3.11.12 # if not already installed
pyenv local 3.11.12
uv venv
source .venv/bin/activate
uv pip install -e '.[dev,docs,gpu]'MCP Clients
Claude Desktop
{
"mcpServers": {
"neocoder": {
"command": "uv",
"args": [
"--directory",
"<YOUR_PATH_TO_NEO_CODER_NEO4J_AI>",
"run",
"mcp_neocoder"
],
"env": {
"NEO4J_URL": "bolt://localhost:7687",
"NEO4J_USERNAME": "neo4j",
"NEO4J_PASSWORD": "<YOUR_NEO4J_PASSWORD>",
"NEO4J_DATABASE": "neo4j",
"LOG_LEVEL": "INFO",
"MCP_TRANSPORT": "stdio",
"PYTHONUNBUFFERED": "1"
}
}
}
}