Use when you need to connect to the SciGraph SCP server for PPIKG (BioGRID+UniProt protein–protein interaction knowledge graph for target deconvolution) 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 Python 3.10+ usage examples.
Scanned 5/29/2026
Install to Claude Code
npx -y skills add zjunlp/Skills --skill scp-ppikg --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Scp Ppikg?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/zjunlp-scp-ppikg)More formats (shields.io, HTML) on the badges page.
---
name: scp-ppikg
description: Use when you need to connect to the SciGraph SCP server for PPIKG (BioGRID+UniProt protein–protein interaction knowledge graph for target deconvolution) 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 Python 3.10+ usage examples.
---
# SCP-PPIKG (SciGraph) MCP client
## What this SCP is
PPIKG (Protein–Protein Interaction Knowledge Graph) integrates BioGRID and UniProt protein interaction data. It combines experimentally validated physical interactions with refined genetic interactions via a “top-down” ontology construction method. The stated use case is target deconvolution after phenotype-based screening, accelerating drug development via graph inference/AI.
## Connection info
- MCP server URL:
- `https://scp.intern-ai.org.cn/api/v1/mcp/37/SciGraph`
- Auth header:
- `SCP-HUB-API-KEY: {API-KEY}`
## Install
```bash
pip install mcp
```
## Configure (MCP config JSON)
```json
{
"mcpServers": {
"SciGraph": {
"type": "streamableHttp",
"description": "这是一款面向科学研究的统一知识查询服务,集成了化学、生物等多个学科领域的知识图谱数据,支持跨学科知识检索、实体关系查询、领域知识问答等操作",
"url": "https://scp.intern-ai.org.cn/api/v1/mcp/37/SciGraph",
"headers": {
"SCP-HUB-API-KEY": "{API-KEY}"
}
}
}
}
```
## Tools
### query_cypher
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 (PPIKG):
```json
{
"cypher": "MATCH (e:Experiment:PPIKG) RETURN e.id as experiment_id",
"kg_name": "PPIKG",
"limit": 5
}
```
### get_kg_statistics
Return graph statistics.
Example arguments:
```json
{ "kg_name": "PPIKG" }
```
### get_entity_details
Return entity details.
Example arguments:
```json
{ "entity_identifier": "experiment_1", "kg_name": "PPIKG" }
```
### get_experiment_workflow
Return the full workflow of an experiment.
Example arguments:
```json
{ "experiment_id": "experiment_1" }
```
## Python example (streamable HTTP)
```python
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 PPIKG
result = await session.call_tool(
"get_kg_statistics",
arguments={"kg_name": "PPIKG"},
)
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())
```
## Citation
Wang, X., Zhang, M., Xu, J. et al. A novel approach for target deconvolution from phenotype-based screening using knowledge graph. *Scientific Reports* 15, 2414 (2025). https://doi.org/10.1038/s41598-025-86166-w
## Reference
For the full scraped page text/schemas, read:
- `references/source.md`
No comments yet. Be the first to comment!