Sponsored by Deepsite.site

朱朱图片搜索服务

Created By
zhuzhua month ago
根据关键词去pexels搜索图片
Content

})();

1 Star 0 Fork 0

zsn/image-search-mcp

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。

$(".project-admin-action-box .approve").click(function(){

$.ajax({
  type: 'POST',
  url: "/admin/shumei_content/shumei_check/reject_project_public",
  data: {
    status: 'approved',
    project_id: 43533352
  },
  success: function(result){
    if(result.status == 'success'){
      window.location.reload();
    }else{
      Flash.error(result.message)
    }
  }
})

})

$(".project-admin-action-box .waiting").click(function(){

$.ajax({
  type: 'POST',
  url: "/admin/shumei_content/shumei_check/reject_project_public",
  data: {
    status: 'waiting',
    project_id: 43533352
  },
  success: function(result){
    if(result.status == 'success'){
      window.location.reload();
    }else{
      Flash.error(result.message)
    }
  }
})

})

$('i.help.circle.icon').popup({ popup: '.no-license .ui.popup', position: 'right center' });

$('#remove-no-license-message').on('click', function() { $.cookie("skip_repo_no_license_message_43533352", 'hide', { expires: 365 }); $('#user-no-license-message').hide(); return; });

$branchesDropdown.scroll(function() { var branchesPanel = document.getElementById('branches_panel'); var numOfBranches = $branchesDropdown.children().length; if (branchesPanel.clientHeight + branchesPanel.scrollTop + 37 > branchesPanel.scrollHeight && numOfBranches < 1) { debounceLoadMoreBranches.call(); } }); function resetFlagVal() { flag_is_loading = false; flag_page_number = 1; flag_total_pager = 1;

concurrentRequestLock = false
search_text = "";
branch_page_number = 1;
branch_total_pager = 1

} $searchNameInput.on('input', window.globalUtils.debouce(function (e) { resetFlagVal() var $currentTab = $('.tab-menu-action.active'); var numOfBranches = $branchesDropdown.children().length; var searchWord = $searchNameInput.val().trim(); search_text = searchWord if($currentTab.data('tab') === 'branches') { if (searchWord !== "") { loadData(searchWord,1); } else { loadData(); } } var numOfTags = $tagsDropdown.children().length; if($currentTab.data('tab') === 'tags') { if (searchWord !== "") { fetchTags(searchWord,1); } else { fetchTags(); } } }, 500));

function toggleNoResultView($popPanel) { let no_data_html= <div class='mt-1 mb-1 d-flex-center'> <span>暂无数据</span> </div>   $popPanel.append(no_data_html) } var debounceLoadMoreBranches = window.globalUtils.debouce(function () { if (concurrentRequestLock) return; branch_page_number += 1; if (branch_page_number > branch_total_pager) return; loadData(search_text, branch_page_number); }, 350);

function loadData(search, page) { if (concurrentRequestLock) { return; } concurrentRequestLock = true;

var searchParams = search || "";
var pageParams = page || 1;
$.ajax({
  url: "/" + gon.user_project + "/branches/names.json",
  type: 'GET',
  data: {
    search: searchParams,
    page: pageParams,
  },
  dataType: 'json',
  success: function (data) {
    branch_total_pager = data.total_pages;
    var html = '';

    if (pageParams === 1) {
      $branchesDropdown.empty();
    }
    data.branches.forEach(function (branch) {
      var protectRule = '';
      var branchName = filterXSS(branch.name);
      var icon = 'gitee:branch'
      if(branch.branch_type.value === 1) {
        var rule = filterXSS(branch.protection_rule.wildcard);
        protectRule = `<i
            class="iconfont icon-shieldlock protected-branch-popup"
            data-title="受保护分支"
            data-content='保护规则: ${rule}'
          >
          </i>`
        icon ='gitee:pen-lock'
      }else if(branch.branch_type.value === 2) {
        icon ='gitee:pen-ban'
      }
      var branchIcon = `<span class="iconify" data-icon=${icon} style="font-size: 13px; margin-right:4px; color:#8C92A4"></span>`
      html += `<div data-value='${branchName}' class="item">
                ${branchIcon} 
                <span>${branchName}</span> ${protectRule}
                </div>`
    });
    $branchesDropdown.append(html);
    $('.protected-branch-popup').popup()
    if (pageParams === 1 && data.count === 0) {
      toggleNoResultView($branchesDropdown);
    }
  },
  complete: function () {
    concurrentRequestLock = false;
  }
});

}

$tagsDropdown.scroll(function() { var tagsPanel = document.getElementById('tags_panel'); var numOfTags = $tagsDropdown.children().length; if (tagsPanel.clientHeight + tagsPanel.scrollTop + 37 > tagsPanel.scrollHeight && numOfTags < 0) { debounceLoadMore.call(); } }); var debounceLoadMore = window.globalUtils.debouce(function () { if (flag_is_loading) return; flag_page_number += 1; if (flag_page_number > flag_total_pager) return; fetchTags(search_text, flag_page_number); }, 350);

function fetchTags(search, page) { var searchParams = search || ""; var pageParams = page || 1;

if (flag_is_loading) return;
flag_is_loading = true;

$.ajax({
  url: "/" + gon.user_project + "/tags/names.json",
  data: {
    search: searchParams,
    page: pageParams,
  },
  type: "GET",
  xhrFields: {
    withCredentials: true,
  },
  success: function (data) {
    flag_total_pager = data.total_pages;
    if (pageParams === 1) {
      $tagsDropdown.html('');
    }
    data.tags.forEach((tag) => {
      const itemDiv = document.createElement('div');
      itemDiv.classList.add('item');
      itemDiv.setAttribute('data-value', tag.name);
      itemDiv.innerText = window.filterXSS(tag.name);
      $tagsDropdown.append(itemDiv)
    });
    if (pageParams === 1 && data.count === 0) {
      toggleNoResultView($tagsDropdown);
    }
  },
  error: function () {
  },
  complete: function () {
    flag_is_loading = false;
  },
});

} $('.project-branch-tab-menu').on('click','.tab-menu-item', function (e) { var $currentTab = $(this).data('tab') if($currentTab === 'branches') { $searchNameInput.val('') search_text = ''; loadData() } if($currentTab === 'tags') { $searchNameInput.val('') search_text = ''; fetchTags(); } })

克隆/下载

})

贡献代码
同步代码

})();

取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...

$('.appeal_message').removeClass('text-center')

$(".file_title_readme").click(function(event) { $('.lisence-content').hide() $('.readme-content').show() $('.lisence-edit').hide() $('.readme-edit').show() $('.file_title_readme').addClass('active-title') $('.file_title_license').removeClass('active-title') });

$(".file_title_license").click(function(event) { var licenseIndex = $(this).data('license-index'); $('.readme-content').hide() $('.lisence-edit').hide() $('.readme-edit').hide()

// 移除所有license标题的active-title类,然后为当前点击的标题添加active-title类
$('.file_title_license').removeClass('active-title');
$(this).addClass('active-title');
$('.file_title_readme').removeClass('active-title');
// 隐藏所有license内容,然后只显示选中的license内容
$('.lisence-content').hide();
$('#license-content-' + licenseIndex).show();
$('#license-edit-' + licenseIndex).show();

}); try { if((gon.wait_fork!=undefined && gon.wait_fork==true) || (gon.wait_fetch!=undefined && gon.wait_fetch==true)){ $('.edit-blob').popup({content:"当前仓库正在后台处理中,暂时无法编辑", on: 'hover', delay: { show: 200, hide: 200 }}); $('.edit-blob').click(function(e){ e.preventDefault(); }) } }catch (error) {} $('.disabled-edit-readonly').popup({ content: "只读文件不可编辑", className: { popup: 'ui popup', }, position: 'bottom center', }) $('.disabled-edit-readonly, .disabled-edit-status').click(function() { return false }) $('.has_tooltip').popup({ position: 'top center' });

$('.ai-readme-dropdown-btn').dropdown({ on: 'hover', action: 'hide', })

})

$complaintCommentsContent.on('change keyup', function(e) { var content = $(this).val(); if ($.trim(content).length > 0 && $complainCommentType.dropdown('get value').length > 0 ) { $complaintCommentBtn.removeClass('disabled'); return; } $complaintCommentBtn.addClass('disabled'); });

$complainCommentType.dropdown({ showOnFocus: false, onChange: function(value, text, $selectedItem) { if (value.length > 0 && $.trim($complaintCommentsContent.val()).length > 0) { $complaintCommentBtn.removeClass('disabled'); return } $complaintCommentBtn.addClass('disabled'); } });

function restoreCommonentDefault() { $complainCommentType.dropdown('restore defaults'); $complaintCommentsContent.val(''); $('.exceeded-size-tip').text('').hide(); $complaintModalTip.text('').hide(); setTimeout(function() { setCommentSendTip(false); }, 1500); }

$complaintCommentBtn.on('click',function(e){ var reason = $complaintCommentsContent.val(); var appealableId = $('#landing-comments-complaint-modal').attr('data-id'); if (complaintSending) { return; } var appealType = $complainCommentType.dropdown('get value'); var formData = new FormData(); formData.append('appeal_type_id', appealType); formData.append('reason', reason); formData.append('appeal_type','Note'); formData.append('target_id',appealableId); $.ajax({ type: 'POST', url: "/appeals", cache: false, contentType: false, processData: false, data: formData, beforeSend: function() { setCommentSendStatus(true); }, success: function(res) { if (res.status == 200) { setCommentSendTip(true); setTimeout(function() { $complaintCommentsModal.modal('hide'); restoreCommonentDefault(); }, 3000); } setCommentSendStatus(false); }, error: function(err) { showCommonTips(err.responseJSON.message, 'error'); setCommentSendStatus(false); } }) });

function showCommonTips(text, type) { $complaintModalTip.text(text).show(); if (type == 'error') { $complaintModalTip.removeClass('success').addClass('error'); } else { $complaintModalTip.removeClass('error').addClass('success'); } }

function setCommentSendStatus(value) { complaintSending = value; if (complaintSending) { $complaintCommentBtn.addClass('loading'); $complaintCommentsContent.attr('readonly', true); $complainCommentType.attr('readonly', true); } else { $complaintCommentBtn.removeClass('loading'); $complaintCommentsContent.attr('readonly', false); $complainCommentType.attr('readonly', false); } }

function setCommentSendTip(value) { if (value) { $('.appeal-success-tip').removeClass('hide'); $('.appeal-tip').addClass('hide'); $('.appeal-form').addClass('hide'); $('#landing-comments-complaint-modal .actions').addClass('hide'); } else { $('.appeal-success-tip').addClass('hide'); $('.appeal-tip').removeClass('hide'); $('.appeal-form').removeClass('hide'); $('#landing-comments-complaint-modal .actions').removeClass('hide'); } }

简介

取消

发行版

暂无发行版

贡献者

全部

语言

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化

})

// 防止二次挂载 if (false) { window.gon.tree_left_side_loaded = true; }

}).call(this);

Java
1
https://gitee.com/zhushuainan/image-search-mcp.git
[email protected]:zhushuainan/image-search-mcp.git
zhushuainan
image-search-mcp
image-search-mcp
master
if ($toolbarRoll.length) {
  setInterval(function() {
    var $nextActiveLink = $toolbarRoll.find('a.active').next();
    if (!$nextActiveLink.length) {
      $nextActiveLink = $toolbarRoll.find('a:first-child');
    }
    $nextActiveLink.attr('class', 'active').siblings().removeClass('active init');
  }, 5000);
}

})

Server Config

{
  "mcpServers": {
    "image-search-mcp": {
      "command": "java",
      "args": [
        "-Dspring.ai.mcp.server.stdio=true",
        "-Dspring.main.web-application-type=none",
        "-Dlogging.pattern.console=",
        "-jar",
        "your-path/target/image-search-mcp-0.0.1-SNAPSHOT.jar"
      ],
      "env": {}
    }
  }
}
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
WindsurfThe new purpose-built IDE to harness magic
Tavily Mcp
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
DeepChatYour AI Partner on Desktop
Amap Maps高德地图官方 MCP Server
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
Context7Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors
ChatWiseThe second fastest AI chatbot™
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
CursorThe AI Code Editor
Playwright McpPlaywright MCP server
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
Serper MCP ServerA Serper MCP Server