协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
scp-txgnn【开发与工程】Use when you need to connect to the SciGraph SCP server for TxGNN (large-scale biomedical knowledge graph for drug repurposing and therapeutic relationship prediction, Neo4j-imported) and call its MCP tools (query_cypher, get_kg_statistics, get_entity_details, get_experiment_workflow), including streamableHttp configuration with SCP-HUB-API-KEY and P…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
TxGNN is a large-scale biomedical knowledge graph designed for drug repurposing and therapeutic relationship prediction. It integrates knowledge across drugs, diseases, genes, proteins, pathways, and other biomedical entities, and is imported into Neo4j (reported ~129,312 nodes and ~7,708,348 relations).
https://scp.intern-ai.org.cn/api/v1/mcp/37/SciGraphSCP-HUB-API-KEY: {API-KEY}pip install mcp
{
"mcpServers": {
"SciGraph": {
"type": "streamableHttp",
"description": "这是一款面向科学研究的统一知识查询服务,集成了化学、生物等多个学科领域的知识图谱数据,支持跨学科知识检索、实体关系查询、领域知识问答等操作",
"url": "https://scp.intern-ai.org.cn/api/v1/mcp/37/SciGraph",
"headers": {
"SCP-HUB-API-KEY": "{API-KEY}"
}
}
}
}
Execute a Cypher query and return JSON results.
Arguments:
cypher (string, required)kg_name (string|null, optional, default null)limit (int, optional, default 100)Example arguments (TxGNN):
{
"cypher": "MATCH (e:Experiment:TxGNN) RETURN e.id as experiment_id",
"kg_name": "TxGNN",
"limit": 5
}
Return graph statistics.
Example arguments:
{ "kg_name": "TxGNN" }
Return entity details.
Example arguments:
{ "entity_identifier": "experiment_1", "kg_name": "TxGNN" }
Return the full workflow of an experiment.
Example arguments:
{ "experiment_id": "experiment_1" }
import asyncio
import json
from mcp.client.streamable_http import streamablehttp_client
from mcp.client.session import ClientSession
SERVER_URL = "https://scp.intern-ai.org.cn/api/v1/mcp/37/SciGraph"
async def main():
transport = streamablehttp_client(
url=SERVER_URL,
headers={"SCP-HUB-API-KEY": "sk-xxx"},
)
read, write, get_session_id = await transport.__aenter__()
session_ctx = ClientSession(read, write)
session = await session_ctx.__aenter__()
await session.initialize()
# Example: stats for TxGNN
result = await session.call_tool(
"get_kg_statistics",
arguments={"kg_name": "TxGNN"},
)
data = json.loads(result.content[0].text)
print(data)
await session_ctx.__aexit__(None, None, None)
await transport.__aexit__(None, None, None)
if __name__ == "__main__":
asyncio.run(main())
Huang, K., Chandak, P., Wang, Q. et al. (2024). A foundation model for clinician-centered drug repurposing. Nature Medicine, 30, 3601–3613. https://doi.org/10.1038/s41591-024-03233-x
For the full scraped page text, read:
references/source.md