aiagentkarl commited on
Commit
c7f1347
·
verified ·
1 Parent(s): e2ddf60

Upload app.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. app.py +164 -0
app.py ADDED
@@ -0,0 +1,164 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import pandas as pd
3
+
4
+ # MCP Server Katalog
5
+ data = {
6
+ "Name": [
7
+ "solana-mcp-server", "germany-mcp-server", "agriculture-mcp-server",
8
+ "space-mcp-server", "aviation-mcp-server", "eu-company-mcp-server",
9
+ "openmeteo-mcp-server", "cybersecurity-mcp-server", "medical-data-mcp-server",
10
+ "political-finance-mcp-server", "supply-chain-mcp-server", "energy-grid-mcp-server",
11
+ "crossref-academic-mcp-server", "llm-benchmark-mcp-server",
12
+ "mcp-appstore-server", "api-to-mcp-converter", "agent-memory-mcp-server",
13
+ "agent-directory-mcp-server", "agent-reputation-mcp-server",
14
+ "agent-feedback-mcp-server", "prompt-library-mcp-server",
15
+ "agent-coordination-mcp-server", "agent-workflow-mcp-server",
16
+ "agent-analytics-mcp-server", "x402-mcp-server",
17
+ "agent-interface-standard", "agent-validator-mcp-server",
18
+ "business-bridge-mcp-server", "agent-commerce-mcp-server",
19
+ "agent-identity-mcp-server", "a2a-protocol-mcp-server",
20
+ "agentic-product-protocol-mcp", "agent-policy-gateway-mcp",
21
+ "hive-mind-mcp-server", "agent-context-optimizer-mcp",
22
+ "legal-court-mcp-server", "agent-server-card-mcp", "agent-audit-trail-mcp"
23
+ ],
24
+ "Category": [
25
+ "Data", "Data", "Data", "Data", "Data", "Data", "Data", "Data", "Data",
26
+ "Data", "Data", "Data", "Data", "Data",
27
+ "Agent Infrastructure", "Agent Infrastructure", "Agent Infrastructure",
28
+ "Agent Infrastructure", "Agent Infrastructure", "Agent Infrastructure",
29
+ "Agent Infrastructure", "Agent Infrastructure", "Agent Infrastructure",
30
+ "Agent Infrastructure", "Agent Infrastructure",
31
+ "Business-to-Agent", "Business-to-Agent", "Business-to-Agent",
32
+ "Business-to-Agent", "Business-to-Agent",
33
+ "Agent Protocols", "E-Commerce", "Compliance",
34
+ "Swarm Intelligence", "Agent Infrastructure",
35
+ "Data", "Agent Infrastructure", "Compliance"
36
+ ],
37
+ "Description": [
38
+ "Solana blockchain - wallets, tokens, DeFi, security",
39
+ "German government and public authority data",
40
+ "FAO agricultural data and statistics",
41
+ "NASA and ESA space data",
42
+ "Aviation and flight tracking data",
43
+ "EU company registry data",
44
+ "Weather and climate via Open-Meteo",
45
+ "CVE vulnerability and security data",
46
+ "WHO health and medical data",
47
+ "FEC campaign finance data",
48
+ "UN Comtrade supply chain data",
49
+ "CO2 intensity, electricity mix, energy prices",
50
+ "Scientific papers, citations, authors",
51
+ "LLM comparison, benchmarks, pricing",
52
+ "MCP server hub with 49+ servers",
53
+ "Convert OpenAPI specs to MCP servers",
54
+ "Persistent memory for AI agents",
55
+ "Service registry for AI agents",
56
+ "Trust scores for AI agents",
57
+ "Quality signals for AI agents",
58
+ "Prompt template library",
59
+ "Multi-agent messaging",
60
+ "Workflow templates for agents",
61
+ "Usage analytics for agents",
62
+ "Micropayments via x402 protocol",
63
+ "Schema.org for agents",
64
+ "Agent accessibility validator",
65
+ "Shopify/WordPress/Calendly connectors",
66
+ "Agent purchase protocol",
67
+ "OAuth for AI agents",
68
+ "Google A2A Protocol bridge",
69
+ "Product discovery for shopping agents",
70
+ "PII detection, guardrails, GDPR checks",
71
+ "Collective decision-making for swarms",
72
+ "Context window optimization",
73
+ "CourtListener legal data, 3M+ decisions",
74
+ ".well-known server discovery",
75
+ "Immutable audit logging for agents"
76
+ ],
77
+ "Tools": [
78
+ 11, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5,
79
+ 6, 4, 6, 6, 6, 6, 6, 6, 6, 6, 6,
80
+ 4, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6
81
+ ],
82
+ "API Key": [
83
+ "Yes", "No", "No", "Yes", "Yes", "No", "No", "No", "No",
84
+ "Yes", "No", "No", "No", "No",
85
+ "No", "No", "No", "No", "No", "No", "No", "No", "No", "No", "No",
86
+ "No", "No", "No", "No", "No", "No", "No", "No", "No", "No", "No", "No", "No"
87
+ ],
88
+ "Install": [
89
+ "pip install solana-mcp-server", "pip install germany-mcp-server",
90
+ "pip install agriculture-mcp-server", "pip install space-mcp-server",
91
+ "pip install aviation-mcp-server", "pip install eu-company-mcp-server",
92
+ "pip install openmeteo-mcp-server", "pip install cybersecurity-mcp-server",
93
+ "pip install medical-data-mcp-server", "pip install political-finance-mcp-server",
94
+ "pip install supply-chain-mcp-server", "pip install energy-grid-mcp-server",
95
+ "pip install crossref-academic-mcp-server", "pip install llm-benchmark-mcp-server",
96
+ "pip install mcp-appstore-server", "pip install api-to-mcp-converter",
97
+ "pip install agent-memory-mcp-server", "pip install agent-directory-mcp-server",
98
+ "pip install agent-reputation-mcp-server", "pip install agent-feedback-mcp-server",
99
+ "pip install prompt-library-mcp-server", "pip install agent-coordination-mcp-server",
100
+ "pip install agent-workflow-mcp-server", "pip install agent-analytics-mcp-server",
101
+ "pip install x402-mcp-server", "pip install agent-interface-standard",
102
+ "pip install agent-validator-mcp-server", "pip install business-bridge-mcp-server",
103
+ "pip install agent-commerce-mcp-server", "pip install agent-identity-mcp-server",
104
+ "pip install a2a-protocol-mcp-server", "pip install agentic-product-protocol-mcp",
105
+ "pip install agent-policy-gateway-mcp", "pip install hive-mind-mcp-server",
106
+ "pip install agent-context-optimizer-mcp", "pip install legal-court-mcp-server",
107
+ "pip install agent-server-card-mcp", "pip install agent-audit-trail-mcp"
108
+ ]
109
+ }
110
+
111
+ df = pd.DataFrame(data)
112
+
113
+ def search_servers(query, category):
114
+ filtered = df.copy()
115
+ if category and category != "All":
116
+ filtered = filtered[filtered["Category"] == category]
117
+ if query:
118
+ query_lower = query.lower()
119
+ mask = (
120
+ filtered["Name"].str.lower().str.contains(query_lower) |
121
+ filtered["Description"].str.lower().str.contains(query_lower) |
122
+ filtered["Category"].str.lower().str.contains(query_lower)
123
+ )
124
+ filtered = filtered[mask]
125
+ return filtered
126
+
127
+ def get_stats():
128
+ total = len(df)
129
+ categories = df["Category"].value_counts().to_dict()
130
+ total_tools = df["Tools"].sum()
131
+ no_key = len(df[df["API Key"] == "No"])
132
+ stats = f"**{total} MCP Servers** | **{total_tools} Tools** | **{no_key} without API key**\n\n"
133
+ stats += "| Category | Count |\n|---|---|\n"
134
+ for cat, count in sorted(categories.items()):
135
+ stats += f"| {cat} | {count} |\n"
136
+ return stats
137
+
138
+ categories = ["All"] + sorted(df["Category"].unique().tolist())
139
+
140
+ with gr.Blocks(title="MCP Server Explorer", theme=gr.themes.Soft()) as demo:
141
+ gr.Markdown("# MCP Server Explorer")
142
+ gr.Markdown("Browse and search 38 Model Context Protocol servers for AI agents. All servers are open-source and installable via pip.")
143
+
144
+ with gr.Row():
145
+ search_box = gr.Textbox(label="Search", placeholder="Search by name, description, or category...", scale=3)
146
+ category_filter = gr.Dropdown(choices=categories, value="All", label="Category", scale=1)
147
+
148
+ table = gr.Dataframe(
149
+ value=df,
150
+ label="MCP Servers",
151
+ interactive=False,
152
+ wrap=True
153
+ )
154
+
155
+ with gr.Accordion("Statistics", open=False):
156
+ stats_md = gr.Markdown(get_stats())
157
+
158
+ search_box.change(fn=search_servers, inputs=[search_box, category_filter], outputs=table)
159
+ category_filter.change(fn=search_servers, inputs=[search_box, category_filter], outputs=table)
160
+
161
+ gr.Markdown("---")
162
+ gr.Markdown("Built by [AiAgentKarl](https://github.com/AiAgentKarl) | [Dataset](https://huggingface.co/datasets/aiagentkarl/mcp-server-catalog)")
163
+
164
+ demo.launch()