An MCP (Model Context Protocol) server for querying the SPOKE biomedical knowledge graph for rapid biomedical knowledge inference.
- Query SPOKE Knowledge Graph: Execute Cypher queries on the SPOKE biomedical knowledge graph
- Get SPOKE Schema: Retrieve the complete schema of the SPOKE knowledge graph including nodes, relationships, and properties
SPOKEAgent is currently available to UCSF affiliates only.
To run the server, you will need a passcode (SPOKEAGENT_PASSCODE). Log in with your UCSF credentials at the link below to retrieve it:
SPOKEAgent Credentials (UCSF affiliates)
That page will show you how to set the environment variable and run the server.
SPOKEAgent is designed to be used with BioRouter. To add it:
- In BioRouter, go to Add custom extension
- Fill in the extension name and description
- For the one-liner command, use the following (replacing
<your-passcode>with the value from the credentials page above):
SPOKEAGENT_PASSCODE=<your-passcode> uvx --from git+https://github.com/Broccolito/SPOKEAgent spokeagent- Click Add extension — you're ready to go
Execute a read-only Cypher query on the SPOKE biomedical knowledge graph.
Parameters:
cypher_query(string, required): The Cypher query for biomedical knowledge inferenceparameters(dict, optional): Parameters to pass to the SPOKE query
Example:
MATCH (d:Disease)-[r:ASSOCIATES_DaG]->(g:Gene)
WHERE d.name = "Alzheimer's disease"
RETURN g.name, r.score
LIMIT 10List all nodes, their attributes, and their relationships in the SPOKE biomedical knowledge graph.
Returns: Complete schema including node types, properties, and relationships.
This server enforces read-only access to the SPOKE knowledge graph. Write operations (CREATE, MERGE, DELETE, etc.) are not permitted.
MIT
- Wanjun Gu (wanjun.gu@ucsf.edu)
- Gianmarco Bellucci (gianmarco.bellucci@ucsf.edu)
SPOKE (Scalable Precision medicine Oriented Knowledge Engine) is a large-scale biomedical knowledge graph that integrates data from multiple sources to support precision medicine research.