Skip to main content

functional-group-profiling

Functional Group Profiling - Profile functional groups: radical assignment, H-bond analysis, aromaticity, and abbreviation condensation. Use this skill for organic chemistry tasks involving AssignRadicals GetHBANum AromaticityAnalyzer CondenseAbbreviationSubstanceGroups. Combines 4 tools from 2 SCP server(s).

Quellinformationen

Repository
InternScience/scp
Letzte Quellaktivität
3. März 2026 um 09:51
Erkannte Sprache von SKILL.md
Englisch
Sterne
173
Forks
11

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
functional_group_profiling
description
Functional Group Profiling - Profile functional groups: radical assignment, H-bond analysis, aromaticity, and abbreviation condensation. Use this skill for organic chemistry tasks involving AssignRadicals GetHBANum AromaticityAnalyzer CondenseAbbreviationSubstanceGroups. Combines 4 tools from 2 SCP server(s).
# Functional Group Profiling **Discipline**: Organic Chemistry | **Tools Used**: 4 | **Servers**: 2 ## Description Profile functional groups: radical assignment, H-bond analysis, aromaticity, and abbreviation condensation. ## Tools Used - **`AssignRadicals`** from `server-31` (sse) - `https://scp.intern-ai.org.cn/api/v1/mcp/31/SciToolAgent-Chem` - **`GetHBANum`** from `server-31` (sse) - `https://scp.intern-ai.org.cn/api/v1/mcp/31/SciToolAgent-Chem` - **`AromaticityAnalyzer`** from `server-28` (sse) - `https://scp.intern-ai.org.cn/api/v1/mcp/28/InternAgent` - **`CondenseAbbreviationSubstanceGroups`** from `server-31` (sse) - `https://scp.intern-ai.org.cn/api/v1/mcp/31/SciToolAgent-Chem` ## Workflow 1. Assign radical sites 2. Count H-bond acceptors 3. Analyze aromaticity 4. Condense substance groups ## Test Case ### Input ```json { "smiles": "CC(=O)Oc1ccccc1C(=O)O" } ``` ### Expected Steps 1. Assign radical sites 2. Count H-bond acceptors 3. Analyze aromaticity 4. Condense substance groups ## Usage Example > **Note:** Replace `<YOUR_SCP_HUB_API_KEY>` with your own SCP Hub API Key. You can obtain one from the [SCP Platform](https://scphub.intern-ai.org.cn). ```python import asyncio import json from mcp import ClientSession from mcp.client.streamable_http import streamablehttp_client from mcp.client.sse import sse_client SERVERS = { "server-31": "https://scp.intern-ai.org.cn/api/v1/mcp/31/SciToolAgent-Chem", "server-28": "https://scp.intern-ai.org.cn/api/v1/mcp/28/InternAgent" } async def connect(url, transport_type): transport = streamablehttp_client(url=url, headers={"SCP-HUB-API-KEY": "<YOUR_SCP_HUB_API_KEY>"}) read, write, _ = await transport.__aenter__() ctx = ClientSession(read, write) session = await ctx.__aenter__() await session.initialize() return session, ctx, transport def parse(result): try: if hasattr(result, 'content') and result.content: c = result.content[0] if hasattr(c, 'text'): try: return json.loads(c.text) except: return c.text return str(result) except: return str(result) async def main(): # Connect to required servers sessions = {} sessions["server-31"], _, _ = await connect("https://scp.intern-ai.org.cn/api/v1/mcp/31/SciToolAgent-Chem", "sse") sessions["server-28"], _, _ = await connect("https://scp.intern-ai.org.cn/api/v1/mcp/28/InternAgent", "sse") # Execute workflow steps # Step 1: Assign radical sites result_1 = await sessions["server-31"].call_tool("AssignRadicals", arguments={}) data_1 = parse(result_1) print(f"Step 1 result: {json.dumps(data_1, indent=2, ensure_ascii=False)[:500]}") # Step 2: Count H-bond acceptors result_2 = await sessions["server-31"].call_tool("GetHBANum", arguments={}) data_2 = parse(result_2) print(f"Step 2 result: {json.dumps(data_2, indent=2, ensure_ascii=False)[:500]}") # Step 3: Analyze aromaticity result_3 = await sessions["server-28"].call_tool("AromaticityAnalyzer", arguments={}) data_3 = parse(result_3) print(f"Step 3 result: {json.dumps(data_3, indent=2, ensure_ascii=False)[:500]}") # Step 4: Condense substance groups result_4 = await sessions["server-31"].call_tool("CondenseAbbreviationSubstanceGroups", arguments={}) data_4 = parse(result_4) print(f"Step 4 result: {json.dumps(data_4, indent=2, ensure_ascii=False)[:500]}") # Cleanup print("Workflow complete!") if __name__ == "__main__": asyncio.run(main()) ```
Auf GitHub ansehen