Skip to content

Commit c237095

Browse files
sync mcp.science servers (#231)
* feat: add 5 new servers from mcp.science * fix: add new dependency: jsonschema
1 parent bd00621 commit c237095

File tree

7 files changed

+327
-0
lines changed

7 files changed

+327
-0
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"name": "gpaw-computation",
3+
"display_name": "GPAW Computation Server",
4+
"description": "MCP server for running GPAW (Grid-based Projector Augmented Wave) computational calculations for materials science and quantum mechanics simulations.",
5+
"repository": {
6+
"type": "git",
7+
"url": "https://github.com/pathintegral-institute/mcp.science"
8+
},
9+
"homepage": "https://github.com/pathintegral-institute/mcp.science/tree/main/servers/gpaw-computation",
10+
"author": {
11+
"name": "Path Integral Institute",
12+
"email": "[email protected]"
13+
},
14+
"license": "MIT",
15+
"categories": ["AI Systems"],
16+
"tags": [
17+
"quantum",
18+
"computation"
19+
],
20+
"arguments": {},
21+
"installations": {
22+
"python": {
23+
"type": "python",
24+
"command": "uvx",
25+
"args": ["mcp-science", "gpaw-computation"],
26+
"env": {},
27+
"description": "Install from GitHub using uvx",
28+
"recommended": true
29+
}
30+
},
31+
"examples": [
32+
{
33+
"title": "Run GPAW calculation",
34+
"description": "Perform quantum mechanics calculations on materials structures",
35+
"prompt": "Run a GPAW DFT calculation on a silicon crystal structure"
36+
},
37+
{
38+
"title": "Electronic structure analysis",
39+
"description": "Analyze electronic properties of materials using GPAW",
40+
"prompt": "Calculate the band structure and density of states for graphene"
41+
},
42+
{
43+
"title": "Materials optimization",
44+
"description": "Optimize atomic structures using GPAW calculations",
45+
"prompt": "Optimize the geometry of a perovskite structure using GPAW"
46+
}
47+
],
48+
"is_official": true
49+
}

mcp-registry/servers/nemad.json

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
{
2+
"name": "nemad",
3+
"display_name": "NEMAD Materials Database",
4+
"description": "MCP server for accessing the North East Materials Database (NEMAD) API to search materials by elements and chemical formulas in magnetic, thermoelectric, and superconductor databases.",
5+
"repository": {
6+
"type": "git",
7+
"url": "https://github.com/pathintegral-institute/mcp.science"
8+
},
9+
"homepage": "https://github.com/pathintegral-institute/mcp.science/tree/main/servers/nemad",
10+
"author": {
11+
"name": "Path Integral Institute"
12+
},
13+
"license": "MIT",
14+
"categories": ["Knowledge Base"],
15+
"tags": [
16+
"materials",
17+
"database"
18+
],
19+
"arguments": {
20+
"NEMAD_API_KEY": {
21+
"description": "API key for accessing NEMAD database from nemad.org",
22+
"required": true,
23+
"example": "your-nemad-api-key"
24+
}
25+
},
26+
"tools": [
27+
{
28+
"name": "nemad_search",
29+
"description": "Search materials by elements in magnetic, thermoelectric, and superconductor databases"
30+
},
31+
{
32+
"name": "nemad_formula_search",
33+
"description": "Search materials by exact chemical formula"
34+
},
35+
{
36+
"name": "nemad_read_results",
37+
"description": "Read specific ranges of search results from previous queries"
38+
}
39+
],
40+
"installations": {
41+
"python": {
42+
"type": "python",
43+
"command": "uvx",
44+
"args": ["mcp-science", "nemad"],
45+
"env": {
46+
"NEMAD_API_KEY": "${NEMAD_API_KEY}"
47+
},
48+
"description": "Install from GitHub using uvx",
49+
"recommended": true
50+
}
51+
},
52+
"examples": [
53+
{
54+
"title": "Search magnetic materials by elements",
55+
"description": "Find magnetic materials containing iron and oxygen",
56+
"prompt": "Search for magnetic materials containing iron and oxygen"
57+
},
58+
{
59+
"title": "Search by chemical formula",
60+
"description": "Find materials with exact chemical formula",
61+
"prompt": "Find materials with chemical formula Fe2O3"
62+
},
63+
{
64+
"title": "Search thermoelectric materials",
65+
"description": "Find thermoelectric materials with specific elements",
66+
"prompt": "Search thermoelectric materials containing bismuth and tellurium"
67+
}
68+
],
69+
"is_official": true
70+
}

mcp-registry/servers/netket.json

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
{
2+
"name": "netket",
3+
"display_name": "NetKet Quantum Physics",
4+
"description": "MCP server for NetKet quantum many-body physics analysis. Create, analyze, and visualize quantum systems using natural language interfaces. Supports multiple lattice geometries and Hamiltonian models.",
5+
"repository": {
6+
"type": "git",
7+
"url": "https://github.com/pathintegral-institute/mcp.science"
8+
},
9+
"homepage": "https://github.com/pathintegral-institute/mcp.science/tree/main/servers/netket",
10+
"author": {
11+
"name": "Path Integral Institute"
12+
},
13+
"license": "MIT",
14+
"categories": ["AI Systems"],
15+
"tags": [
16+
"quantum",
17+
"physics"
18+
],
19+
"installations": {
20+
"python": {
21+
"type": "python",
22+
"command": "uvx",
23+
"args": ["mcp-science", "netket"],
24+
"description": "Install from GitHub using uvx",
25+
"recommended": true
26+
}
27+
},
28+
"examples": [
29+
{
30+
"title": "SSH Model Analysis",
31+
"description": "Analyze the SSH model for a chain with specific parameters",
32+
"prompt": "Analyze the SSH model for a 24-site chain with t1=1.0 and t2=0.2"
33+
},
34+
{
35+
"title": "Heisenberg Model",
36+
"description": "Study the Heisenberg model on a 2D lattice",
37+
"prompt": "Create and analyze a 2D Heisenberg model on a 4x4 square lattice"
38+
},
39+
{
40+
"title": "Energy Spectrum Calculation",
41+
"description": "Calculate and visualize energy spectra of quantum systems",
42+
"prompt": "Calculate the energy spectrum of a 1D Hubbard model with 10 sites"
43+
},
44+
{
45+
"title": "Ground State Properties",
46+
"description": "Analyze ground state properties of quantum systems",
47+
"prompt": "Find the ground state properties of a spin-1/2 Heisenberg chain with 12 sites"
48+
}
49+
],
50+
"is_official": true
51+
}

mcp-registry/servers/timer.json

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
{
2+
"name": "timer",
3+
"display_name": "Timer MCP Server",
4+
"description": "A minimal MCP server that functions as a countdown timer with progress notifications. Demonstrates streaming incremental updates for long-running tasks.",
5+
"repository": {
6+
"type": "git",
7+
"url": "https://github.com/pathintegral-institute/mcp.science"
8+
},
9+
"homepage": "https://github.com/pathintegral-institute/mcp.science/tree/main/servers/timer",
10+
"author": {
11+
"name": "Path Integral Institute"
12+
},
13+
"license": "MIT",
14+
"categories": ["Dev Tools"],
15+
"tags": [
16+
"timer",
17+
"streaming"
18+
],
19+
"tools": [
20+
{
21+
"name": "wait",
22+
"description": "Wait for a specified time with progress notifications",
23+
"inputSchema": {
24+
"type": "object",
25+
"properties": {
26+
"time_to_wait": {
27+
"type": "integer",
28+
"description": "Total duration to wait in milliseconds"
29+
},
30+
"notif_interval": {
31+
"type": "integer",
32+
"description": "Interval between progress updates in milliseconds"
33+
}
34+
},
35+
"required": ["time_to_wait", "notif_interval"]
36+
}
37+
}
38+
],
39+
"installations": {
40+
"python": {
41+
"type": "python",
42+
"command": "uvx",
43+
"args": ["mcp-science", "timer"],
44+
"description": "Install from GitHub using uvx",
45+
"recommended": true
46+
}
47+
},
48+
"examples": [
49+
{
50+
"title": "Basic countdown timer",
51+
"description": "Wait for 5 seconds with updates every second",
52+
"prompt": "Wait for 5 seconds and notify me every second"
53+
},
54+
{
55+
"title": "Long timer with frequent updates",
56+
"description": "Demonstrate streaming updates with a longer wait",
57+
"prompt": "Set a 30-second timer with updates every 2 seconds"
58+
},
59+
{
60+
"title": "Short timer for testing",
61+
"description": "Quick test of timer functionality",
62+
"prompt": "Wait for 2 seconds with updates every 500 milliseconds"
63+
}
64+
],
65+
"is_official": true
66+
}

mcp-registry/servers/tinydb.json

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
{
2+
"name": "tinydb",
3+
"display_name": "TinyDB MCP Server",
4+
"description": "MCP server that uses TinyDB to store and retrieve data. Provides a simple NoSQL database interface with operations for creating tables, inserting documents, querying, updating, and deleting records.",
5+
"repository": {
6+
"type": "git",
7+
"url": "https://github.com/pathintegral-institute/mcp.science"
8+
},
9+
"homepage": "https://github.com/pathintegral-institute/mcp.science/tree/main/servers/tinydb",
10+
"author": {
11+
"name": "Path Integral Institute"
12+
},
13+
"license": "MIT",
14+
"categories": ["Databases"],
15+
"tags": [
16+
"database",
17+
"nosql"
18+
],
19+
"arguments": {
20+
"DB_FILE": {
21+
"description": "Path to the TinyDB database file (optional, defaults to database.json)",
22+
"required": false,
23+
"example": "/path/to/custom_database.json"
24+
}
25+
},
26+
"tools": [
27+
{
28+
"name": "create_table",
29+
"description": "Create a new table in the database"
30+
},
31+
{
32+
"name": "insert_document",
33+
"description": "Insert a document into a table"
34+
},
35+
{
36+
"name": "query_documents",
37+
"description": "Query documents from a table with optional filters"
38+
},
39+
{
40+
"name": "update_documents",
41+
"description": "Update documents in a table"
42+
},
43+
{
44+
"name": "delete_documents",
45+
"description": "Delete documents from a table"
46+
},
47+
{
48+
"name": "purge_table",
49+
"description": "Remove all documents from a table"
50+
},
51+
{
52+
"name": "drop_table",
53+
"description": "Drop a table from the database"
54+
}
55+
],
56+
"installations": {
57+
"python": {
58+
"type": "python",
59+
"command": "uvx",
60+
"args": ["mcp-science", "tinydb"],
61+
"description": "Install from GitHub using uvx",
62+
"recommended": true
63+
}
64+
},
65+
"examples": [
66+
{
67+
"title": "Create and populate a users table",
68+
"description": "Create a users table and insert user records",
69+
"prompt": "Create a users table and insert a user with name 'John Doe', email '[email protected]', and age 30"
70+
},
71+
{
72+
"title": "Query database records",
73+
"description": "Search for records matching specific criteria",
74+
"prompt": "Find all users with age greater than 25"
75+
},
76+
{
77+
"title": "Update existing records",
78+
"description": "Update user information in the database",
79+
"prompt": "Update the email address for user John Doe to '[email protected]'"
80+
},
81+
{
82+
"title": "Database maintenance",
83+
"description": "Clean up and manage database tables",
84+
"prompt": "Remove all users older than 65 and then purge the inactive_users table"
85+
}
86+
],
87+
"is_official": true
88+
}

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ dependencies = [
3737
"rich-gradient>=0.3.2",
3838
"tomli>=2.2.1",
3939
"tomli-w>=1.2.0",
40+
"jsonschema>=4.24.0",
4041
]
4142

4243
[project.urls]

uv.lock

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)