Skip to content

MCP server for AI agents to lookup function signatures from any API. Uses SQLite and universal ctags to index source files across multiple languages (Python, C, Go, C++, JS, Rust, Java, etc.). Prevents hallucination on unknown or recently updated source files by providing accurate function signatures

Notifications You must be signed in to change notification settings

osinmv/function-lookup-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Code Declaration Lookup MCP Server

An MCP server that provides full text search for code declarations. Uses SQLite with FTS5 and universal ctags to index and search functions, classes, structures, enums, and other code elements. Supports all languages that ctags supports including Python, C, Go, C++, JavaScript, Rust, Java, and many others.

Requirements

  • Python 3.13
  • Universal Ctags 6.2.0
  • SQLite with FTS5 support (included in Python 3.13)

Installation

git clone [email protected]:osinmv/function-lookup-mcp.git
cd function-lookup-mcp
claude mcp add api-lookup $(pwd)/run.sh -s user

Extending the Index

Just ask your coding agent to index your header folder. The indexing process respects your project's .gitignore file to avoid indexing unwanted files. Alternatively, you can generate ctags files manually using universal ctags:

ctags --output-format=json --fields=+Sf --kinds-C=+p -R -f apis/your_api.ctags /path/to/your/headers

Or drop existing ctags files into the apis/ folder and restart the MCP server to update the index.

MCP functions

search_declarations(name: str, offset: int = 0, limit: int = 10) - Search for code declarations by name

list_indexed_apis() - List all indexed API files

list_api_files(api_name: str, offset: int = 0, limit: int = 100) - List all unique file paths for a specific API

list_functions_by_file(file_path: str, offset: int = 0, limit: int = 100) - List all functions found in a specific file

generate_ctags(include_directory: str) - Generate ctags from source files and add to index

About

MCP server for AI agents to lookup function signatures from any API. Uses SQLite and universal ctags to index source files across multiple languages (Python, C, Go, C++, JS, Rust, Java, etc.). Prevents hallucination on unknown or recently updated source files by providing accurate function signatures

Resources

Stars

Watchers

Forks

Packages

No packages published