A Model Context Protocol (MCP) server providing seamless access to SPARQL endpoints with specialized support for the NSF-funded Proto-OKN Project (Prototype Open Knowledge Network). This server enables querying the scientific knowledge graphs hosted on the FRINK platform. In addition, third-party SPARQL endpoints can be queried.
- đź”— FRINK Integration: Automatic detection and documentation linking for FRINK-hosted knowledge graphs
- 🕸️ Proto-OKN Knowledge Graphs: Optimized support for biomedical and scientific knowledge graphs, including:
- 🧬 Biology & Health
- 🌱 Environment
- ⚖️ Justice
- 🛠️ Technology & Manufacturing
- ⚙️ Flexible Configuration: Support for both FRINK and custom SPARQL endpoints
- 📚 Automatic Documentation: Registry links and metadata for Proto-OKN knowledge graphs
- 🌳 Ontology-driven Search Expansion: Queries are automatically expanded using ontology hierarchies
- đź”— Federated Query: Prompts can query multiple endpoints
The MCP Server Proto-OKN acts as a bridge between AI assistants (like Claude) and SPARQL knowledge graphs, enabling natural language queries to be converted into structured SPARQL queries and executed against scientific databases.
- Client Application
- Claude Desktop with subscription
- ChatGPT with subscription
- VS Code Insiders with GitHub Copilot subscription
- Other MCP-compliant applications
Beta Notice: The proto-okn MCP server is currently in beta testing.
We welcome feedback and bug reports. Please submit any issues.
If you previously used a local installation of mcp-proto-okn in Claude Desktop, disable those services or remove them from claude_desktop_config.json.
- By default, the server will query all Proto-OKN KGs, e.g.,
Generate a table of all Proto-OKN Knowledge Graphs with two columns: “KG Name” and “Description.”
- To query a specific KG refer to it by
@kg-name, e.g.
@spoke-genelab: How many studies are in this KG?
- To create a transcript of a chat session, use the following prompt
Create a chat transcript
The transcript can then be downloaded in .md or .pdf format. The transcript includes prompts and results from the chat session. It also includes the LLM model name and version number that was used.
Each link below points to a chat transcript that demonstrates how to generate a knowledge-graph overview and class diagram for a given Proto-OKN Theme 1 KG. The examples are grouped by domain area.
| 🧬 Biology & Health | 🌱 Environment | ⚖️ Justice | 🛠️ Technology & Manufacturing | NASA/NIH |
|---|---|---|---|---|
| biobricks-aopwiki | sawgraph | ruralkg | securechainkg | nasa-gesdisc-kg |
| biobricks-ice | fiokg | scales | sudokn | nde |
| biobricks-mesh | geoconnex | nikg | gene-expression-atlas-okn | |
| biobricks-pubchem-annotations | spatialkg | dreamkg | ||
| biobricks-tox21 | hydrologykg | |||
| biobricks-toxcast | ufokn | |||
| spoke-genelab | wildlifekn | |||
| spoke-okn | climatemodelskg | |||
| sockg |
-
Spaceflight Gene Expression Analysis (spoke-genelab, spoke-okn)
-
Spaceflight Gene Expression with Literature Analysis (spoke-genelab, spoke-okn, PubMed)
-
Spaceflight Gene Expression with Open Targets MCP integration (spoke-genelab, Open Targets, PubMed)
-
Disease Prevalence - Socio-Economic Factors Correlation (spoke-okn)
-
Diabetic Nephropathy Meta-Analysis (gene-expression-atlas-okn)
-
Environmental Justice (sawgraph, scales, spatialkg, spoke-okn)
-
Flooding and Socio-Economic Factors (ufokn, spatialkg, spoke-okn)
Queries are automatically expanded using ontology hierarchies (MONDO, HP, GO, UBERON, etc.) from the Ubergraph KG to include all descendant concepts, ensuring comprehensive retrieval without manual enumeration. For example, searching for "arthritic joint disease" automatically includes rheumatoid arthritis, osteoarthritis, ankylosing spondylitis, and all other subtypes.
This section compares the results of two queries using Claude Desktop and VS Code Insiders with commons LLMs.
| Query | Claude Sonnet 4.5 | Claude Sonnet 4.5 | Gemini 3 Pro | Groq Code Fast 1 | GPT-5.2 |
|---|---|---|---|---|---|
| Spaceflight Missions | Claude Desktop | VS Code | VS Code | VS Code | VS Code |
| Gene Expression Analysis | Claude Desktop | VS Code | VS Code | VS Code | VS Code |
mcp-proto-okn vs. SPARQL Ground-Truth Evaluation
Instructions for building, testing, and publishing the mcp-proto-okn package on PyPI
The server supports two transport modes:
- stdio (default) -- local subprocess mode, used by
uvx mcp-proto-okn - streamable-http -- remote HTTP mode, for hosting a server that multiple clients connect to over the network
| Variable | Default | Description |
|---|---|---|
MCP_PROTO_OKN_TRANSPORT |
stdio |
stdio or streamable-http |
MCP_PROTO_OKN_HOST |
0.0.0.0 |
Bind address for HTTP transport |
MCP_PROTO_OKN_PORT |
8000 |
Bind port for HTTP transport |
MCP_PROTO_OKN_API_KEY |
(none) | Optional Bearer-token auth for HTTP |
CLI arguments --transport, --host, and --port take precedence over environment variables.
Start the server in HTTP mode:
# Terminal 1: Start the server
MCP_PROTO_OKN_TRANSPORT=streamable-http mcp-proto-okn \
--endpoint https://frink.apps.renci.org/spoke/sparql
# The server listens on http://localhost:8000/mcpThen configure Claude Code to connect via the remote MCP URL (add to .mcp.json or Claude Code settings):
{
"mcpServers": {
"proto-okn": {
"type": "url",
"url": "http://localhost:8000/mcp"
}
}
}Claude Desktop requires HTTPS with a valid domain name for remote MCP servers (it does not support http://localhost). Steps:
- Deploy the server to a host with a domain name
- Set up HTTPS via a reverse proxy (e.g., nginx, Caddy) or cloud service
- Optionally set
MCP_PROTO_OKN_API_KEYfor authentication - Configure Claude Desktop:
{
"mcpServers": {
"proto-okn": {
"type": "url",
"url": "https://your-domain.example.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY_HERE"
}
}
}
}MCP server not appearing in Claude Desktop:
- Ensure you've completely quit and restarted Claude Desktop (not just closed the window)
- Check that your JSON configuration is valid (attach your config file to a chat and ask it to fix any errors)
- Verify that
uvxis installed and accessible in your PATH (which uvx)
Connection errors:
- Verify the SPARQL endpoint URL is correct and accessible
- Some endpoints may have rate limits or temporary downtime
Performance issues:
- Complex SPARQL queries may take time to execute
- Consider breaking down complex queries into smaller parts
This project is licensed under the BSD 3-Clause License. See the LICENSE file for details.
If you use MCP Server Proto-OKN in your research, please cite the following works:
@software{rose2025mcp-proto-okn,
title={MCP Server Proto-OKN},
author={Rose, P.W. and Good, B.M. and Nelson, C.A. and Saravia-Butler, A.M. and Shi, Y. and Su, A.I. and Baranzini, S.E.},
year={2025},
url={https://github.com/sbl-sdsc/mcp-proto-okn}
}
@software{rose2025spoke-genelab,
title={NASA SPOKE-GeneLab Knowledge Graph},
author={Rose, P.W. and Nelson, C.A. and Gebre, S.G. and Saravia-Butler, A.M. and Soman, K. and Grigorev, K.A. and Sanders, L.M. and Costes, S.V. and Baranzini, S.E.},
year={2025},
url={https://github.com/BaranziniLab/spoke_genelab}
}-
Nelson, C.A., Rose, P.W., Soman, K., Sanders, L.M., Gebre, S.G., Costes, S.V., Baranzini, S.E. (2025). "Nasa Genelab-Knowledge Graph Fabric Enables Deep Biomedical Analysis of Multi-Omics Datasets." NASA Technical Reports, 20250000723. Link
-
Sanders, L., Costes, S., Soman, K., Rose, P., Nelson, C., Sawyer, A., Gebre, S., Baranzini, S. (2024). "Biomedical Knowledge Graph Capability for Space Biology Knowledge Gain." 45th COSPAR Scientific Assembly, July 13-21, 2024. Link
This work is in part supported by:
- National Science Foundation Award #2333819: "Proto-OKN Theme 1: Connecting Biomedical information on Earth and in Space via the SPOKE knowledge graph"
- National Science Foundation Award #2535091: "Proto-OKN Theme 2: OKN-Fabric"
- Proto-OKN Project - Prototype Open Knowledge Network initiative
- FRINK Platform - Knowledge graph hosting infrastructure
- Knowledge Graph Registry - Catalog of available knowledge graphs
- Model Context Protocol - AI assistant integration standard
- Original MCP Server SPARQL - Base implementation reference
For questions, issues, or contributions, please visit our GitHub repository.
